
Adapted membership page codes in StartSharp to use jsx-dom by renaming them first from XYZPage.ts to XYZPage.tsx and using renderContents instead of getTemplate. **/*Page.tsx files are also considered as ESM entry points for esbuild in tsbuild and sergen. tsx files, you may switch the runtime by adding a pragma comment on top of the file like /** react */. Switched to JSX automatic runtime ( ) in StartSharp by setting "jsx": "react-jsx" and "jsxImportSource": "jsx-dom" in tsconfig.json.
There is currently no dependency to jsx-dom in itself but it exposes a jsxDomWidget method than can be used to create a jsx-dom compatible functional component from a widget type, like var StringEditor_ = jsxDomWidget(StringEditor). It will mostly be used in renderContents() method instead of the getTemplate() so that events can be bound at widget creation, and references to elements can be acquired. It offers better compatibility with existing Serenity Widget structure that use jQuery and contains code that modify DOM directly. but which directly creates HTML elements instead of using a VDOM.
Added jsx-dom integration which is a library similar to React. Generated API documentation for and packages via TypeDoc and made them available at under Api Reference (TypeScript) section. fix failing source gen tests caused by line endings. email client now working due to preact not included in. trigger panelopening, panelopened, panelclosing, panelclosed events on window while a panel is closing / opening. added ExtensionBlacklistInclude, ExtensionBlacklistExclude, ExtensionWhitelistInclude and ExtensionWhitelistExclude that allows including, excluding extensions from defaults without having to write all the extensions again. Resolve issue with enum / select editors causing display text to be saved instead of value in dropdown editors. If you deploy to IIS and did not remove that line in your production site after publishing, you should. line which was in web.config for development purposes is removed. Changed default jsxImportSource back to preact in tsconfig.json. It will not get any new versions and you should remove its reference from your project file. package is now obsoleted as it was only used by the old email client.
Added a mock IMAP server implementation to EmailClient for demo purposes.Improve look and feel of e-mail client.Rewrote EmailClient with ES modules and preact, removed package as it was only ever used by EmailClient.Added /** jsxImportSource jsx-dom */ to files where jsx-dom are used, so that it can understood which library is used without relying on the default in tsconfig.json.
Updated preact in Serenity.Assets to 10.14.1. Added experimental esbuild based minifier. Abstracted script and css minifier dependencies, so that another minifier can be used instead of NUglify for bundling.