CustomCatalog.externalUrl
property)ReportAttachments.attachments
property)quantity
may be specified for CustomArticle
comments
may be specified for CustomArticle
eventBeforeGenerateReport
and eventAfterGenerateReport
to ProjectReportPlugin
Application.showNotice()
Utils.uploadToSharedFileStorage()
Utils.getProjectFileName()
ComponentFactory.createReactComponent()
CatalogItemFilterExtension.filterCatalogItems()
which define the context of the filter operationitem.ofmlArticle.update
getArticleNumberSuggestions()
to Catalog
pluginprojectValidity
to ApplicationSettings
and EaiwsSessionDefaults
Catalog
plugins have to implement the new method getArticleNumberSuggestions()
wbk-sharedlib
to 21, plugins have to be updated react-dropzone
from version 11 to 14react
from version 16 to 17luxon
from version 2 to 3react-split-pane
to react-split-pane-r17
(because of react incompatibility)fileOpenUrl
option to ActivityPlugin.createComponent()
Utils.openLink()
Utils.getCorsProxyUrl()
CommonResources.labelShare
CommonResources.itemInactiveStateAlternative
CommonResources.itemInactiveStateOptional
CommonResources.getCalculationErrorText()
ProjectEditor.setProjectMetaData()
and eventProjectMetaDataChanged
item.comments
and item.comments.edit
item.markAsOptional
getAvailableCatalogs()
and searchAndInsertArticle()
to Catalog
pluginseriesId
and baseArticleNumber
to CatalogArticlesQuery
which are used to insert custom articles by article numberIntegration.doneButtonOptions
, can be used to specify a custom icon for the done buttonCommonResources.confirmationInconsistenArticles
is now deprecated, use confirmationInconsistentArticles
insteadlockedItems
and projectMetaData
to ProjectEditorActivityOptions
wbk-sharedlib-dev-manifest.json
is no longer required and therefore no longer part of the SDK (see example plugin on how to update the weppack.config.js
)pItemCalculation
to CommonResources.getBasketItemWarningText()
which is required if the warning text should include calculation errorsCatalog
plugins have to implement the new methods getAvailableCatalogs()
and searchAndInsertArticle()
otherwise inserting an article by article number will failItemImages
as new plugin categoryApplication.showImageLightbox()
Application.showVideo()
CommonResources.labelUnsupportedFile
CommonResources.labelUnsupportedImage
CommonResources.getUnsupportedFileFormatText()
CommonResources.getKeyboardShortcutText()
item.additionalImages
wbk-sharedlib
, therefore plugins have to be compiled using webpackMessageBoxIcon
is now a string literal and no longer an enumMessageBoxButton
, predefined buttons egr.wbkApp.commonResources.button...
can be used instead PropertyFilterExtension.filterProperties()
has changed, provided utils should be used now to retrieve eaiws property dataUtils.isInternetExplorer()
because IE is no longer supportedwbk-sharedlib
to @egr/wbk-sharedlib
(see example plugin)weppack.config.js
changed from /node_modules/@egr/wbk-sharedlib/dist/
to /plugin-sdk/wbk-sharedlib/
mobx
4 to mobx
6office-ui-fabric-react
7 to @fluentui/react
8 (fabric was renamed to fluentui)ItemListExtension
and sub category ItemDescriptionProvider
specialModelInfoTextId
to ApplicationSettings
webGL
settings to ApplicationSettings
priceDateSupported
and setPriceDateSupported()
to ApplicationSettings
CommonResources.itemDataPriceDate
CommonResources.itemDataUserShortText
, itemDataUserLongText
and itemDataUserFeatureText
CommonResources.getBasketItemWarningText()
CustomArticle
project.data.defaultPriceDate.edit
browserStorage
to ApplicationSettings
, which is used to store user settings for the current browseruserStorage
to ApplicationSettings
, which is used to store cross browser user settingsprojectEditor
settings to ApplicationSettings
AuthenticationPlugin
may optionally provide a user settings storageEaiwsSessionDefaults.storeDefaultsOnUserStorage()
CustomCatalog
as new sub category of CatalogExtension
which is used to provide custom catalogsCatalog.onInsertCustomArticle()
Application.waitWhileBusy()
and finishPendingOperations()
AppSettingsPanel
ActionProvider.getBasketActions()
, hence added MenuAction.primary
flagquoteText
as new InformationType
for ItemInfoExtension
ProjectEditor
(see ProjectEditorOptions.additionalActions
)CommonResources.quoteDataValidToDate
CommonResources.labelInconsistenArticles
CommonResources.confirmationInconsistenArticles
Utils.startFileDownload()
item.extraTexts
item.extraTexts.edit
item.ofmlArticle.userDescription
item.ofmlArticle.userDescription.edit
project.customer.general.company.edit
project.customer.general.externalCustomerId.edit
project.customer.general.customerNumber.edit
project.customer.general.generalAgreementNumber.edit
project.customer.general.customerRelatedRemarks.edit
project.data.projectDate.edit
project.data.projectValidToDate.edit
project.data.externalReferenceNumber.edit
project.data.externalReferenceText.edit
project.data.description.edit
project.data.keywords.edit
project.data.headerText.edit
project.data.footerText.edit
Action.text
is now optionalApplicationSettings.setSettingJson()
and getSettingJson()
, ApplicationSettings.browserStorage
should be used insteadApplicationSettings.setSettingString()
and getSettingString()
, ApplicationSettings.browserStorage
should be used insteadCatalogPlugin.createComponent()
is now of type ProjectEditor
instead of EaiwsSession
pCancelable
to ActivityHost.stopActivity()
ApplicationSettings
User.accountUrl
projectMetaData
property to ProjectEditor
and ProjectEditorOptions
ProjectEditor.showCatalog()
PluginManager.disableCategories()
ProjectWorkflow.projectOffered()
ProjectCustomerPickerExtension.getMenuActions()
project.customer.search.edit
project.customer.general.edit
project.customer.mainAddress
project.customer.mainAddress.edit
project.customer.billingAddress
project.customer.billingAddress.edit
project.calculation.margin
project.data.textFormatting
item.calculation.margin
item.calculation.updateConditionAmounts
item.folder.subTotal
order.orderNumber.edit
order.vendorNumber.edit
order.billingAddress.edit
PluginDescriptor.isDefault
)Application.showMessageBox()
User.eaiwsSession
which should be the preferred session if available (see CreateEaiwsSessionOptions.useUserSession
)User.companyLogo
Utils.createEaiwsSession()
Utils.closeEaiwsSession()
helper to ensure correct handling of user sessionUtils.uploadToEaiwsSession()
Utils.resizeImage()
Utils.clearEaiwsProjectGroupsCache()
and Utils.clearEaiwsPriceListsCache()
item.externalItemNumber
item.externalItemNumber.edit
project.data.dataLanguage.edit
DataLanguage
as new setting to DefaultSessionSetting
type (used from EaiwsSessionDefaults
)CommonResources.labelDeleteDefaults
CommonResources.contactDataSalutationMr
and CommonResources.contactDataSalutationMrs
CommonResources.quoteDataLanguage
ItemStatusBar
ItemInfoExtension
and sub category InfoProvider
ProjectExportPlugin
and ProjectImportPlugin
have access to the ProjectEditor
nowEaiwsAuthData
interface from types/User.d.ts
to Utils.d.ts
User.eaiwsAuthData
property, User.eaiwsSession
should be used insteadUtils.createEaiwsSession()
will be automatically closed if the browser window gets closed (see CreateEaiwsSessionOptions.closeSessionOnWindowClose
)Utils.createEaiwsSession()
will use the user session by default if available (see CreateEaiwsSessionOptions.useUserSession
)Utils.createEaiwsSession()
has changedProjectExportPlugin.export()
has changedProjectImportPlugin.import()
has changedIntegration.finish()
, Activity.prepareActivityStop()
should be implemented instead (which is also cancelable)ProjectPriceSummary
plugin category, ItemStatusBar
could be used as an alternativeProgressOverlay
react component by non react based class to make it easier to use (see ComponentFactory.createProgressOverlay()
)ProjectCustomerPicker
and ProjectCustomerPickerExtension
disableAbort
flag to ProgressOverlayProps
LoadingPanel
componentProjectEditor.eventBaseRestrictionsChanged
ProjectEditorOptions.migrateLegacyProjectData
CommonResources.contactDataConditionNumber
ProjectDataPanel
as new sub category of ProjectEditorExtension
pluginsitem.userArticle.purchasePrice.edit
Utils.createBasket()
showUser
and showDoneButton
property to Integration
plugin componentProjectEditorOptions.additionalRestrictions
property may be of type UserRestrictionsProvider
to support dynamic restrictionsCommonResources.itemDataNetWeight
to itemDataPackagingNetWeight
ProjectEditor.initialRestrictions
to baseRestrictions
ProjectEditorActivityOptions.onGetAdditionalRestrictions
callback by additionalRestrictions
propertyThemeSettings.appBarColor
is now #ffffff
Utils.createBasket()
has changedIntegration
plugin components have to implement the showUser
and showDoneButton
propertyProjectEditor
ApplicationSettings.eventLocaleChanged
ApplicationSettings.supportedProjectStates
ApplicationSettings.setSettingJson()
and getSettingJson()
ApplicationSettings.setSettingString()
and getSettingString()
ApplicationSettings
Application.eaiwsSessionDefaults
Application.showEaiwsSessionUploadDialog()
Application.showLoginDialog()
Application.runInBusySection()
Application.showErrorMessage()
PluginManager.getDescriptorByCategory()
PluginManager.disablePlugins()
Activity.prepareActivityStop()
EaiwsSettings.keepAliveInterval
CommonResources.getCountries()
CommonResources.getCountrySubdivisions()
CommonResources.getEaiwsProjectGroupName()
CommonResources.getEaiwsPriceListName()
CommonResources
ComponentFactory.createProjectEditorActivity()
as an easy way to start the default project editorpCustomSettings
and pUserToken
to Utils.createEaiwsSession()
MessageBoxIcon.Question
ItemList.onEditSelection
Utils.createBasket()
Utils.getEaiwsProjectGroups()
Utils.getEaiwsPriceLists()
editorMode
to ProjectEditor
ProjectPickerOptions.eaiwsSession
ProjectPickerOptions.projectLockingMode
User.eaiwsAuthData
User.roles
ActionProvider.getBasketActions()
and eventBasketActionsChanged
ProjectInfo
instance to ProjectEditor
ActionProvider.getItemActions()
and ItemList.onShowSelectionContextMenu
CatalogItemFilterExtension.requiredCatalogResources
ProjectPartyInCharge
ProjectTerms
ProjectWorkflow
AddressForm
ItemInfo
ProjectEditor.getMainMenuActions()
returns a readonly arrayActivity.getMainMenuActions()
returns a readonly arrayActionProvider.getMainMenuActions()
and getItemActions()
returns a readonly arrayCommonResources.getCountryCodes()
uses getCountries()
insteadCommonResources.getCountryName()
now returns a promise and requires an eaiws sessionCommonResources.getRegionName()
now returns a promise and requires an eaiws sessioncreateRootComponentContainer()
and ComponentContainer
from Application.utils
to Application.componentFactory
ProjectPickerPlugin.pickProject()
to support readonly projectsActionProvider
plugins have to implement getBasketActions()
PriceSummary
to ProjectPriceSummary
CustomerData
to ProjectCustomer
ItemText
to ItemProperties
MessageBoxOptions.isSignificant
Utils.normalizeUserRestrictions()
edit
user restrictionitem.edit
user restrictionproject.edit
user restrictionproject.currency.exchangeRates
user restrictionproject.currency.exchangeRates.edit
user restriction project.tax.taxRates
user restrictionproject.tax.taxRates.edit
user restrictionCatalogExtension
and CatalogItemFilter
as sub categoryItemConfigurationExtension
and PropertyFilter
as sub categoryProjectPicker
pContainer
and pProjectInfo
of ProjectDataPlugin.createComponent()
with pOptions
parameterpContainer
and pProjectInfo
of CustomerDataPlugin.createComponent()
with pOptions
parametermdi-
prefix have to be used instead (see: https://materialdesignicons.com/)office-ui-fabric-core
can no longer be usedwbk-core/types/User.d.ts
)ApplicationSettings.setCalculation()
and setEaiws()
)ApplicationSettings.dataLanguage
)Application.customData
Application.userRestrictions
User.attributes
patch
and preRelease
properties to ApiVersion
Integration
plugin components may provide an active userAuthorization
as new plugin category PriceSummary
as new plugin category ItemStatusProvider
as new plugin categoryUser
interface from plugins/Authentication.d.ts
to types/User.d.ts
PluginComponent
interface from Plugin.d.ts
to PluginComponent.d.ts
Integration
plugin components have to implement the user
propertyIntegration
plugin components have to implement the userRestrictions
propertyAuthentication
plugins have to implement the logoutSupported
propertyActionProvider.getMainMenuActions()
and ActionProvider.getItemActions()
is no longer optionalpContainer
and pEaiwsSession
of ProjectEditorPlugin.createComponent()
with pOptions
parameterGenerated using TypeDoc