Changelog
All notable changes to this project will be documented in this file. See commit-and-tag-version for commit guidelines.
42.1.0 (2025-04-08)
Features ✨
- @allianz/taly-core-forms: add backend integration plugin (#2750) (bc99891), closes #64
- @allianz/taly-core-forms: add df turnstile custom component (#2743) (41230a1), closes #2665
42.0.0 (2025-04-02)
⚠ BREAKING CHANGES
This release contains two automatic migrations to update breaking changes in your code. One from @allianz/ngx-pfe
and one from @allianz/taly-nx
.
Please run these commands to use the migrations:
npx nx migrate @allianz/ngx-pfe
npx nx migrate --run-migrations
npx nx migrate @allianz/taly-nx
npx nx migrate --run-migrations
- @allianz/taly-sdk: The journey configuration schemas now enforce strict property definitions, i.e., they do not allow additional properties that are not specified in the schema. While this doesn’t necessarily break anything, teams maintaining invalid Journey configurations may need to adjust those configurations to make them valid.
Features ✨
- @allianz/taly-sdk: disallow additional properties in journey configuration schemas (#2762) (fb6bf0b)
- @allianz/taly-nx: add a migration to install @allianz/ngx-pfe-devtools package (#2785) (7a909f8)
Bug Fixes 🐛
- @allianz/taly-core: prevent schema errors in "config" property in dynamic form custom fields (#2770) (8828a46), closes #2762
- @allianz/taly-common: make TalyStateService optional in summary panel (#2780) (d5710ff)
- @allianz/taly-core: prevent ExpressionChangedAfterItHasBeenCheckedError during the Dynamic Form initialization (#2789) (2422dc2)
41.5.0 (2025-03-25)
Features ✨
- @allianz/taly-common: change order of journey name & section name in app title (#2753) (6fb5991)
- @allianz/taly-nx: add .gitignore to new journey ignoring 'generated' folder (#2751) (5e64db9)
41.4.0 (2025-03-18)
Documentation 📚
- remove outdated infos about relative font sizes (#2754) (eaa7aec)
Features ✨
- @allianz/taly-core: ensure proper responsive layout in dynamic forms (#2744) (7ee18e1), closes #2563
Bug Fixes 🐛
- only emit the formControl one time in dynamic form components with a value state config (#2748) (2bd74ce)
41.3.0 (2025-03-11)
Features ✨
- @allianz/taly-common: add option for dynamic forms to be full-width in Expert journeys (#2742) (d69d270), closes #2707
Bug Fixes 🐛
- @allianz/taly-core: fix vertical spacing between form fields in dynamic forms (#2741) (6bbdd3d), closes #2740
- @allianz/taly-sdk: skip journey config validation when searching for TALY compatible version (#2737) (00806c9), closes #2720
41.2.0 (2025-03-04)
Documentation 📚
- use signal syntax in DF custom component plugin example (#2738) (0fb5389)
Features ✨
- @allianz/taly-common: make panels collapsed based on a condition (#2727) (118a493), closes #2578
Bug Fixes 🐛
- @allianz/taly-core: prevent ACL-hidden fields in Dynamic Forms from blocking space (#2722) (8e091f8), closes #2695
- @allianz/taly-nx: align notifications in expert left (#2732) (86b1e67), closes #2708
41.1.0 (2025-02-26)
Documentation 📚
- add more details about the prerequisites of the automatic scrolling to invalid form elements (#2723) (874cdb7), closes #2636
Features ✨
- @allianz/taly-common: remove limitation of seven navigation sections per journey (#2718) (5743a45), closes #2715
Bug Fixes 🐛
- @allianz/taly-nx: add the missing style to the header actions component (#2726) (2d7a5a4), closes #2725 #2685
- @allianz/taly-nx: escape pfe state interpolation syntax (#2721) (6023d94), closes #2666
- hide the navigation and action buttons during the initial app loading (#2729) (20769d5)
41.0.0 (2025-02-12)
Highlights of this release 🎉
- This release updates Angular and ngx-ndbx to version 19 and Nx to version 20 🤩
- We have provided quite some improvements since TALY v40.0.0, which are included in TALY 41. Have a look at the changelog entries below.
⚠️ BREAKING CHANGES
💡 Some of the breaking changes below are covered by Nx migrations. Run npx nx migrate @allianz/taly-nx@41.0.0
and follow the instructions for a convenient migration experience. For more details about updating, please follow the "Updating" guide in the TALY docs.
Update to Angular 19 (#2704) (6b30b3e), closes #2693
@allianz/taly-nx: The notifications
configuration has been renamed to
notificationsGroup
and is now an object. The array containing the
notifications is now set in the items
property of the
notificationsGroup
. We provide a migration that takes care of these
changes
Features ✨
- @allianz/taly-nx: allow width configuration in overarching notifications (#2708) (8dbaa19), closes #2491
40.3.1 (2025-02-10)
40.3.0 (2025-02-07)
Features ✨
Bug Fixes 🐛
- @allianz/taly-acl: re-bind acl on form structure changes (#2690) (cbb63ab), closes #2514
- @allianz/taly-nx: swap copyrightHolder and year in the footer (#2703) (fd76b6e)
- memory leak caused by lingering getNotificationVisibility$ subscriptions on pages (#2705) (44096e2)
40.2.1 (2025-01-28)
⚠️ DEPRECATIONS
- TALY_FRAME_HEADER_CONFIG was previously introduced to be
used inside TALY generated journeys as it's now no longer needed. We've
deprecated it and planned to remove it in version 42.0.0.
Bug Fixes 🐛
- @allianz/taly-nx: connect header actions to PFE facade (#2685) (ab4eb7f), closes #2659
40.2.0 (2025-01-21)
Features ✨
- @allianz/taly-common: add tracking to save offer and cancel buttons (#2692) (e50ed76), closes #2647
Bug Fixes 🐛
- @allianz/taly-core: handle undefined element in sticky service (#2686) (d76550c), closes #2681
- @allianz/taly-nx: encapsulate CSS variables from NDBX and Aquila themes in web components (#2691) (8cecb3e)
40.1.0 (2025-01-14)
Features ✨
- @allianz/taly-nx: demote duplicate webcomponent id error to console info (#2677) (41c3862), closes #2651
- @allianz/taly-nx: make small prints translatable (#2678) (cf8e9f3), closes #2540
- @allianz/taly-nx: run journey-src programmatically from executors (#2668) (fe7b078), closes #1 #2
40.0.2 (2025-01-07)
40.0.1 (2024-12-31)
40.0.0 (2024-12-20)
Highlights of This Release 🎉
We understand that setting up web component configurations can be cumbersome. Therefore, we are happy to announce the new webcomponent-config
generator, which allows you to set up a web component configuration for your existing project with a single command. It also allows you to automatically update your existing web component configuration to ensure all required settings are included. More details can be found in the webcomponent-config
generator documentation.
⚠ BREAKING CHANGES
- @allianz/taly-core: The
validationConfigurationChanged$
property of the AbstractBuildingBlock
is removed. No one should be affected by this as this property was only introduced for the TALY internal validation handling of the dynamic form.
Bug Fixes 🐛
- @allianz/taly-core: support dynamic validators in dynamic form (#2652) (3f77e64), closes #2626
Features ✨
- @allianz/taly-nx: support ESLint flat config (#2670) (f715dc8)
39.4.0 (2024-12-16)
Features ✨
- @allianz/taly-nx: add webcomponent config generator (#2658) (a86c073), closes #2555
- @allianz/taly-core: support the usage of existing formGroups in the Dynamic Form, which also enables nesting them (#2657) (85fbcf3)
39.3.0 (2024-12-10)
Features ✨
- @allianz/taly-common: style jump navigation menu on expert small screens and make it resizable (#2653) (ec6aa38)
39.2.0 (2024-12-03)
Features ✨
- @allianz/taly-core: support optionalLabel in dynamic form (#2650) (4d700d8), closes #2628
39.1.0 (2024-11-26)
Features ✨
- @allianz/taly-core: disable invalid dates visually in date picker (#2643) (2aacae7)
- @allianz/taly-frame: add acl support to action buttons (#2640) (07cee0c)
- @allianz/taly-nx: add new experimental feature "JumpNavigationMenu" (#2641) (7ae8165), closes #2586
39.0.2 (2024-11-19)
Bug Fixes 🐛
- @allianz/taly-common: make offer code translation not remove offer code (#2642) (13239cf), closes #2638
39.0.1 (2024-11-12)
39.0.0 (2024-11-06)
Highlights of this release 🎉
We are excited to introduce a new TALY CLI command: generate-workspace
. You can now use a single command to generate a Building Block workspace with the required dependencies. This allows you to start developing your Building Blocks or journeys without worrying about peer dependency conflicts. Please see our Getting Started guide for more details.
⚠️ BREAKING CHANGES
💡 Some of the breaking changes below are covered by Nx migrations. Run npx nx migrate @allianz/taly-nx@39.0.0
and follow the instructions for a convenient migration experience. For more details about updating, please follow the "Updating" guide in the TALY docs.
- @allianz/taly-nx: add dynamic year to footer copyright (#2615)
- @allianz/taly-core: We removed the
pageId
getter from the TalyPageDataService
. Please use the pageId$
observable instead. This should not affect you, but we can't completely rule out any accidental changes to public APIs. If you are indeed affected by this, please follow your compiler warnings/errors.
Documentation 📚
- move npm authentication docs to getting started guide (#2624) (6c702ce)
- update the Scale Up Building Block Platform presentation recording link (#2630) (c66fbb6)
Bug Fixes 🐛
- @allianz/taly-common: do not change application title if a journey is not a standalone app (#2625) (98cb611), closes #2623
- @allianz/taly-core: don't emit empty page id at startup (#2629) (858c506), closes #2623
- @allianz/taly-sdk: ensure proper npm setup in generated workspace for users without npm setup (#2627) (372b6f6)
Features ✨
- @allianz/taly-core: value of DF fields with an expression as value are now reactive (#2620) (594630f)
- @allianz/taly-nx: add dynamic year to footer copyright (#2615) (3fe20f2), closes #2519
38.4.1 (2024-10-29)
Bug Fixes 🐛
- @allianz/taly-sdk: workspace-generate should commit changes applied to generated Nx workspace (#2619) (4392d5a)
38.4.0 (2024-10-24)
Features ✨
- @allianz/taly-sdk: add command to scaffold a new Building Block Platform workspace (#2612) (61027e7), closes #2237
38.3.0 (2024-10-22)
Documentation 📚
- mention web component build assets and font loading logic (#2605) (5d9a21d)
Features ✨
- @allianz/taly-common: support localization for application title (#2604) (e2336a6), closes #2509
- @allianz/taly-core: allow the usage of the renderName for line breaks in a Dynamic … (#2610) (7dfbfea)
- @allianz/taly-nx: ask for journey name in journey generator if not provided (#2608) (85989b8), closes #2253
38.2.1 (2024-10-15)
Bug Fixes 🐛
- @allianz/taly-nx: use helper-high token below sections and below plain text headline (#2585) (c041290)
- @allianz/taly-sdk: stop the NX daemon after generating a journey (#2589) (42dd764), closes #2553
38.2.0 (2024-10-08)
Bug Fixes 🐛
- @allianz/taly-common: set app title when current page not included in navigation section (#2596) (e2d66f1), closes #2593
- @allianz/taly-sdk: don't recreate a workspace if it already has a compatible TALY version (#2591) (d2ce4bb), closes #2554
- do not use the field ID as a fallback for the render-name (#2594) (96e63ac)
Features ✨
- @allianz/taly-core: add blur event to TALY dynamic form components and TALY-generated journeys (#2584) (8317df4), closes #2570 #2533
- @allianz/taly-core: improvements on dynamic form events (#2597) (cdd63d9), closes #2533 #2584
38.1.0 (2024-10-01)
Features ✨
Bug Fixes 🐛
- @allianz/taly-common: dont focus anything on initial page change in web components (#2587) (4f4c26d), closes #2546
38.0.1 (2024-09-24)
38.0.0 (2024-09-19)
Highlights of this release 🎉
- The new Multi-Tenant Configuration feature streamlines the management of multiple journeys by allowing you to define a base configuration that can be extended by individual tenant journey configurations. Tenants can override specific configuration files or properties while sharing common parts of the base journey. This significantly accelerates development, reduces duplication, and ensures consistent setups across tenants 🤩
- We've continued to enhance the experimental Dynamic Form feature with several key improvements 🚀 You can now handle form control events within dynamic forms and use custom Dynamic Form components. These and other updates further extend the flexibility and functionality of the Dynamic Form feature, making it more adaptable to your specific use cases.
- Page Action Buttons (e.g. "Next" Button) can now display different labels based on PFE conditions, allowing for more dynamic and contextual user interactions.
⚠️ BREAKING CHANGES
- @allianz/taly-common: The deprecated
interpolateFromStore$
is removed from TalyFrameTopAreaService
and PfeFrameTopAreaService
. Please use InterpolateFromStorePipe
or interpolateFromStore$
method from the PfeStateService
instead.
- @allianz/taly-sdk: The deprecated
assertValidPagesJson
function is removed from @allianz/taly-sdk
. We don't provide a replacement for this. All validation is now handled internally as part of loading a journey. To validate a journey config from the command line, please use the validate
TALY CLI command.
- @allianz/taly-nx: TALY now provides the
PFE_NAVIGATE
action to generated journeys by default. To avoid duplicate action registration, please remove the PfeNavigateActionModule
from your source code, such as plugin modules or Building Block modules.
Features ✨
- @allianz/taly-nx: support PFE_NAVIGATE action in generated journeys (#2565) (2b49689)
37.5.0 (2024-09-17)
Features ✨
- @allianz/taly-core: support form control events on dynamic forms (#2533) (b21d068), closes #2511
Bug Fixes 🐛
- @allianz/taly-core: fix obvious UI and layout issues in dynamic forms (#2568) (698921b), closes #2425 #64
- @allianz/taly-core: provide correct font sizes for headlines (#2566) (3a761e1), closes #2490
37.4.0 (2024-09-17)
Features ✨
- @allianz/taly-nx: introduce internal navigation links in notifications & small print (#2541) (6689db2), closes #2473
- @allianz/taly-sdk: add dedicated schemas for JetBrains IDEs (#2542) (c852a0a), closes #2470
- @allianz/taly-sdk: improve base and tenant application json schemas (#2551) (eaef805), closes #2479
- introduce render-name attribute in the DOM for Dynamic Form elements (#2557) (c331f4f)
Bug Fixes 🐛
- @allianz/taly-nx: improve discovery of file paths in showroom and journey model extractions (#2549) (489b18f), closes #2422
37.3.1 (2024-09-10)
37.3.0 (2024-09-06)
Features ✨
- @allianz/taly-core: add standalone dynamic form integration (#2528) (4d88eb9)
- @allianz/taly-core: add standalone dynamic form playground (#2527) (7a4f969)
37.2.0 (2024-09-03)
Features ✨
- @allianz/taly-nx: support multi-tenant journeys (#2525) (2e7e928), closes #2479
- @allianz/taly-nx: support validation and i18n for multi-tenant journey (#2526) (5c67459), closes #2479
Bug Fixes 🐛
- @allianz/taly-common: make scrolling mechanism more robust (#2537) (26f0c53), closes #2423 #64
- @allianz/taly-nx: mark page titles and sub titles as translatable (#2539) (18840e6), closes #2538
Documentation 📚
37.1.0 (2024-08-27)
Features ✨
- @allianz/taly-common: introduce conditional page action button labels (#2522) (2a01ff6), closes #2429
- @allianz/taly-core: add dynamic app tab title by injection token (#2516) (408dd0d)
- @allianz/taly-core: allow to add and use custom Dynamic Form components (#2523) (d42f4f6), closes #2508
- @allianz/taly-sdk: provide json schemas for multi-tenant application.json files (#2524) (5b2f3b9), closes #2479
37.0.2 (2024-08-20)
Bug Fixes 🐛
- @allianz/taly-nx: fix negative numbers conversion (#2529) (b15f6de)
37.0.1 (2024-08-13)
Bug Fixes 🐛
- @allianz/taly-core: validate and adjust the inputType of the inputField with nxMask usage (#2518) (7ab932a)
37.0.0 (2024-08-08)
Highlights of this release 🎉
- This release updates Angular to version 18 and Nx to version 19 🤩
- We have made a performance improvement in the web component integration by optimizing font loading. Web components generated by TALY now automatically detect when the app shell already includes the necessary fonts. As a result, web components skip loading their own fonts when possible, reducing the payload size 🚀. To benefit from this improvement, make sure you are not adding the
node_modules/@allianz/ngx-ndbx/css/ndbx-base.css
or node_modules/@allianz/ngx-ndbx/css/themes/ndbx.css
stylesheets to the styles
property in your webcomponent
build configuration..
⚠️ BREAKING CHANGES
💡 Some of the breaking changes below are covered by Nx migrations. Run npx nx migrate @allianz/taly-nx@37.0.0
and follow the instructions for a convenient migration experience. For more details about updating, please follow the "Updating" guide in the TALY docs.
- update to Angular 18 and Nx 19.
- @allianz/taly-nx: Instead of
ndbx-base.css
, TALY web components now use ndbx-base-integrated.css
. They also no longer provide the styles from @aposin/ng-aquila/css/normalize.css
. The main difference is that the web component no longer provides the global styles from ndbx-base.css
and @aposin/ng-aquila/css/normalize.css
. The parent now needs to provide those styles if it needs them. NDBX-based Angular applications already very likely provide these styles. Please double-check that this is the case in your web component integrations.
To ensure that web components receive all necessary fonts and assets in any scenario, it is important that these are added to the build options.
"build-generated-app": {
//...
"configurations": {
"webcomponent": {
"assets": [
//...
{
"glob": "**/*",
"input": "node_modules/@allianz/ngx-ndbx/css/fonts/allianz-icons",
"output": "/fonts/"
},
{
"glob": "**/*",
"input": "node_modules/@allianz/ngx-ndbx/css/fonts/allianz-neo",
"output": "/fonts/"
},
{
"glob": "normalize.css",
"input": "node_modules/@aposin/ng-aquila/css",
"output": "/"
}
]
}
}
}
- @allianz/taly-nx: We have removed the screenshot executor from the codebase. Please run the Nx migration to automatically update your
project.json
file(s).
Documentation 📚
- add the playground, with examples, to the Dynamic Form documentation (#2464) (e4e787a)
Features ✨
- update to Angular 18 and Nx 19 (#2497) (4fecea0), closes #2467
- @allianz/taly-common: show warning in showroom mode if locale is not en-US (#2476) (7f109ef)
- @allianz/taly-core: abstract the options provider service (#2478) (893a1b0), closes #2335
- @allianz/taly-nx: don't load fonts if webcomponent parent provides them (#2465) (344cce2), closes #1449
- @allianz/taly-nx: generate a new journey configuration with TALY placeholder (#2495) (4976810), closes #2251
- @allianz/taly-nx: import dayjs locale explicitly in journey localized builds (#2500) (c913468), closes #2453 #2497 #2476
Bug Fixes 🐛
- @allianz/taly-common: add missing i18n code to save offer button (#2503) (6ce86d2), closes #2485
- @allianz/taly-oauth: correct the
DEFAULT_REFRESH_BEFORE_EXPIRY_THRESHOLD
value (#2499) (e0a05ab), closes #2480
36.2.0 (2024-07-30)
⚠️ DEPRECATIONS
The interpolateFromStore$
will be removed from the
TalyFrameTopAreaService
and PfeFrameTopAreaService
in version
38.0.0. Please use InterpolateFromStorePipe
or interpolateFromStore$
method from the PfeStateService
instead.
We deprecated the assertValidPagesJson
function from
@allianz/taly-sdk
. We don't provide a replacement for this. All
validation is now handled internally as part of loading a journey. To
validate a journey config from the command line, please use the
validate
TALY CLI
command.
Features ✨
- @allianz/taly-core: allow string interpolation in Dynamic Form configurations (#2439) (5834685), closes #2402
- @allianz/taly-core: improve dynamic form configuration data models (#2460) (a488a1b), closes #2335
- @allianz/taly-nx: add --directory option to journey generator (#2466) (a9c795e), closes #2325
- @allianz/taly-sdk: more fine-grained validation errors for split journey configs (#2462) (512913d), closes #2282
36.1.2 (2024-07-23)
36.1.1 (2024-07-16)
36.1.0 (2024-07-15)
Features ✨
- @allianz/taly-nx: beautify i18n keys of Dynamic Form configurations (#2451) (8eeac67)
- @allianz/taly-nx: show errors during journey generation in browser (#2441) (03f407f), closes #2338
- @allianz/taly-sdk: automatically add translation for dynamic form configs (#2431) (5ad0b1b), closes #2402
Bug Fixes 🐛
- @allianz/taly-acl: allow using camel case for ACL tags (#2457) (80fa951), closes #2455
- @allianz/taly-nx: fix alignment of section headlines (#2449) (9328218)
36.0.0 (2024-07-10)
Highlights of this release 🎉
This release ships a first fully integrated version of the Dynamic Form feature. It is now possible to configure Dynamic Forms directly in a page configuration and use them together with Building Blocks on the same page. This also supports ACL and the usage of the TALY validation functionality (incl. plugins).
The Dynamic Form configuration has now full JSON schema support for all attributes. Check out the TALY documentation for Dynamic Forms.
The same JSON schema support was also added for Building Block validation configs which massively improves the DX. The video below shows the validation configuration, which is the same for Dynamic Forms and for Building Blocks:

⚠️ BREAKING CHANGES
💡 Some of the breaking changes below are covered by Nx migrations. Run npx nx migrate @allianz/taly-nx@36.0.0
and follow the instructions for a convenient migration experience.
add TALY validation integration to the Dynamic Form (#2411). The format of the plugin validator configuration has changed. A migration is provided to update configurations. The format changes like this:
// Previous Format:
{
"id": "myFormField",
"type": "PLUGIN_MYTEAM_VALIDATOR",
"errorMessage": "My ErrorMessage",
"validationParam": "my custom parameter"
}
// New Format:
{
"id": "myFormField",
"type": "PLUGIN",
"name": "PLUGIN_MYTEAM_VALIDATOR",
"errorMessage": "My ErrorMessage",
"validationParam": "my custom parameter"
}
@allianz/taly-oauth: clean up query params from URL after log in (#2416) (cb8de73). The query params state
and code
are now removed from the URL after a successful login.
@allianz/taly-sdk: The TALY generate-journey
CLI command and the generateJourney
SDK function now perform a compatibility check of all the libraries that are used in your journey.
If necessary, an older version of TALY will be installed temporarily to generate your journey. To skip this behavior pass the ignoreLibraryCompatibility
option or the --ignore-library-compatibility
CLI flag. Find more details in our documentation about Library Compatibility.
Also, we removed the migrate-policy-format
CLI command. If still necessary, please use the all-purpose migrate
command instead. Take a look at the available commands in the TALY documentation.
@allianz/taly-core: The ValidationErrorsComponent
was moved from taly-common
to taly-core
. An automatic migration is provided for this change.
@allianz/taly-sdk: TALY no longer migrates the journey config automatically every time the journey is loaded. This also applies when generating a journey inside an Nx workspace. Instead, the journey configs must be migrated once following the updating guide.
@allianz/taly-acl: We have renamed the following methods in the @allianz/taly-acl
library. These are just behind-the-scenes tweaks to low-level APIs. Most likely, you shouldn't be affected by them.
aclEngine.setPolicy()
->
aclEngine.setGlobalRulesFromPolicyTxtFile()
aclEngine._setRules()
-> aclEngine._setGlobalRules()
aclService._setRules()
-> aclService._setGlobalRules()
aclService._injectRule()
-> aclService._addGlobalRule()
aclInspectorService.injectRule()
-> aclInspectorService.addRule()
parsePolicy()
-> parsePolicyTxtContent()
unparsePolicy()
-> convertRulesToPolicyTxt()
Features ✨
- @allianz/taly-common: adjust style and i18n key of offer code (#2428) (f22a00a), closes #2356
- @allianz/taly-nx: allow to configure additional text in the footer of generated journeys (#2420) (df4cf11), closes #2344
- @allianz/taly-sdk: improve the JSON schema support for Dynamic Form components and BB validation configs. The schema now enabled better IDE support for the configurations.
- @allianz/taly-sdk: format migrated configuration files in taly-sdk migrations with prettier (#2446) (f9d539c)
- @allianz/taly-sdk: library compatibility check is now enabled by default (#2414) (7221ca4)
- add TALY validation integration to the Dynamic Form (#2411) (5e6425a), closes #2198
Bug Fixes 🐛
- @allianz/pfe-connector: improve rendering performance for journey config with dynamic resources (#2433) (87255a0), closes #2382
- @allianz/taly-common: implement AEM retail footer design for retail expression (#2421) (2c4e480), closes #2344
- @allianz/taly-sdk: use copy&remove instead of rename for temp TALY installation (#2427) (3d45446)
Documentation 📚
- @allianz/taly-common: add dynamic form documentation (#2419) (418dda8), closes #2400
- improve journey generation page and fix anchor links (#2396) (1150336), closes #2392
- link to the navigation sections configuration from the frame documentation (#2393) (7e19618)
- move content alignment configuration to App Config section (#2408) (120d1c3), closes #2268
- provide configuration documentation for offer code feature (#2410) (4399bee), closes #2268
- simplify docs about setting up ACL in Building Blocks (#2440) (4a785f7)
35.3.1 (2024-06-21)
Bug Fixes 🐛
- @allianz/taly-nx: section headlines now respect centered alignment in Expert journeys (#2409) (ec28e8e)
- preserve the URL with parameters when a journey reload is trigge… (#2367) (480665d)
35.3.0 (2024-06-18)
⚠️ DEPRECATIONS
- The
joinKeys
method in the AclTag
class has been deprecated. As it is meant to be consumed internally, no replacement is available.
Features ✨
- @allianz/taly-acl: support ACL configuration for dynamic form fields (#2366) (43dca73), closes #2298
Bug Fixes 🐛
- @allianz/taly-core: don't throw error if Building Block tries to navigate without configuration (#2389) (f241a17)
- @allianz/taly-nx: remove duplicated import of NxCopytextModule (#2386) (9dd9e26)
Documentation 📚
- @allianz/taly-common: integrate app switcher (#2390) (51da27d)
- add documentation for how to configure small print (#2385) (556d145), closes #2268
- add documentation for how to use ACL and .navigate() in BBs (#2388) (90c7917)
- fix broken links and introduce broken links check (#2392) (90d2a07)
- refine documentation for frame footer configuration (#2362) (c7ed162), closes #2268
35.2.0 (2024-06-11)
Documentation 📚
Features ✨
- @allianz/taly-sdk: improve validation for some journey generation parameters (#2370) (bb54d05), closes #1973
Bug Fixes 🐛
35.1.0 (2024-06-04)
Features ✨
- @allianz/taly-core: integrate ACL to dynamic form components (#2353) (158572e), closes #2357
Documentation 📚
Bug Fixes 🐛
- @allianz/taly-core: ensure circle button icons are displayed correctly (#2369) (447cd8c)
35.0.2 (2024-05-28)
Bug Fixes 🐛
- @allianz/taly-core: consider more elements when scrolling to the first form error on a page (#2351) (f1ad547), closes #2316
Documentation 📚
- consistently use full URLs in links referencing to the TALY docs themselves (#2358) (3922fbf)
- update home and "updating" pages (#2354) (391f542), closes #2301
35.0.1 (2024-05-21)
35.0.0 (2024-05-17)
Highlights of this release 🎉
- You can now wrap panels inside of sections! See the panel documentation for more details.
- The Nx migrations that we ship with every major TALY release now automatically update all of your TALY dependencies. You don't need to manually adjust the versions of TALY packages in your
package.json
anymore. Just run npx nx migrate @allianz/taly-nx@latest
and all TALY dependencies will be updated automagically.
⚠️ BREAKING CHANGES
💡 Some of the breaking changes below are covered by Nx migrations. Run npx nx migrate @allianz/taly-nx@35.0.0
and follow the instructions for a convenient migration experience.
- @allianz/taly-sdk: The deprecated
printGlobalLocalBuildingBlockCounts
, getGlobalAndLocalBuildingBlockCount
, isBuildingBlockGlobal
functions and the get-global-local-building-block-counts
cli command have been removed from the taly-sdk
package.
- @allianz/taly-nx:
panel
and section
can no longer be used at the same time in the blocks
configuration. If you want to assign a panel to a section, please specify the section
in the corresponding panels
configuration.
- @allianz/taly-nx: Specifying the
buildingBlockStyle
or sidebar
properties in a header action's configuration now throws a validation error. These properties were never meant to be used in header actions and were never supported.
- @allianz/taly-nx: The
acl-yaml.schema.json
schema has been moved from @allianz/taly-core/schemas
to @allianz/taly-nx/schemas
. If you are relying on it, please adjust the import path accordingly.
- @allianz/taly-nx: Previously, the
library
, building-block
, and journey
generators installed packages to your workspace using the --legacy-peer-deps
flag. We now disable the flag by default to prevent the unintentional removal of peer dependencies. If you're using npm
as your package manager, this change could trigger peer dependency conflicts in your workspace. If you want to keep the previous behavior, you can set the npm_config_legacy_peer_deps
environment variable by running export npm_config_legacy_peer_deps=true
before running any of the above TALY generators or their respective nx
commands.
- @allianz/taly-sdk: The
validate-journey-config
command of the TALY CLI is now called validate
.
Before: npx taly validate-journey-config --config-directory some/path
Now: npx taly validate --config-directory some/path
- @allianz/taly-core: The following interfaces have been moved from
@allianz/taly-core/schemas
to @allianz/taly-core
:
PageActionConfig
, Stage
, ValidationRule
, ValidationParam
, BusinessEventConfig
, BusinessEventServiceActivator
, BusinessEventAction
, BusinessEventPfeActionConfig
, Navigation
, PageData
, ExtraPageAction
, PageTitle
, PageTitleObject
, PageTitleAsStageBase
, PageTitleAsStageWithSubline
, PageTitleAsStageWithTopline
, BasicValidationRule
, CustomValidationRule
, MinValidatorRule
, DynamicMinValidatorRule
, MaxValidatorRule
, DynamicMaxValidatorRule
, MinDateValidatorRule
, MaxDateValidatorRule
, MinLengthValidatorRule
, MaxLengthValidatorRule
, PatternValidatorRule
.
Also: The calculateBannerHeight()
method has been moved from @allianz/taly-core/runtime-utils
to @allianz/taly-core
.
Bug Fixes 🐛
- @allianz/taly-nx: add banner and overarching details blocks to all missing places (#2308) (cb5cc0d), closes #2307
- @allianz/taly-nx: fix headline size when using nxHeadline in a Building Block (#2343) (dd611c4), closes #2331
- @allianz/taly-nx: fix spacing for single Building Block with background color (#2314) (76f55d0)
- @allianz/taly-nx: remove negative top margin for notifications in old vertical spacing (#2346) (969581c)
Features ✨
- @allianz/taly-common: automatically set focus on context change (#2323) (bc83985)
- @allianz/taly-core: dynamic form core integration (#2279) (a442e4c), closes #2196
- @allianz/taly-nx: add recursion detection for state and resources introspection generating (#2339) (962ad65), closes #1311
- @allianz/taly-nx: allow panels to be wrapped within a section (#2318) (ce915dd), closes #2187
- @allianz/taly-nx: introduce
DynamicForm
experimental flag (#2280) (a63dbc4), closes #2196
- @allianz/taly-sdk: introduce migrate CLI command (#2303) (93dedbb), closes #2138
- @allianz/taly-sdk: rename validate-journey-config command to validate (#2321) (c7e871e), closes #2138
34.1.3 (2024-05-16)
Bug Fixes 🐛
- @allianz/taly-nx: fix headline size when using nxHeadline in a Building Block (cbf6f33)
34.1.2 (2024-05-03)
This release reverts PR #2263, re-introducing #1311. PR #2263 introduced recursion detection logic for the State and Resource introspection. Unfortunately, this logic has a bug that we can't easily fix right now.
With this release we make it possible for users to migrate to TALY version 34 even if they would be affected by the mentioned bug.
- Revert "feat(@allianz/taly-nx): add recursion detection for state and resources introspection generating (#2263)"
34.1.1 (2024-04-23)
Bug Fixes 🐛
- @allianz/taly-common: make sure frame banner is centered in stacked/centered layouts (#2305) (312000a), closes #2302
34.1.0 (2024-04-16)
Features ✨
- @allianz/taly-nx: introduce vertical spacing experimental option (#2272) (2629b74), closes #2166
- @allianz/taly-nx: remove sticky behavior from the overarching notification error (#2291) (32d6e57)
- @allianz/taly-nx: use smaller space for simple section headline (#2293) (5c07ed2), closes #2166
Bug Fixes 🐛
- @allianz/taly-sdk: centralize BB id conversion process (#2295) (a13e22d), closes #2248
- @allianz/taly-sdk: move node-specifics into node entry point (#2299) (ea8acc3), closes #2138
34.0.1 (2024-04-09)
Bug Fixes 🐛
- @allianz/taly-common: remove extra white spaces from action area (#2289) (9f4e322), closes #2275
34.0.0 (2024-04-04)
Highlights of this release 🎉
- You can now split your journey configuration into smaller files. Take a closer look at the documentation for this.
- You can now add comments to your journey configuration files. To do so, change the file extension from
.json
to .jsonc
. This works for "classic" journey configurations (pages.jsonc
, pfe.jsonc
) as well as the new split journey configurations (see above).
⚠️ BREAKING CHANGES
💡 These breaking changes are covered by Nx migrations. Use npx nx migrate @allianz/taly-nx@34.0.0
and follow the instructions for a convenient migration experience.
We removed the buildingBlockStyle.sticky
property in the Building Block configuration. There can now only be a single "sticky" Building Block on each page.
This Building Block is called the "Banner Building Block" and it can be configured in a new page-level property bannerBlock
.
Page Configuration Before:
{
"blocks": [
{
"id": "building-block-id",
"...": "...",
"buildingBlockStyle": {
"sticky": true
}
}
]
}
Page Configuration Now:
{
"bannerBlock": {
"id": "building-block-id",
"...": "..."
},
"blocks": [...]
}
@allianz/taly-acl: ACL rules now don't have a "subject" anymore. In addition, the backward compatibility for ACL rules with Actions and Effects has been removed.
@allianz/taly-sdk: The methods loadJourneyFromFolderInternal
and migrateAndValidateJourneyConfig
are not exposed anymore by the taly-sdk
's public API. They were always meant to be used internally by TALY. We found no usage of those methods outside of TALY. You can contact us if this change represents an issue for you.
@allianz/taly-nx: The browserTarget
option is no longer supported in the extract-i18n
executor. Please use the buildTarget
option instead.
Features ✨
- @allianz/taly-acl: remove subject (#2276) (60dac76), closes #438
- @allianz/taly-common: introduce Banner Building Blocks (#2250) (55c0ec0), closes #2133
- @allianz/taly-common: update journey insights (#2260) (d3d7a57)
- @allianz/taly-nx: add recursion detection for state and resources introspection generating (#2263) (c0f57f2), closes #1311
- @allianz/taly-nx: remove browser target support from extract-i18n executor (#2270) (20d41f8)
- @allianz/taly-nx: support jsonc extension in journey config files (#2274) (7441e1c), closes #2222
- @allianz/taly-sdk: introduce support for split journey configurations (#2271) (c88e720), closes #2223
33.2.2 (2024-03-26)
Documentation 📚
33.2.1 (2024-03-19)
33.2.0 (2024-03-12)
Documentation 📚
Features ✨
33.1.0 (2024-03-05)
⚠️ DEPRECATIONS
- The following functions from
@allianz/taly-sdk
are deprecated as they
will no longer be supported in the next major version
isBuildingBlockGlobal
function
printGlobalLocalBuildingBlockCounts
function
printGlobalLocalBuildingBlockCounts
function
- cli command
get-global-local-building-block-counts
Features ✨
- @allianz/taly-common: remove 3 journey insights on showroom dashboard (#2246) (dcd4391)
33.0.0 (2024-02-29)
We are happy to announce the release of TALY 33!
A few highlights of this release include:
- We have significantly improved the possibilities to show notifications in a TALY-generated journey. In addition to the existing PFE integration, now you can configure overarching notifications in the
pages.json
file. The content of those notifications can be both static and dynamic content from the state. Visit the TALY documentation (here) for more details about this new feature.
- We have revamped the page stage and title. Both can be considered different flavors for the title of a page and therefore they are mutually exclusive. This is now also reflected in TALY-generated journeys.
- First, we have consolidated both title and stage under the property
title
in the configurations for pages in the pages.json
file (there is an Nx migration for the pages.json
file to apply this change in your workspace). In addition to that, you can add now a subline
property to your page title, which will be displayed below the headline. Apart from that, any text on your page title is translatable, and its content can be both static and dynamic content from the state, similar to the newly introduced overarching notifications. You can find all the info about this great addition to the TALY documentation (here).
- We have updated to Nx 17.3.0.
- We also fixed a bug where the "Optional" label was not being displayed in form fields that were not required.
Together with TALY 33, we also released a new PFE version: 39.1.1. We have dramatically improved the "Actions" tab of the PFE debugger. We are excited about how those changes will improve your debugging experience and can't wait to hear your feedback.
Other than that, the new PFE version includes the upgrade to Nx 17.3.0, similarly to TALY.
⚠️ BREAKING CHANGES
This release contains Nx migrations. Run npx nx migrate @allianz/taly-nx
and follow the instructions for a convenient migration experience.
- The stage is no longer configured in the
stage
property of the PageData
, but in the title
property of the PageConfiguration
. A configuration with both a stage and a page title is no longer possible. Furthermore, the syntax for dynamic content from state inside the page title changed. The new syntax is explained in the TALY documentation.
- The
NetworkErrorMessage
component has been removed. This was meant to be consumed only by TALY-generated journeys. No migration is provided. Please use the NDBX Notification component instead.
- The
networkErrorMessage$
observable, which allows retrieving an error message from the PFE (more info about this PFE feature here), has been moved from TalyFrameNavigationService
to the new TalyFrameTopAreaService
. It was meant to be used only by TALY-generated journeys. No migration is provided. If you were using it, please adapt your code. The new service can be imported as follows:
import { TalyFrameTopAreaService} from '@allianz/taly-common/frame';
- Starting with ng-packagr17.1.0, the
ng-package.json
files of secondary entry points in Angular libraries are now validated against a JSON schema when building that library. TALY now depends on a version that includes this schema validation. This new schema does not allow the dest
and assets
properties that TALY was adding to the generated ng-package.json
files of the plugins secondary entry points of your Building Block libraries. Please check the ng-package.json
files of your secondary entry points and remove the dest
property while moving the assets
property to your main entry point's ng-package.json
file.
Bug Fixes 🐛
- @allianz/taly-common: fix vertical spacing for notifications (#2240) (a94849e)
- @allianz/taly-nx: do not log asset update if the asset config existed but needed no update (#2232) (5d50cd4)
Features ✨
32.3.2 (2024-02-20)
Bug Fixes 🐛
- @allianz/taly-core: ensure validators setting works with the NDBX optional label (#2227) (90d7da9), closes #2164
- @allianz/taly-nx: hide dev tools toggle button when all debuggers are hidden (#2228) (813bee8), closes #2224
32.3.1 (2024-02-13)
Documentation 📚
- common: update nx version in getting started guide (#2215) (3cf62a7)
Bug Fixes 🐛
- @allianz/taly-common: allow to use a baseHref with showroom joureys (#2221) (686838f), closes #2212
- @allianz/taly-nx: automatically infer valid names for web components (#2214) (9e2aa9e), closes #2210
32.3.0 (2024-02-06)
Documentation 📚
- remove internal entry points from documentation (#2206) (981a18e)
Bug Fixes 🐛
- @allianz/taly-nx: determine BB module from code instead of assuming it during journal creation (#2203) (d0e1a11), closes #2181
- @allianz/taly-nx: don't duplicate project assets for local BB libraries (#2204) (6082328), closes #2188
Features ✨
- @allianz/taly-common: move ValidationErrorsComponent back to TALY (#2176) (7a18cef), closes #2018
- @allianz/taly-common: provide headline component for Building Blocks (#2189) (941e7e4), closes #2107
- @allianz/taly-nx: update the ng-package template for plugins (#2201) (75d09b0)
32.2.1 (2024-01-30)
Documentation 📚
Bug Fixes 🐛
- @allianz/taly-nx: allow to generate journeys without a
policy.txt
file (#2192) (f10425c), closes #2179
32.2.0 (2024-01-23)
Features ✨
- @allianz/taly-common: add button to show OpenAPI Journey Model (#2171) (d393f62), closes #1868
- @allianz/taly-common: showroom header presentation mode and toggle panel option (#2113) (23681cb), closes #1867
- @allianz/taly-nx: introduce section title (#2177) (c581330), closes #1363
32.1.0 (2024-01-16)
Features ✨
- @allianz/taly-sdk: save app generation options to the
project.json
file (#2167) (7eb68e1), closes #1931
32.0.0 (2024-01-10)
⚠️ BREAKING CHANGES
Features ✨
- @allianz/taly-nx: set up
@nx/dependency-checks
linter rule in the generated library (#2153) (5886052). This rule will check that the dependencies and peer dependencies of newly generated Building Block libraries are correct. For your existing libraries, we strongly recommend you add this override to your eslint configuration:{
"overrides": [
"...": "...",
{
"files": ["./package.json"],
"parser": "jsonc-eslint-parser",
"rules": {
"@nx/dependency-checks": [
"error",
{
"ignoredDependencies": ["tslib"], // this list might vary depending on your setup
"ignoredFiles": [
"**/*/test-setup*.ts",
"libs/products/my-library/documentation/**/*"
] // this list might vary depending on your setup
}
]
}
}
]
}
- @allianz/taly-pfe-connector: add PfeExpressionCondition support to specify section visibility (#2147) (cb74678), closes #2105
Bug Fixes 🐛
- return the processed plugin options from processPluginOptions as
any
, for safe plugin handover (#2156) (726051a)
31.1.1 (2024-01-02)
Bug Fixes 🐛
- @allianz/taly-common: include talyNormalizeUrl in chunk-loading-error-page (#2143) (85408fe), closes #2120
31.1.0 (2023-12-26)
Features ✨
- @allianz/taly-common: introduce customizable page logo url (#2118) (1e205ed), closes #2025
Bug Fixes 🐛
31.0.1 (2023-12-19)
Bug Fixes 🐛
- @allianz/taly-nx: ensure dependency targets are run when extracting i18n (#2126) (8216c8f), closes #2099
31.0.0 (2023-12-15)
⚠️ BREAKING CHANGES
We have introduced a new schema for the pfe.json
file. This schema is the new standard for TALY journeys. It differs from the original PFE config schema in the removal of the pagesConfiguration
part. From now on, to hide the "next" or the "back" button in a journey page, the hiddenNextButton
and hiddenBackButton
flags can be set in the pageData
section for each page in the pages.json
file.
Before (pfe.json
):
{
"pagesConfiguration": [
{
"pageId": "first-page",
"hideBackButton": true,
"hideNextButton": true
}
],
"...": "..."
}
After (pages.json
):
{
"pages": [
{
"id": "first-page",
"pageData": {
"pageActionConfig": {
"backButtonHidden": true,
"nextButtonHidden": true
}
}
}
]
}
A TALY migration is provided for this change to be applied in your workspace.
Additionally, there is a behavior change for journey configurations that do not contain a pfe.json
file. When generating the journey source code, the "back" button of the first page and the "next" button of the last page are not added automatically in the generated journey anymore. You need to add the corresponding flags manually in the pages.json
file.
Documentation 📚
Features ✨
- @allianz/taly-acl: introduce the ACL hierarchical inspector (#2110) (ea1525c), closes #2077
- @allianz/taly-nx: remove
pagesConfiguration
in the pfe.json
file (#2117) (fac4890), closes #844
Bug Fixes 🐛
- @allianz/taly-nx: add visibleIf to navigation section declaration (#2123) (a082ac5), closes #2104
30.2.0 (2023-12-12)
Features ✨
- @allianz/taly-nx: generate an open API schema for the journey model (#2108) (36cb333), closes #2052
- @allianz/taly-nx: verify Nx workspace setup (#2082) (073f999), closes #1320
30.1.0 (2023-12-05)
Features ✨
- @allianz/taly-sdk: use compatible TALY version when generating a journey (#2083) (bdad811), closes #2036
30.0.1 (2023-11-28)
Bug Fixes 🐛
Documentation 📚
30.0.0 (2023-11-21)
We're happy to announce the release of TALY 30!
A few highlights of this release include:
- We have added journey insights to the showroom header
- We switched to Aquila's input component readonly API. With that, your NDBX elements that are marked as readonly by ACL will receive the proper look&feel
- The experimental
NextAlwaysEnabled
feature is now the default behavior
- The
version
field has been removed in the plugins
config in the pages.json
file. Now all the libraries consumed by a journey are specified in the libraries
list in the pages.json
file. A TALY migration is provided for this change to be applied in your workspace
- Migrations of the configuration files will now also automatically run when a journey is generated. This ensures that a journey configuration is compatible with the used TALY version
- The state of a Building Block needs to be an
object
. It cannot be, for example, an Array
, null
or unknown
. undefined
is however allowed. This restriction was in place for quite a while but it was not enforced in the types so far. Starting with TALY 30.0.0, the usage of non-object types will lead to build errors. A migration is provided to replace null
with undefined
in the extends AbstractBuildingBlock
type definition in the Building Blocks
Together with TALY 30, we also released a new PFE version: 37.1.0.
In this version, we have made significant improvements in the jsonpath and condition parts of the PFE dev tools.
We have also updated our contribution guidelines in TALY (see here) and PFE (see here) to help everyone contribute in a convenient and seamless way! 🙌 👪 🤩
⚠️ BREAKING CHANGES
This release contains Nx migrations. Run npx nx migrate @allianz/taly-nx
and follow the instructions for a convenient migration experience.
- @allianz/taly-core: enforce BuildingBlockState to be an object (#1478)
- @allianz/taly-nx: make NextAlwaysEnabled the default behavior and provide opt-out (#2084)
- @allianz/taly-nx: remove package versions from plugins config in pages.json (#2079)
Features ✨
- @allianz/taly-acl: switch to Aquila's input component readonly API (#2078) (85a032b), closes #2051
- @allianz/taly-nx: enable tracking in journeys generated with the module target (#2081) (d72581b), closes #2020
- @allianz/taly-nx: make NextAlwaysEnabled the default behavior and provide opt-out (#2084) (9075c77), closes #2004
- @allianz/taly-sdk: run journey config migrations before generating a journey (#2085) (0fe6be6), closes #1816
- allianz/taly-nx: remove package versions from plugins config in pages.json (#2079) (c2cf335), closes #1816
Bug Fixes 🐛
- @allianz/taly-acl: readonly should work independently of control type (#2092) (17063e1)
- @allianz/taly-core: enforce BuildingBlockState to be an object (#1478) (c556aca), closes #1474
- @allianz/taly-sdk: exclude plugin and unused libs from get-building-block-packages output (#2087) (f7278d4), closes #2079
29.1.1 (2023-11-09)
Bug Fixes 🐛
- @allianz/taly-common: prevent sticky BB to be scrolled out of view (#2073) (cf9ccc6), closes #2053
29.1.0 (2023-11-07)
Features ✨
- @allianz/taly-nx: build optimized and non-localized in extract-i18n (#2070) (a2a97a3)
Bug Fixes 🐛
- @allianz/taly-sdk: update Business Events schema in pages.json file with latest PFE changes (#2076) (ef1a4e7)
29.0.3 (2023-10-31)
29.0.2 (2023-10-24)
Bug Fixes 🐛
- @allianz/taly-core: don't throw an error if business events are called in a jest environment (#2072) (d45f2d8), closes #2071
- @allianz/taly-nx: escape backticks in policy.txt files (#2069) (09224d8), closes #2040
29.0.1 (2023-10-24)
29.0.0 (2023-10-19)
⚠️ BREAKING CHANGES
We removed the default .npmrc
file from generated workspaces. This
affects the taly generate-journey
CLI command as well as the
generateJourney()
API.
The --no-npm-config
and noNpmConfig
attribute got removed.
Please ensure that you have a global NPM authentication setup, which
will be used by the journeys automatically.
More information about this can be found in the TALY
documentation.
More information on the background of this change can be found in this issue.
@allianz/taly-sdk: The pages-json.schema.json
is now exported from @allianz/taly-sdk/schemas
instead of @allianz/taly-nx/schemas
. Please adjust any references in your project accordingly.
_If you haven't yet updated to version 28.1.1 before updating to version 29.0.0, then there is another breaking change:_
Tests for Building Blocks that involve Business Events will now fail and throw an error because of Building Blocks not being connected to a page in the test setup. To fix this, you can add <buildingBlockInstance>.connected$.next()
to a beforeEach()
of your Building Block's test suite or specifically add it to these tests that involve Business Events.
Note that we made this a non-breaking change in tests in version 29.0.2. So if it's feasible for you, update directly to 29.0.2 to avoid having to adjust your tests.
Features ✨
- @allianz/taly-common: add journey insights to the showroom header (#2049) (7e97976)
- @allianz/taly-common: update loading spinner design (#2042) (f344a60)
- @allianz/taly-sdk: introduce journey config validator (#2035) (ffa8899)
Bug Fixes 🐛
- @allianz/taly-nx: pass cli args in quotes to avoid premature evaluation (#2058) (90988d3)
- @allianz/taly-nx: use the same "prefix" in project.json and library.json (#2054) (314df75)
- remove old nexus authentication (#2057) (052f4d9)
Documentation 📚
28.2.0 (2023-10-10)
Documentation 📚
Features ✨
- @allianz/taly-nx: add design-approved support to journal.json (#2022) (03955f4)
- @allianz/taly-nx: use project name as the default PFE application id (#2046) (45dbf3c)
28.1.1 (2023-10-03)
⚠️ Accidental Breaking Change in this release!
Unfortunately, we missed to declare this release as a breaking change. Luckily, only Building Block tests are affected, so there should not be any disruption in existing journeys.
Tests for Building Blocks that involve Business Events will now fail and throw an error because Building Blocks typically are not connected to a page in the test setup. As a workaround, you can add <buildingBlockInstance>.connected$.next();
in a beforeEach()
of your Building Block's test suite.
Note that we made this a non-breaking change in tests in version 29.0.2. So if it's feasible for you, skip version 28.1.1 and update directly to 29.0.2 to avoid having to adjust your tests. When doing so, please take a look at the breaking changes in 29.0.0.
Bug Fixes 🐛
- @allianz/taly-core: throw an error if a Business Event is called without a connected Page (#2012) (6a1ffd9)
Documentation 📚
- introduce permanent links to TOC entries in the documentation (#2034) (ad91980)
28.1.0 (2023-09-26)
Features ✨
- @allianz/taly-common: add ACL tag to TALY header and footer (#2017) (434757d)
28.0.1 (2023-09-25)
Bug Fixes 🐛
- @allianz/taly-nx: declare tsquery as dependency of taly-nx (#2030) (7a541a1)
28.0.0 (2023-09-25)
⚠️ BREAKING CHANGES
@allianz/taly-acl: we have removed several deprecated resources. In most cases, none of these removals will affect you. But in case they do, here is the full list:
injectViewGrant
: replacement is injectVisibleRule
injectViewDeny
: replacement is injectHiddenRule
setSubject
: replace setSubject('value')
with setEnvironmentValue('subject', 'value')
DEFAULT_ACL_MOCK
: use createAclMock()
instead
createDefaultAclMockProvider
: use the AclTestingModule
instead
@allianz/taly-common: the breakpoints.scss
and spacing.scss
files are no longer exported from the @allianz/taly-common
package as they are meant to be consumed internally. If you are relying on them, please add the necessary tokens directly to your stylesheet.
@allianz/taly-core: the InputElementInjectorDirective
has been removed from the taly-core
library. Please import it from @allianz/taly-acl/input-element-injector-directive
.
@allianz/taly-pfe-connector: when a Building Block is hidden with ACL and new data is added to the Building Block's state, this new data will take precedence over the backed-up data when the Building Block is shown again. Previously, the backed-up data had a higher priority. For more details you can check the TALY docs here.
@allianz/taly-sdk: the package manager that powers the generate-journey
command has been migrated from yarn
to npm
. If your journey generation fails due to peer dependency conflicts, you can opt in to the previous behavior by passing the --legacy-dependency-resolution
option to the generate-journey
command. The full documentation for the command can be found (here) in the TALY docs.
Features ✨
- @allianz/taly-acl: persist ACL policy via the ACL inspector (#1997) (19fb15b)
- @allianz/taly-core: introduce automatic form tracking feature (#1996) (18df2ca)
- @allianz/taly-nx: remove webcomponent polyfills (#1998) (ce8908c)
- @allianz/taly-sdk: migrate generate-journey cmd to npm (#1857) (5813989)
- remove deprecations (#2008) (faf1e91)
Documentation 📚
- integrate the BB core aspects documentation (#1994) (13a6327)
- integrate the creating an application documentation (#2006) (5a3b8c5)
Bug Fixes 🐛
- @allianz/taly-common: explicitly specify icon position of all action buttons (#2021) (f2aa9b7)
- @allianz/taly-nx: add
@angular/cdk
to a workspace when a new journey project is generated (#2023) (3ba748c)
- @allianz/taly-nx: fix update package.json scripts if no scripts key exists (#2005) (8bf0ce8)
- @allianz/taly-nx: update zone.js path in project config of generated journey (#2026) (769b3f3)
- @allianz/taly-pfe-connector: allow incoming data to override backup state (#1948) (7d96492)
- @allianz/taly-pfe-connector: make the PfeTrackingService optional (#2019) (6fbea68)
- @allianz/taly-sdk: replaced pinned dependencies with tilde range (#2003) (6e4b0f5)
- @allianz/taly-acl: downgrade filtrex dependency to v2 to revert breaking change (#2016) (82aad83)
27.4.0 (2023-09-22)
Bug Fixes 🐛
- @allianz/taly-common: explicitly specify icon position of all action buttons (#2021) (30b48c2)
27.3.0 (2023-09-19)
⚠️ Hotfix release: Due to unforeseen changes in the ACL condition evaluation we decided to downgrade filtrex to version 2 again.
Bug Fixes 🐛
- downgrade filtrex dependency to v2 to revert breaking change (6bf1892)
27.2.0 (2023-09-12)
Features ✨
- @allianz/taly-acl: update display of acl defaults in the policy editor of the acl inspector (#1989) (cd7da55)
Documentation 📚
Bug Fixes 🐛
- @allianz/taly-nx: fix use-native-destroy-ref migration (#1981) (4638c4c)
- @allianz/taly-nx: remove description key inside page configuration (#1992) (533455a)
27.1.0 (2023-09-05)
Documentation 📚
- @allianz/taly-acl: add documentation on how to integrate ACL into non-generated apps (#1968) (bfe9c9b)
- add internationalization documentation (#1971) (8b1f11c)
- improve plugins documentation (#1974) (199cf1c)
Bug Fixes 🐛
- @allianz/taly-common: fix a11y issues on taly frame (#1924) (846c5ce)
- @allianz/taly-common: fix sidebar position (#1961) (020acbe)
- @allianz/taly-oauth: make sure oauth configs are set inside the oauth service in manual apps (#1972) (15db47b)
- @allianz/taly-sdk: add missing peer dependencies to workspace generating a journey (#1979) (a8b3172)
- @allianz/taly-sdk: fix handling of envPath and aquila-theme options in generate-journey command (#1967) (526c18d)
Features ✨
- @allianz/taly-common: cancel button in expert journey (#1944) (8b7cb83)
- @allianz/taly-nx: activate support of the NGX-PFE redux dev tools integration (#1934) (c39c4e8)
- @allianz/taly-nx: introduce compact option to buildingBlockStyle (#1956) (d0c0dcc)
- @allianz/taly-nx: remove @ngneat/until-destroy from freshly created BBs and libs (#1987) (12e2f10)
27.0.0 (2023-08-21)
Please use nx migrate @allianz/taly-nx
to migrate to TALY 27
⚠️ BREAKING CHANGES
- update to Angular 16 (#1875)🎉
- @allianz/taly-nx: remove the deprecated
JourneySrcGeneratorSchema
, TargetType
, and PagesJsonSchema
.
For the replacement details, please refer to our release page (#1886).
- @allianz/taly-nx:
TargetEnv
is removed from the experimental feature. You can now use the --target
option without specifying --experimental=TargetEnv
.
- @allianz/taly-acl: change
policy.txt
format to support readonly
state (#1855)
The ACL engine has been completely rewritten, causing several exports to be removed or deprecated. If you depend on these, contact us.
Details:
AclEvaluationBase
, ExpressionStoreAdapter
, AclEvaluationReport
, Reporter
, PDP
, createExpressionEngine
, BOX_TYPE
, createCacheBox
, DecisionRequest
, and a lot of other functions, types, interfaces and classes that were exported by @allianz/taly-acl
got removed
- The
policySeparator
option from journey-src
Generator and from the generate
and generate-and-serve
Executors got removed
interface Journey
from @allianz/taly-sdk
now has a mandatory new property policy
- There is an automatic migration available through the
nx migrate
command. Please use nx migrate @allianz/taly-nx
to migrate to TALY 27. For users that work outside of an Nx Workspace, you can use the taly
CLI command migrate-policy-format
to migrate your journey configuration like so: npx taly migrate-policy-format -c path/to/cour/config/
.
- @allianz/taly-acl: We updated the tool (filtrex) that we use to evaluate ACL conditions. There are breaking changes between the old and the new version. We don't expect anyone to be affected by this change, but we can't guarantee it. To see if you might be affected, please see https://github.com/m93a/filtrex/blob/main/CHANGELOG.md#300 for a list of the breaking changes in filtrex.
Features ✨
- @allianz/taly-acl: introduce visible and editable states for ACL resources. Please check the ACL documentation for more details about them. (#1937) (73bcf7b)
- @allianz/taly-common: allow styling the "back" action button as "tertiary" in Expert journeys (#1936) (1387fdc)
- @allianz/taly-nx: implement journey model extraction (#1863) (6c72f8f)
- @allianz/taly-nx: introduce TALY extract-i18n executor (#1929) (9805457)
- @allianz/taly-oauth: add appTokenPageIdOrInternalPath to TALY oauth configurations (#1895) (e7a70f3)
- @allianz/taly-nx: remove TargetEnv from experimental features (#1880) (634bd74)
- update to Angular 16 (#1875) (b17449e)
- @allianz/taly-nx: remove deprecations (#1886) (f845c18)
Documentation 📚
- @allianz/taly-acl: mention that taly-oauth should not be used when target is
module
(#1950) (2d6cc50)
- @allianz/taly-acl: add hint about the policy.txt separator format change in v24 to CHANGELOG.md (#1903) (c5c4242)
- add hint to TALY 22 changelog about not having an .angular folder when running the migration (#1905) (4608d75)
Bug Fixes 🐛
- @allianz/taly-acl: apply readonly to dynamically added/removed form controls (#1891) (4912fee)
- @allianz/taly-nx: ignore files starting with a dot in the locales folder (#1930) (2337cf1)
- @allianz/taly-nx: respect previous sourceLocale config (#1896) (9bcd66f)
- @allianz/taly-sdk: correctly handle peer dependencies in generated workspaces by dealing with array results when peer dependencies are collected by TALY (#1955) (626fc3c)
- @allianz/taly-nx: ensure that the web component bundle properly separates the code (#1881) (010ace2)
- @allianz/taly-sdk: determine the correct versions of the journey libraries and peer dependencies (#1960) (effd4f4)
26.0.0 (2023-08-04)
This version is exactly the same version as 24.2.0. This was necessary to remove the faulty version 25 from history.
24.2.0 (2023-07-12)
Documentation 📚
Features ✨
- @allianz/taly-common: center alignment for a page that doesn't have the navigation bar (#1845) (09d9081)
- @allianz/taly-common: use NgOptimizedImage directive for images (#1849) (d383ff6)
- @allianz/taly-nx: add meta description tag support (#1854) (4950af6)
- migrate taly-workspace to npm (#1850) (fab20e8)
24.1.0 (2023-06-27)
Features ✨
- @allianz/taly-nx: introduce showroom header (#1835) (91da27e)
Bug Fixes 🐛
- @allianz/taly-common: allow empty sections configuration (#1844) (e6e74d8)
- @allianz/taly-nx: fix space above a sticky building block in retail (#1839) (7b638ba)
- @allianz/taly-sdk: add .npmrc file for generated journey's workspace in the published package (#1841) (1ba23d1)
- taly-sdk: update taly-nx version in the package.json file for generated workspaces (#1846) (e422c9b)
24.0.1 (2023-06-20)
24.0.0 (2023-06-16)
⚠️ BREAKING CHANGES
- The deprecated
@allianz/taly-schematics
and @allianz/taly-builders
packages are removed from TALY. If you are still relying on them, please see the migration details here.
- @allianz/taly-nx: The deprecated
workspace-with-journey
generator is removed. The command npx nx generate @allianz/taly-nx:workspace-with-journey
has to be replaced with npx taly generate-journey
from the @allianz/taly-sdk
package. For more details, please refer to TALY documentation.
- @allianz/taly-core: The deprecated
ShowroomModule
from the @allianz/taly-core/showroom
is removed. No replacement will be provided.
- @allianz/taly-sdk: We moved the
GenerateJourneyOptions
interface, generateJourney
method, and loadJourneyFromFolder
method from the @allianz/taly-sdk
to the sub-entry @allianz/taly-sdk/node
. It requires "moduleResolution": "node16"
to be configured in the tsconfig.json
file.
- policy.txt: The separator in the
policy.txt
was changed from # ALLOW EVERYTHING - AUTO GENERATED BY TALY SCHEMATICS
to # ALLOW EVERYTHING - AUTO-GENERATED BY TALY GENERATORS
. Please ensure to update all your configurations with this change, as it is not handled automatically by the migration.
Features ✨
- @allianz/taly-sdk: provide sub-entry for sdk features that only work in node environment (#1803) (784e257)
Bug Fixes 🐛
- @allianz/taly-nx: switch to latest error building block for the default error page (#1831) (435d61e)
23.3.0 (2023-06-14)
Bug Fixes 🐛
- @allianz/taly-core: fix the scroll-to-error position when there is no sticky element on a page (#1824) (c0797b1)
- @allianz/taly-nx: add ng-aquila peer deps to workspace when generating a new journey project (#1821) (bdfb536)
Features ✨
- @allianz/taly-nx: add allow list for PFE actions in Showroom Journeys (#1811) (f29755c)
- @allianz/taly-nx: introduce showroom initial state config (#1819) (d7e551e)
Documentation 📚
- update dead link to angular-nx-migration recipe (#1825) (a9d1359)
23.2.0 (2023-06-13)
Bug Fixes 🐛
- @allianz/taly-nx: do not update the project localization config for module journeys (#1813) (0cd421c)
- @allianz/taly-nx: use rxjs 6 exports in generated web components (#1818) (fffa6eb)
- @allianz/taly-schematics: generate-app add missing peer dependency (#1787) (bad81c6)
Features ✨
- @allianz/taly-nx: improve the error message for missing journal files (#1815) (db90a4c)
- @allianz/taly-sdk: improve dependency installation performance of generate-journey (#1798) (aa61aa6)
23.1.0 (2023-06-06)
⚠️ DEPRECATIONS
- We have moved the TS interfaces
PagesJsonSchema
and JourneySrcGenerationOptions
from @allianz/taly-nx
to @allianz/taly-sdk
. We also renamed the enum TargetType
to JourneyTargetType
and moved it into @allianz/taly-sdk
. Please adjust your import paths for these interfaces/enums from @allianz/taly-nx
to @allianz/taly-sdk
and adjust the name TargetType
to JourneyTargetType
. We plan to remove these deprecated exports with the next major version.
- We have deprecated the
Showroom
Angular module from @allianz/taly-core/showroom
. It was only meant to be consumed internally by TALY on the generated journeys, therefore no replacement will be provided. We plan to remove this module with the next major version.
Documentation 📚
- add docs about how state and resources are set in showroom journey (#1791) (4b5ea55)
Bug Fixes 🐛
- @allianz/taly-core: fix scroll to error for dropdown and group elements (#1780) (a7d0918)
- @allianz/taly-core: scroll to error: check if an errorControl is available before using it (#1804) (2242559)
- @allianz/taly-nx: fix webcomponent scroll (#1799) (201cd40)
Features ✨
- @allianz/taly-nx: prevent PFE Actions and Service Activators logic from running in showroom (#1797) (dd33c84)
- @allianz/taly-nx: update vertical spacing for Building Block with background color (#1800) (6ed45e2)
- @allianz/taly-sdk: introduce generateJourney function and CLI command (#1788) (dfb5854)
23.0.2 (2023-05-30)
Bug Fixes 🐛
- @allianz/taly-pfe-connector: support config of nested dynamic resources in showroom (#1783) (802574a)
- @allianz/taly-schematics: update vertical spacing for headline (#1768) (c837fed)
23.0.1 (2023-05-23)
23.0.0 (2023-05-17)
⚠️ BREAKING CHANGES
- @allianz/taly-core:
Business event calls always resolve with an empty value now. If any of your Building Blocks are consuming the resolved value, it is necessary to modify them to function without it.
- @allianz/taly-nx:
Several options have been removed from the
taly-nx
generators and executors to enhance the developer experience. They now operate more intelligently and automatically detect the configuration from the project.json
file.
Details:
- The
library
generator does not accept --projectRoot
and --project
options anymore. Instead, it has a mandatory --name
option.
- The
--path
option is removed from the following generators: building-block
, plugin
, building-block-example
. It will be automatically detected from the project configuration.
- We have removed the parameters
--update-assets-in-angular-json
and --update-angular-json
for the journey-src
generator, as well as their counterparts updateAssetsInAngularJson
and updateAngularJson
for the generate
and generate-and-serve
executors. We now automatically update your project configuration if we deem it necessary.
Features ✨
- @allianz/taly-core: resolve business event with an empty value (#1766) (b060b6b)
- @allianz/taly-nx: header resources localization (#1767) (a34df00)
Bug Fixes 🐛
- @allianz/taly-nx: fix and improve project config update on web component generation (#1771) (b8d4280)
22.1.1 (2023-05-10)
Bug Fixes 🐛
- @allianz/taly-schematics: remove building block libraries from the dependency lists (#1758) (2df5210)
22.1.0 (2023-05-09)
Features ✨
- @allianz/taly-common: add sorting to frame small print (#1727) (68b3242)
Bug Fixes 🐛
- @allianz/taly-common: remove the empty left column from expert journeys (#1693) (53915b2)
- @allianz/taly-common: turn retail back button to a plain button (#1737) (f1d357c)
- @allianz/taly-schematics: add forwardRef to schematic template (#1741) (1108a17)
- @allianz/taly-schematics: fix spacing between building blocks in the same section (#1732) (41ec4ed)
- @allianz/taly-schematics: place sticky BBs below sticky header in Expert journeys (#1744) (84d95fc)
22.0.1 (2023-05-02)
Documentation 📚
- switch the documentation from taly-schematics to taly-nx (#1709) (c6ebade)
22.0.0 (2023-04-25)
With this release, we would like to introduce the taly-nx
package to you. This fully replaces the former taly-schematics
and taly-builders
packages, which are going to be removed in the near future.
A consequence of that change is, that it is now required to be inside an Nx workspace to use TALY "Executors" and "Generators" (previously "Builders" and "Schematics").
As usual, we do ship automated ng update schematics/migrations (This time, they handle the taly-nx
change and update the providers definition of the building blocks).
Please update the TALY dependencies and specifically @allianz/taly-core
using ng-update or nx migrate to apply those migrations to your workspace.
We also prepared a documentation, on how to handle the update in an Nx workspace that does not use an angular.json
anymore. Please ensure that no .angular
folder is present in the workspace before you run the migration.
As a reference, the following table shows the command replacements:
Deprecated command |
Replacement |
yarn schematics @allianz/taly-schematics:generate-workspace-app |
npx nx generate @allianz/taly-nx:journey |
yarn schematics @allianz/taly-schematics:workspace-generate |
npx nx generate @allianz/taly-nx:journey-src |
yarn schematics @allianz/taly-schematics:generate-app |
npx nx generate @allianz/taly-nx:workspace-with-journey |
yarn schematics @allianz/taly-schematics:add-building-block-library |
npx nx generate @allianz/taly-nx:library |
yarn schematics @allianz/taly-schematics:add-building-block |
npx nx generate @allianz/taly-nx:building-block |
yarn schematics @allianz/taly-schematics:add-example |
npx nx generate @allianz/taly-nx:building-block-example |
yarn schematics @allianz/taly-schematics:add-plugin |
npx nx generate @allianz/taly-nx:plugin |
💡 The workspace-with-journey
generator is not meant to be used inside a workspace. Soon to be moved to the taly-sdk
package.
⚠️ BREAKING CHANGES
- @allianz/taly-*: Update to Angular 15 (#1666) 🎉
- The new
taly-nx:journey
generator that replaces the taly-schematics:generate-workspace-app
schematic does not accept a --path
option anymore, but instead now requires a --name
option.
Features ✨
Bug Fixes 🐛
- @allianz/taly-nx: use workingDirectory option in generate executor (#1710) (fec8046)
21.5.2 (2023-04-18)
Bug Fixes 🐛
- @allianz/taly-schematics: fix example data template in add-building-block schematic (#1703) (4b399e9)
21.5.1 (2023-04-18)
21.5.0 (2023-04-14)
Bug Fixes 🐛
- @allianz/taly-schematics: log runtime errors to the console (#1692) (f529813)
Features ✨
@allianz/taly-schematics: support generation of showroom journeys (#1656) (b9acc54), closes #1688
💡 We provide an ng update
schematic to get your Building Blocks ready to be used in showroom journeys automatically. The schematic adds an *example-data.ts
file to each of the Building Blocks present in your workspace's Building Block libraries. The example data (state
and resources
) that Showroom journeys consume is taken from the default Building Block's documentation example and added to the newly created file.
How to execute the schematic: make sure you have@angular/cli
version 14.2.11
installed and then run npx ng update @allianz/taly-core
.
⚠️ Pay attention to the warnings logged by the ng-update schematic. Property access in the example data (e.g., FileType.JPEG
, this.selectedErrorType
, etc.) is not covered by the schematic and needs to be adapted in the *example-data.ts
file manually.
21.4.2 (2023-04-11)
Bug Fixes 🐛
- @allianz/taly-core: add default id to building blocks (#1683) (cc60c88)
Documentation 📚
- @allianz/taly-acl: move acl guide to taly workspace (#1676) (94cb064)
21.4.1 (2023-04-04)
21.4.0 (2023-03-28)
Documentation 📚
Features ✨
- @allianz/taly-sdk: add getBuildingBlocksWithJourneyMetadata function (#1668) (0d71a7c)
21.3.1 (2023-03-21)
Bug Fixes 🐛
- @allianz/taly-schematics: validate the names used while running schematics (#1655) (dd1d3b5)
21.3.0 (2023-03-14)
Features ✨
- @allianz/taly-common: hide empty panels (#1639) (63a01da)
- @allianz/taly-nx: add journey generator (#1633) (d0e48bc)
- @allianz/taly-pfe-connector: add state hydration and fake backend for showroom case (#1643) (59176bc)
Bug Fixes 🐛
- @allianz/taly-common: invert logic for hiding/showing empty sections and panels (#1653) (46e8eed)
- @allianz/taly-schematics: fix plugin relative path and add gitignore schematic (#1640) (f670cfe)
21.2.0 (2023-03-07)
Bug Fixes 🐛
- @allianz/taly-core: properly cleanup the validation cache and subscriptions to allow… (#1630) (f30a242)
Features ✨
- @allianz/taly-nx: add re-exports of existing TALY schematics (#1623) (6f87293)
- @allianz/taly-schematics: add bb and library dependencies to workspace (#1610) (41993b8)
- @allianz/taly-sdk: display global/local percentages in get-glob…al-local-building-block-counts (#1637) (f06c07b)
21.1.0 (2023-02-28)
Documentation 📚
- add quick start section to docs index page (#1615) (d016864)
Bug Fixes 🐛
- @allianz/taly-schematics: remove --prod from webcomponent script (#1618) (e0ebc4a)
Features ✨
- @allianz/taly-common: add scrolling for sidebar (#1612) (eaac1b6)
- @allianz/taly-common: use same wording for save_offer button for Retail and Expert (#1622) (80924d6)
- @allianz/taly-nx: add generate and generate-and-serve executor (#1616) (2cd58f2)
- add method to fetch packages used in journey (#1617) (f4ce609)
21.0.1 (2023-02-21)
Documentation 📚
- add note to not import web component bundles as type=module (#1604) (f6326aa)
21.0.0 (2023-02-15)
⚠️ BREAKING CHANGES
**@allianz/taly-schematics:**
We have removed the deprecated debugInspection
and showDebugPanel
options for the generate-app
and workspace-generate
schematics. For more information about the replacements provided, please read the original deprecation message in the TALY version 18 release.
**@allianz/taly-builders:**
We introduced a target to serve a generated journey to the project configuration in the angular.json
file: serve-generated-app
. This new target needs to be configured in the generate-and-serve
builder (develop
target) as a mandatory new serveTarget
option and replaces the previous buildConfiguration
and port
options of the generate-and-serve
builder.
💡 We provide an ng update
schematic to automatically add this new target to existing projects and to move the configuration from the generate-and-serve
target to the new serve-generated-app
target. Run yarn ng update @allianz/taly-schematics
to have your project configuration(s) updated automatically.
Here is a Before/After of the generate-and-serve
configuration:
Before:
{
"projects": {
"my-journey": {
"architects": {
"develop": {
"builder": "@allianz/taly-builders:generate-and-serve",
"options": {
"buildConfiguration": "development",
"port": 4210
}
}
}
}
}
}
After:
{
"projects": {
"my-journey": {
"architects": {
"develop": {
"builder": "@allianz/taly-builders:generate-and-serve",
"options": {
"serveTarget": "my-journey:serve-generated-app"
}
},
"serve-generated-app": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"port": 4210,
"browserTarget": "my-journey:build-generated-app:development"
}
}
}
}
}
}
⚠️ DEPRECATIONS
- **@allianz/taly-builders:**
We deprecated the Channel
enum. Please use CHANNEL
from @allianz/taly-core
instead.
Bug Fixes 🐛
- @allianz/taly-schematics: ensure an offer code is passed to template only if it exists (#1595) (d25a4b2)
- @allianz/taly-schematics: fix tsconfig update error in add-building-block-library schematic (#1592) (26e6fe8)
Features ✨
- @allianz/taly-builders: use explicit serve target for generate-and-serve (#1570) (53d61d9)
- @allianz/taly-schematics: schematics to add a new plugin into an existing library (#1581) (5d0e805)
Documentation 📚
- update building block platform recipes link (#1600) (60dc51b)
20.3.0 (2023-02-10)
Features ✨
- @allianz/taly-common: introduce save offer button for expert and offer code for retail (#1579) (36b8bbc)
Bug Fixes 🐛
- @allianz/pfe-connector: properly unsubscribe BuildingBlockBackupData handling when the b… (#1572) (ff0f2a0)
- @allianz/taly-builders: make introspection handling more robust to handle different setups (#1587) (b37382e)
- @allianz/taly-common: fix vertical spacing for Firefox (#1575) (5e2a13d)
- @allianz/taly-common: improve vertical spacing for actions area (#1582) (d4b1b5f)
20.2.0 (2023-02-07)
Bug Fixes 🐛
- @allianz/taly-schematics: fix section divider line width for big screens in Expert theme (#1566) (ebb4672)
Documentation 📚
- add short description of Jest tests cpu profiling (#1568) (05eb420)
Features ✨
- @allianz/taly-common: add trackify to the summary panel (#1565) (2afa38c)
- @allianz/taly-schematics: support hash location strategy in standalone apps (#1558) (59aa648)
20.1.0 (2023-01-31)
Documentation 📚
- encourage the usage of Builders more than the usage of Schematics (#1549) (664398b)
Features ✨
- @allianz/taly-core: improve TALY validator performance (#1563) (da547e8)
20.0.1 (2023-01-24)
Documentation 📚
20.0.0 (2023-01-20)
⚠️ BREAKING CHANGES
As always, please use ng update
to update to the new version. In this release we provide update schematics in the @allianz/taly-schematics package: ng update @allianz/taly-schematics
The recent TALY 19 release brought a breaking change for the taly-schematics CLI usage:
All schematics options now have to be written in kebab case instead of camel case.
In most cases, this leads to a change like this:
--skipInstall -> --skip-install
But for all parameters that use multiple uppercase letters in a row, it lead to something like
this:
--debugBB -> --debug-b-b
As other alternatives did not work, we went for a change that removes multiple uppercase
letters in a row:
debugPFE -> debugPfe
debugACL -> debugAcl
debugBB -> debugBb
This leads to the following CLI parameters:
--debug-pfe
--debug-acl
--debug-bb
And the following builder parameters:
debugPfe
debugAcl
debugBb
Documentation 📚
- @allianz/taly-schematics: fix casing for aquila options in schematics (#1543) (458eaaa)
Bug Fixes 🐛
Features ✨
- @allianz/taly-schematics: allow centered expert content with workspace-generate (#1546) (3890259)
- @allianz/taly-schematics: update angular version of generate-app schematic (#1551) (d6c8c44)
19.0.1 (2023-01-17)
19.0.0 (2023-01-16)
⚠️ BREAKING CHANGES
As always, please use ng update
to update to the new version. In this release we provide update schematics in the @allianz/taly-schematics package: ng update @allianz/taly-schematics
- @allianz/taly-*: Update to Angular 14 (#1517) 🎉
- @allianz/taly-schematics: All schematics options have to be written in kebab case instead of camel case. Please see the App Generation Documentation for more details.
- @allianz/taly-acl: We changed and removed some low-level ACL APIs. If you are affected by these changes you have been digging too deep.
With this kind of knowledge, we'd like you to join our team 🙌
Details:
- We removed the two methods
prepend
and loadRules
from class PDP
- We removed the method
prepend
, the static method fromRules
, and the property _ruleCounter
from class Policy
- The method
injectRules
from the classes AclInspectorService
, AclService
and AclEngine
now expects AclRuleData[]
instead of AclRule[]
- The method
addRule
from class AclService
now expects AclRuleData
instead of AclRule
- The method
createRule
from class Policy
now expects a mandatory parameter of type AclRuleData
instead of an optional AclRuleData | AclRule
- @allianz/taly-schematics: The
ndbx
option was replaced for both the TALY schematics and the TALY builders. The update schematic is going to automatically adjust your builder configuration in the angular.json
file. Please run ng update @allianz/taly-schematics
. Build scripts that directly call the TALY schematics cli, need to be adjusted manually. Please see the documentation for further details. In a nutshell:
- The
ndbx.expert
boolean option is transformed to the aquila-channel
and aquilaChannel
for schematics and builders respectively, with the value expert
.
- The
ndbx.theme
option is changed to aquila-theme
for schematics and to aquilaTheme
for builders.
⚠️ DEPRECATIONS
- **@allianz/taly-common:**
We deprecated TALY typed forms (FormGroupTyped
, FormArrayTyped
, FormControlTyped
) as they can be fully replaced by Angular forms. Both types of forms (TALY typed forms as well as Angular typed forms) will be supported during the form introspection for a few versions to provide a smooth migration period.
Bug Fixes 🐛
- @allianz/taly-acl: fix deletion of rules from ACL inspector (#1511) (31d83e8)
Features ✨
18.1.2 (2023-01-10)
18.1.1 (2023-01-03)
18.1.0 (2022-12-27)
Features ✨
- @allianz/taly-schematics: allow to use PFE state in stage headline and subHeadline (#1509) (f5525b4)
- schematics: include chunk-loading-error page and error handler in generated apps (#1480) (8f707cc)
18.0.1 (2022-12-20)
18.0.0 (2022-12-16)
⚠️ BREAKING CHANGES
@allianz/taly-schematics:
So far, the category
of a Building Block has been stored in its Markdown file. To improve the developer experience with TALY Schematics when developing Building Block libraries, we have added the fields prefix
and category
to the libraries' library.json
file. From now on, the values for these two fields need to be provided when using the add-building-block-library
schematic, as opposed to the add-building-block
schematic. The library.json
file and its content will make it easier to use other TALY schematics and TALY Builders later on.
💡 This change is covered by an ng update
migration schematic that creates a library.json
file for each of the libraries in your workspace. When you run the ng update
schematic, for each library you will be offered a list of categories and prefixes already used in the library's Building Blocks (or Plugins) as suggestions. Based on that, you can decide which category name and prefix should be used for each library. The schematic will then create a library.json
file for each library.
Additionally, the ng update
schematic also removes the category
property from scripts in the workspace's root package.json
, as well as from Building Blocks' (and Plugins') *.md
files.
Important note: For the update schematic
to work optimally, please make sure you update to TALY 18.x in your workspace following this sequence:
- Generate relevant metadata files with a previous version of
@allianz/taly-builders
: yarn nx run-many --target=journal --all && yarn nx run-many --target=extract-plugin-metadata --all
- Update the TALY schematics package, which will run the
ng update
schematic: yarn ng update @allianz/taly-schematics
- Update all other TALY packages
In version 17.3.0 of @allianz/taly-schematics
we introduced a way to configure an additional action button in the TALY Frame, next to the default NEXT and BACK buttons. If you didn't yet use this feature then this breaking change won't affect you. Otherwise, keep reading:
The extraAction
that you could configure in a page's pageData
is more opinionated in version 18.0.0. You can now only choose from a set of available additional actions instead of configuring everything freely. The only available "extra action" is the SAVE_OFFER
action, which will show a "Save and Email Quote" button between the NEXT and BACK buttons in Retail journeys.
Before:
{
"extraAction": {
"label": "reload page",
"pfeActionConfig": {
"type": "PFE_RELOAD_PAGE"
}
}
}
Now:
{
"extraActions": ["SAVE_OFFER"]
}
Some Building Blocks are setting their id
property as readonly
. This will lead to a compilation error if a journey including such a Building Block in the header is generated with Typescript's strict
compilation enabled. As a side note, this error was already happening for Building Blocks rendered in the "content" area of the TALY frame.
We consider this a soft breaking change since practically none of the journeys are generated in strict
mode yet, which means they will not experience that error when TALY is upgraded.
@allianz/taly-pfe-connector:
We are no longer exposing the following properties and methods as they were never meant for public usage
pfeObservableExpressionBuilder
pfeStorageId
init
handleBusinessEvent
storeBuildingBlockData
handleNavigation
handleValidationConfiguration
handleState
⚠️ DEPRECATIONS
Documentation 📚
- @allianz/taly-schematics: clarify that the --directory flag for generate-app only accepts workspace-local paths (#1500) (d6de1ab)
Features ✨
- @allianz/taly-common: add ChunkLoadingErrorComponent (#1476) (ea43d06)
- @allianz/taly-oauth: allow to provide acrValues during Oauth authorization (#1482) (ed3829e)
- @allianz/taly-pfe-connector: allow inline PFE service activator configurations in "pages.json" (#1484) (1642773)
- @allianz/taly-schematics: add separated debug flags for BB, ACL, PFE (#1490) (56bf4e7)
- @allianz/taly-schematics: allow dynamic resources for header actions (#1429) (94e0504)
- @allianz/taly-schematics: introduce showSaveOfferButton flag for Retail journeys (#1489) (99df9b7)
- @allianz/taly-schematics: store and use prefix and category in library.json (#1473) (143a4c5)
- @allianz/taly-schematics: update spacing between panel and building block (#1494) (30d7d9d)
- @allianz/taly-schematics: update vertical spacing (#1420) (3c73e8b)
- @allianz/taly-sdk: add further commands to analyze journeys (#1483) (b2e8447)
Bug Fixes 🐛
- @allianz/taly-common: fix frame actions background color (#1492) (6c24b67)
- @allianz/taly-core: add negligible delay to error messages of dynamic validators (#1486) (70bc1a1)
- @allianz/taly-core: add PFE dependency (#1503) (7f2b868)
- @allianz/taly-pfe-connector: restore states only when they are available (#1497) (07ad6da)
17.3.0 (2022-12-06)
Bug Fixes 🐛
- @allianz/taly-common: limit grid width for wide content (#1464) (ae75b99)
Features ✨
- @allianz/taly-common: add configurable third button to TALY frame's Retail action buttons (#1455) (da4e27e)
- @allianz/taly-sdk: add journey pages functions (#1471) (1af2b9a)
17.2.0 (2022-11-29)
Bug Fixes 🐛
- @allianz/taly-common: re-introduce proper space between action buttons (#1459) (e549c8f)
- @allianz/taly-schematics: use current (runtime) year in default footer copyright note (#1460) (a23dbaf)
Features ✨
- @allianz/taly-pfe-connector: run PFE actions via Business Events (#1423) (58f927a)
- @allianz/taly-schematics: allow to call business events from header action building blocks (#1451) (36cdc42)
- @allianz/taly-schematics: show loading spinner before Angular app (#1461) (4463fcf)
- @allianz/taly-sdk: add SDK CLI (#1463) (155e909)
- @allianz/taly-sdk: expose SDK model (#1456) (89f72a2)
17.1.0 (2022-11-22)
Documentation 📚
Features ✨
- @allianz/taly-sdk: add getBuildingBlockUsageCounts (#1448) (7c43d0a)
- @allianz/taly-sdk: add loadJourneyFromFolder and getUniqueBuildingBlocks (#1446) (737a72c)
- @allianz/taly-sdk: introduce the new SDK library (#1443) (b3a0d27)
Bug Fixes 🐛
- do not modify the path in the WebComponentLocationStrategy anymore (#1441) (7c0df6b)
17.0.0 (2022-11-15)
⚠️ BREAKING CHANGES
@allianz/taly-schematics
- The
VerticalSpacing
experimental feature is now not an experiment anymore. We promoted it to be a stable feature and it will now be enabled in all generated journeys. Technically speaking this is not a breaking change because you don't need to do anything. However, since it might be a drastic visual change in some journeys we declared it as a breaking change.
If you really want to have something actionable with this change: Please remove the experimental feature VerticalSpacing
from your builder configuration or schematic invocation.
- Move pages.json file schema to a new entry point. Instead of
@allianz/taly-core
, it now has to be imported from @allianz/taly-schematics
(#1427)
@allianz/taly-pfe-connector
If you hide an entire Building Block with ACL, the state of that Building Block will now be removed from the PFE state. If it's shown again at a later point, the previous state will be restored to not lose any user input.
Bug Fixes 🐛
Features ✨
- @allianz/taly-pfe-connector: remove BB state from PFE state if ACL hides BB (#1417) (24ec7ff)
- @allianz/taly-schematics: allow to add small-print to a page (#1431) (d3abc9a)
- @allianz/taly-schematics: include first page of journey in main bundle (#1421) (11b28aa)
- @allianz/taly-schematics: promote VerticalSpacing experimental feature to be a stable feature (#1434) (3ec8a20)
16.1.0 (2022-11-08)
Documentation 📚
- add section about what TALY can and can not generate (#1403) (1261de0)
Bug Fixes 🐛
- @allianz/taly-schematics: apply ACL defaults also to header action BBs (#1394) (a7587fe)
- @allianz/taly-schematics: pin down version of ngx-json-viewer in generated apps (#1412) (40becb9)
- downgrade ngx-json-viewer to the last version compatible with ou… (#1408) (761f01f)
- make the title/headline of a page translatable (#1395) (1c2a64b)
Features ✨
- @allianz/taly-common: background color for retail action button area (#1404) (f597563)
- @allianz/taly-schematics: provide development configuration for freshly created workspace-apps (#1402) (068cfc1)
16.0.0 (2022-10-25)
⚠️ BREAKING CHANGES
Bug Fixes 🐛
- @allianz/taly-schematics: adapt vertical spacing in runtime when ACL rules are applied (#1368) (6979d49)
- @allianz/taly-schematics: update tracking details of next and back button (#1386) (5408fa9)
Features ✨
- @allianz/taly-core: dynamic MIN and MAX values for validators (#1329) (527a9e2)
- @allianz/taly-core: scroll to first erroneous form control if next page is requested (#1381) (b007347)
15.3.1 (2022-10-18)
Bug Fixes 🐛
- @allianz/taly-schematics: set env data from host app at the earliest (module integration) (#1372) (0e46fbf)
15.3.0 (2022-10-14)
Bug Fixes 🐛
- @allianz/taly-common: remove hardcoded colors from common components (#1353) (fce2ff3)
Features ✨
- @allianz/taly-builders: introduce watch mode for generate builder (#1362) (551328a)
15.2.0 (2022-10-11)
Bug Fixes 🐛
- @allianz/taly-common: change the font size of the stage headline in Expert channel (#1354) (3bee4c1)
Features ✨
- @allianz/taly-schematics: introduce experimental WhiteLabel feature (#1351) (2e819c2)
15.1.0 (2022-10-04)
Features ✨
- @allianz/taly-common: frame footer now with gray line for Retail (#1339) (683d1fe)
15.0.1 (2022-09-27)
Bug Fixes 🐛
- @allianz/taly-builders: forward error from builders that call workspace-generate schematic (#1338) (66ac31c)
- @allianz/taly-common: remove destroyed templates from TalyFrameSmallPrintService (#1337) (f9adedb)
- @allianz/taly-schematics: forward errors thrown inside generated web components (#1340) (a7a04d8)
15.0.0 (2022-09-22)
⚠️ BREAKING CHANGES
@allianz/taly-pfe-connector: null
and []
(empty array) are now valid values for static Building Block resources. Previously they have been ignored and have not been passed to setResources()
. Now Building Blocks will receive these values. This might be a breaking change because your Building Block might now receive slightly different resources, if you used these values in your configured static resources.
@allianz/taly-core: To improve the performance of TALY journeys, we replaced the AbstractBuildingBlock
methods isExpertChannel()
with isExpertChannel
and isRetailChannel()
with isRetailChannel
(i.e. the methods got replaced by properties).
💡 This change is covered by an ng update
migration schematic. Make sure to update TALY to version 15 using ng update @allianz/taly-core
to automatically migrate your existing code.
Features ✨
- @allianz/taly-core: replace isExpertChannel() and isRetailChannel() mtehods with regular properties (#1319) (39f1b85)
- @allianz/taly-pfe-connector: allow null and empty array as resource values (#1302) (68418c1)
- @allianz/taly-schematics: enable journey generated as a module to get env data from parent app (#1322) (8466260)
Documentation 📚
- add Building Block development best practices, starting with the NDBX grid (#1328) (d7202e6)
- add section about Internationalization to pages.json documentation (#1326) (5739006)
- make documentation more beautiful (#1327) (287b881)
- move generate-workspace-app schematic docs to app-generation (#1321) (21c2237)
Other 🧾
- update to latest pfe version and integrate routing setup fix (#1317) (8399971)
14.2.0 (2022-09-13)
Bug Fixes 🐛
- @allianz/taly-acl: introduce cache invalidation, to ensure that no outdated entries are used (#1292) (1ac8454)
- @allianz/taly-builders: restore logger indentation (#1306) (5e29a0b)
- @allianz/taly-common: better align accordion divider lines with Retail content (#1309) (b957ac5)
Features ✨
- @allianz/taly-schematics: allow to use ACL rules for header action BBs (#1307) (d917bf7)
- @allianz/taly-schematics: conditionally enable TS strict mode in generated apps (#1297) (f7d119b)
14.1.0 (2022-09-06)
Bug Fixes 🐛
- do not leak any detached DOM nodes through the acl-tag directive anymore (#1293) (32de4fe)
Features ✨
- @allianz/taly-common: add support for conditional sections (#1286) (5dceef8)
- @allianz/taly-schematics: introduce schematic to generate a Building Block library (#1290) (a500eb8)
14.0.2 (2022-08-30)
14.0.1 (2022-08-23)
14.0.0 (2022-08-22)
⚠️ BREAKING CHANGES
@allianz/taly-pfe-connector: If a non-configured Business Event is triggered, the Business Event promise is now rejected. As a consequence, Building Blocks would need to handle those promise rejections to prevent potential "unhandled promise rejection" errors.
@allianz/taly-acl: We changed the provider scope of the AclService
and AclInspectorService
from global to module level. The TALY generated applications should be working normally, while manually maintained applications are now required to add the additional ACL service providers. Please see more details here.
all TALY libraries: we enabled TypeScript's strict
mode for all of the TALY libraries. This should not affect you, but we can't completely rule out any accidental changes to public APIs. If you are indeed affected by this, please follow your compiler warnings/errors.
Features ✨
- @allianz/taly-common: change provider scope of frame services (#1256) (da3be24)
- @allianz/taly-schematics: dynamic deploy url in web component target (#1240) (bfbc0b0)
Bug Fixes 🐛
- @allianz/taly-common: increase font-weight of stage headline to 400 for Expert (#1271) (7f8b7de)
- @allianz/taly-common: restrict width of small print area (#1261) (e2c180f), closes #1160
- @allianz/taly-common: show step number on mobile (#1252) (c659e4e)
- @allianz/taly-pfe-connector: reject Business Event promise if not configured (#1243) (1f7cd4f)
Other 🧾
- @allianz/taly-acl: enable strict mode (#1262) (ad0bc07)
- @allianz/taly-builders: enable strict mode (#1276) (e9bb7d9)
- @allianz/taly-common: enable strict mode (#1268) (23e17e6)
- @allianz/taly-core: enable strict mode (#1266) (0c4fa8b)
- @allianz/taly-pfe-connector: enable strict mode (#1267) (2e06db6)
- @allianz/taly-schematics: enable strict mode (#1272) (542d78f)
13.6.1 (2022-08-09)
⚠️ BREAKING CHANGES
This is an exception and was detected after releasing this version. We aim to provide breaking changes exclusively in major TALY versions. Apologies for the inconveniences.
@allianz/taly-acl:
We changed the provider scope of the AclService
and AclInspectorService
from global to module level. The TALY generated applications should be working normally, while manually maintained applications are now required to add the additional ACL service providers. If your application is missing those services, please provide the code below to your app.module.ts
:
import { AclService, AclInspectorService } from '@allianz/taly-acl/angular`;
// ...
providers: [
AclService,
AclInspectorService
]
This change also similarly affects the tests, they now require the AclTestingModule
. You can add the following import in the setup of your failing test suites to fix them:
import { AclTestingModule } from '@allianz/taly-acl/testing';
// ...
imports: [AclTestingModule];
If you created a Building Block via the add-building-block
schematic, the AclTestingModule
will be imported in your test file by default.
Bug Fixes 🐛
- @allianz/taly-acl: fix ACL provider scope (#1250) (c87e068)
- @allianz/taly-common: fix header size and action layout (#1247) (3bd8e29)
- @allianz/taly-oauth: provide content-type and client_id on revoke (#1241) (#1244) (ec7eb16)
13.6.0 (2022-08-02)
Features ✨
- @allianz/taly-schematics: allow to update project's i18n configuration with workspace-generate (#1225) (355cba6)
Bug Fixes 🐛
- @allianz/taly-schematics: workspace-generate now places the post-build scripts in the generated folder (#1246) (febbcd8)
13.5.2 (2022-07-27)
Bug Fixes 🐛
- @allianz/taly-schematics: allow other state init strategies when no PFE state restore (#1233) (822a821)
- @allianz/taly-schematics: revert view encapsulation for web components (#1234) (8028dab)
- @allianz/taly-schematics: remove nx.json setup (#1238) (6f930a5)
13.5.1 (2022-07-26)
13.5.0 (2022-07-19)
Bug Fixes 🐛
- @allianz/taly-schematics: support dynamic binding in web component initial state (#1223) (15295fa)
Features ✨
- @allianz/taly-builders: support all workspace-generate options (#1226) (a21d0c0)
- @allianz/taly-schematics: add global-error-page to default app configuration (#1222) (7f40719)
13.4.1 (2022-07-12)
13.4.0 (2022-07-12)
Features ✨
- @allianz/taly-core: make EMAIL validator require top level domain (#1210) (067a5cc), closes #1143
- @allianz/taly-schematics: add --scripts option to generate-app (#1212) (bdb0cc1)
- @allianz/taly-schematics: allow to use CDK overlays from within web components (#1211) (488066d)
Documentation 📚
- @allianz/taly-schematics: add scripts option details (#1216) (5da6201)
- @allianz/taly-schematics: update generate target in docu code example (054a942)
13.3.0 (2022-07-05)
Bug Fixes 🐛
- @allianz/taly-schematics: remove space between adjacent panels (#1196) (25c9644)
Features ✨
- @allianz/taly-schematics: add optional divider line below section (#1185) (883c693)
- @allianz/taly-schematics: allow full-width BBs in Expert journeys (#1198) (26ff1cf)
Documentation 📚
- @allianz/taly-core: add TALY validators documentation (#1194) (95cb8e6)
13.2.0 (2022-06-28)
Features ✨
13.1.0 (2022-06-21)
Features ✨
- @allianz/taly-common: add back link to the "Next" button in the last journey page (#1177) (be29983)
- @allianz/taly-schematics: add back link to the "Next" button in the last journey page (#1183) (7d3fa33)
13.0.3 (2022-06-14)
Bug Fixes 🐛
- @allianz/taly-common: fix margin top of expert frame action (#1175) (6bd9a5f)
13.0.2 (2022-06-07)
13.0.1 (2022-05-31)
13.0.0 (2022-05-25)
⚠️ BREAKING CHANGES
Features ✨
12.4.2 (2022-05-24)
Bug Fixes 🐛
- @allianz/taly-common: fix font size of retail stage headline (#1156) (de55a89)
12.4.1 (2022-05-17)
12.4.0 (2022-05-10)
Features ✨
- @allianz/taly-core: allow more types in validationParam (#1134) (db85c4a)
12.3.1 (2022-05-03)
Documentation 📚
- @allianz/taly-common: introduce typed forms document (#1127) (9d240ff)
12.3.0 (2022-04-26)
Features ✨
- @allianz/taly-acl: allow to show/hide form groups and form arrays (#1117) (eaa3097), closes #1078
Bug Fixes 🐛
- do not try to add tsconfig paths for local libraries with the mo… (#1140) (b535bd2)
- fix missing argument in playground app (#1130) (64a9577)
12.2.0 (2022-04-19)
Documentation 📚
- @allianz/taly-common: update app-as-web-component.md with the correct url (#1120) (776a9d4)
Features ✨
- @allianz/taly-common: set minimum width on Next and Back buttons (#1113) (9a9ce93)
- @allianz/taly-schematics: add web component state API (#1080) (0e334e3)
12.1.0 (2022-04-12)
Features ✨
- @allianz/taly-common: add type to valueChanges (#1111) (9dae038)
- @allianz/taly-schematics: use ShadowDom view encapsulation for generated web components (#1079) (00e43f7)
- schematics: rename the generate architect added by generate-workspace-app (000fdbd)
12.0.1 (2022-04-05)
12.0.0 (2022-04-04)
⚠️ BREAKING CHANGES
Features ✨
@allianz/taly-builders: log errors instead of warnings in introspection builder (#1049) (ea4f9e8)
@allianz/taly-builders: make extract-plugin-metadata builder more strict (#1083) (1f009c8)
@allianz/taly-builders: make journal builder more strict (#1081) (34906e9)
@allianz/taly-common: introduce configurable spinner message (#1033) (39de3a6)
@allianz/taly-common: switch to 8 inner columns in retail panels (#1064) (93568db)
@allianz/taly-schematics: add back link to the stage of the TALY frame (#1076) (61cf44d)
@allianz/taly-schematics: introduce the PFE translations (#1042) (abae5cf)
update to Angular 13 (#990) (84abff9)
@allianz/taly-common: remove NxIsoDateAdapter (#964) (3c521e7)
@allianz/taly-schematics: remove deprecated --localize option from generate-app (#1013) (faa15b7)
remove deprecated components, services and interfaces (#1085) (493fcf6)
Documentation 📚
- @allianz/taly-common: correct TALY frame documentation (#1093) (afc1b8b)
- add hint on web component selector to guide (#1082) (9d1f38f)
Bug Fixes 🐛
- @allianz/taly-schematics: add dayjs locale definitions to generated tsconfig (#1094) (8eb059d)
- @allianz/taly-schematics: dasherize dist path for web component element builder (#1102) (98d1d83)
- @allianz/taly-schematics: fix pfe-debugger style (#1098) (c00b64a)
- @allianz/taly-schematics: only pass stage config for non-chromeless apps (#1096) (c1e02cb)
- @allianz/taly-schematics: resurrect schematics logger hierarchy (#1100) (f50f32a)
- @allianz/taly-schematics: use correct path to pages-json schema in generated config (#1099) (9904190)
- add dayjs locale definitions to generated tsconfig (part 2) (#1095) (f280341)
- call functions directly instead through a schematic, to prevent … (#1088) (f130f6b)
- fix playground generation (#1092) (35a02d3)
11.1.1 (2022-03-22)
Bug Fixes 🐛
- @allianz/taly-schematics: align footer to the bottom of the page (#1063) (c52e0a3)
- common: fix aem integration of stage back link (#1070) (11c044a)
11.1.0 (2022-03-15)
Bug Fixes 🐛
- @allianz/taly-acl: ignore comma inside parenthesis when split an acl line (#1059) (1846ffb)
- @allianz/taly-schematics: make generated building blocks work in strict typescript environments (#1057) (0ece559)
Features ✨
- @allianz/taly-common: add stage back link feature (#1045) (cbc6909)
11.0.5 (2022-03-08)
Bug Fixes 🐛
- ensure that all the tests also work on native windows (#1034) (f58a79a)
11.0.4 (2022-03-01)
11.0.3 (2022-02-22)
11.0.2 (2022-02-21)
Bug Fixes 🐛
- @allianz/taly-schematics: allow all non-word-characters in resource names (#1028) (966c7d9)
- @allianz/taly-schematics: wrap unsafe property keys in quotes in extracted resources (#1027) (27c49f0)
11.0.1 (2022-02-18)
Bug Fixes 🐛
- @allianz/taly-schematics: remove default config folder from schematics schema (#1025) (d8f54dd)
11.0.0 (2022-02-17)
⚠️ BREAKING CHANGES
- @allianz/taly-schematics: We've renamed the
PageConfigValidatorsOverride
from @allianz/taly-core/runtime-utils
to PageConfigOverrides
. Please rename this interface in your code, if you use it.
- @allianz/taly-acl: Whenever a form control gets enabled/disabled or added/removed because of an ACL rule, we now revalidate the form. This was not done in the past to avoid any circular events triggering duplicate/endless business calls. We don't expect anyone to be affected by this change. If you experience unexpected duplicate network calls or other unexplainable form behavior after this change, re-check the way your
valueChanges
and statusChanges
pipes are set up.
Bug Fixes 🐛
- @allianz/taly-acl: emit events when enabling/disabling form controls (#950) (ea8880e)
- @allianz/taly-common: align the footer to the bottom (#984) (f33b2c8)
- @allianz/taly-common: fix navigation bar styles (#1012) (16b5d50)
- @allianz/taly-common: fix order of trackify events during navigation (#1016) (7f7405e)
- @allianz/taly-common: fix text position of stage view component (#1001) (f5a3329)
Documentation 📚
- Restructure docs to be concept oriented rather than package oriented (#997) (16df06c)
Features ✨
- @allianz/taly-core: add validation parameters to validation map (#1008) (34addda)
- @allianz/taly-schematics: automate locales extraction and deprecate --localize option (#995) (0012d0a)
- @allianz/taly-schematics: introduce translatable BB resources (#966) (6795b7a)
- update pfe and tracking integration (#1004) (c741071)
10.3.1 (2022-02-08)
Bug Fixes 🐛
- build workaround: exclude range version of safari (#992) (9340a8b)
- build workaround: exclude range version of safari (#994) (6a10f60)
- update dependencies to fix build error (#991) (3254f83)
10.3.0 (2022-02-01)
Bug Fixes 🐛
- @allianz/taly-acl: log an error if ACL rules are corrupted (#981) (f3ff9c6)
Features ✨
- @allianz/taly-common: full-screen spinner with text label (#978) (7f6971c)
- @allianz/taly-core: allow to add validators to form array items (#979) (b3d2558)
- @allianz/taly-schematics: add optional preventClickNavigation flag for navigation (#972) (0b414db)
- @allianz/taly-schematics: disable inlineCritical optimization for web components (#976) (97fc208)
10.2.0 (2022-01-25)
Bug Fixes 🐛
Documentation 📚
- add requirements for hosting applications to contain web comps (#970) (ab4679e)
Features ✨
- @allianz/taly-schematics: add an extract-i18n architect to generate-workspace-app (#973) (32f1145)
- @allianz/taly-schematics: remove what-input dependency (#977) (eb40c7c)
10.1.0 (2022-01-18)
Features ✨
- @allianz/taly-builders: add 'generate' builder that generates workspace applications (#960) (33f6958)
Bug Fixes 🐛
- @allianz/taly-common: don't throw error in location strategies if APP_BASE_HREF is not set (#958) (97b6d87)
- @allianz/taly-common: remove retail and expert layout startup flickering (#961) (8529dfa)
- @allianz/taly-common: use fallback for APP_BASE_HREF in web component location strategies (#962) (cbf3cf7)
10.0.0 (2022-01-11)
⚠️ BREAKING CHANGES
- @allianz/taly-acl/angular:
AclTagHintComponent
: We removed the showDetails
input as well as the method toggleDetails()
and the getter for showDetailsCalculated
.
AclTagDirective
: We removed the property hintComponentInstance
, the hintExpanded
input, and the attachAclTagHint()
method. We renamed the property inspectTagComponentViewRef
to aclTagHintComponentRef
.
AclInspectorComponent
: We removed the aclExpandHintCheckboxControl
property.
AclInspectorService
: We removed the expandAclHints$
property.
Bug Fixes 🐛
- @allianz/taly-acl: destroy hidden ACL resources instead of only detaching them (#942) (9048f48)
- @allianz/taly-builders: fix errors while generating introspection (#944) (6f2fd2d)
- @allianz/taly-common: fix horizontan scrollbar issue #869 (#939) (5db0532)
- @allianz/taly-core: fix sidebar duplicate BB issue #867 (#941) (958fa5d)
Documentation 📚
- add documentation for library assets configuration (#943) (f977714)
Features ✨
- @allianz/taly-builders: add deprecation message to journal (#938) (886a243)
- @allianz/taly-builders: extract form properties to introspection.json (#930) (498cdf0)
- @allianz/taly-pfe-connector: allow PFE_STORE_QUERIES in array resources (#946) (e72acb3)
- @allianz/taly-schematics: allow to group BBs in sections (#937) (b9aabfe)
- @allianz/taly-schematics: introduce experimental vertical spacing (#947) (87e3b89)
9.3.0 (2021-12-28)
Features ✨
- @allianz/taly-common: introduce NoopLocationStrategy (#931) (f77c3ec)
- @allianz/taly-schematics: extend add-lib-asset-to-workspace to support workspace-generate (#906) (ce03ca4)
- @allianz/taly-schematics: optionally use NoopLocationStrategy in generated web components (#933) (a5e7390)
Bug Fixes 🐛
- @allianz/taly-core: keep arrays while processing plugin options (#936) (390d2dc), closes #923
- @allianz/taly-core: revert changes to deprecated getDataForPage (#928) (5cd0c56)
9.2.0 (2021-12-21)
Features ✨
- @allianz/taly-schematics: use WebComponentLocationStrategy in generated web components (#900) (5f30335)
9.1.0 (2021-12-14)
Features ✨
- @allianz/taly-common: introduce WebComponentLocationStrategy (#899) (e14ff78)
- @allianz/taly-schematics,@allianz/taly-core: allow to use app env variables in plugin config (#902) (704c836)
9.0.1 (2021-12-07)
Documentation 📚
- all: improve instructions for major version release (#893) (1e174da)
- all: provide table of contents for TALY documentation (#873) (38ec77f)
9.0.0 (2021-11-30)
⚠️ BREAKING CHANGES
@allianz/common: We completely removed @allianz/common/localized-forms
. All the same components, modules, and services are now available at @itmp/common-building-block-components/localized-forms
.
Please switch to the new import paths if you are affected by this change.
@allianz/taly-common/frame: We removed the deprecated functions getFooterConfigFromPagesConfig()
and getNavigationConfigFromPagesConfig()
. There are no replacements.
@allianz/taly-common/frame: We changed the selector for custom header actions in the TALY frame. Previously the container for header actions inside the TALY frame was marked with the attribute role="header-actions"
. This is now the boolean attribute talyFrameHeaderActions
. If you are affected by this please simply replace the old attribute with the new one:
<taly-frame>
<div role="header-actions">...</div>
<!-- old -->
<div talyFrameHeaderActions>...</div>
<!-- new -->
</taly-frame>
Documentation 📚
- all: update examples for app-generation commands (#864) (f01e639)
Bug Fixes 🐛
- common: remove accidental extra margin between frame action buttons (#858) (aa81c92)
- acl: never refresh ACL cache entries that are static (#861) (7267770)
Features ✨
- frame: improve a11y of TALY frame (#855) (107f73c)
- schematics,core: make form validation error messages from "pages.json" translatable (#875) (0e97d5e)
- taly-schematics: option to show work in progress banner (#874) (2216d66)
- taly-schematics: provide translation for footer labels (#852) (9244625)
8.4.0 (2021-11-16)
Features ✨
- builders: generate metadata file for Plugins (#791) (31ff4e5)
- schematics: provide PfeAclExpressionAdapter via schematics (#846) (15589a9)
- taly-schematics: provide translation for navigation step labels (#841) (4af60c2)
8.3.1 (2021-11-09)
8.3.0 (2021-11-02)
Features ✨
- common: browser full-width improvements for header and stage on Retail apps (#828) (98292f8)
- pfe-connector: only show spinner after one second of busyness (#824) (9d69ead)
8.2.0 (2021-10-26)
Bug Fixes 🐛
- common/frame: refine spacing around navigation and content for Expert (#816) (8d1b719)
Features ✨
- oauth: make getIdentityToken part of public API (#817) (9cc8483), closes #812
Documentation 📚
- schematics: make it more clear how to generate Expert apps (#815) (c92710d)
8.1.0 (2021-10-19)
Bug Fixes 🐛
- schematics: use app-name as package name for generate-app schematic (#806) (6938886)
- schematics: use proper font-size and font-weight for expert page title (#804) (4a017e0), closes #802
Features ✨
- schematics: re-use existing NgZone in web components (#808) (5b581fb)
8.0.0 (2021-10-13)
With this release we upgraded TALY and the generated applications to Angular 12 🎉
We also introduced a few breaking changes. Please see the list below to see if you are affected.
⚠️ BREAKING CHANGES
- TALY is now on Angular 12 🎉
- @allianz/taly-common: We removed the deprecated
NormalizeUrlDirective
. Please switch to using the NormalizeUrlPipe
instead.
- @allianz/taly-oauth:
OauthService.refreshTokenIfRequired()
now always returns a Promise
that resolves to undefined
.
- @allianz/taly-oauth:
OauthModule.forRoot()
now expects an object with a property configurations
that holds an array of configurations.
BEFORE: it was possible to pass configurations like so:imports: [
// single configuration
OauthModule.forRoot({ name: 'apigee', clientId: '...', ... }),
// multiple configurations
OauthModule.forRoot([
{ name: 'apigee', clientId: '...', ... },
{ name: 'other', clientId: '...', ... }
])
]
AFTER: It is now required to pass an object
that contains the configurations
(always as an array, even if it's only a single one):imports: [
OauthModule.forRoot({ configurations: [{ name: 'apigee', clientId: '...', ... }] })
]
- @allianz/taly-oauth: We removed support for client secrets. Client secrets were never part of the official PKCE flow and having a client secret was just to support the ApiGee Auth Proxy configuration so far. The Auth Proxy has changed and does not rely on a client secret anymore, so we removed everything related to
client_secret
from the library.
To update your application, simply remove the clientSecret
property from your OauthConfig
.
Bug Fixes 🐛
- localized-forms: load cities for zipcode if bff path provided after zipcode (schema 013) (#780) (1c619da)
Documentation 📚
- oauth: add client state related details to OauthService (#795) (adf5a00)
Features ✨
builders: add support for array type in introspection (#788) (933768b)
core: upgrade to 12th version of angular and ndbx (#759) (73a71a4)
oauth: allow to pass and retrieve client state (#784) (2471341)
oauth: allow to use OauthPfeIntegrationModule as a TALY plugin (#762) (e7619ac)
oauth: defer pending requests if token-refresh is in progress (#785) (94e7e5c)
oauth: remove client secret functionality altogether (#713) (#730) (9f89f2f)
schematics: allow to mark Building Blocks as sticky (#773) (8b83f74)
common: remove deprecated NormalizeUrlDirective (#797) (b4687c8)
7.5.0 (2021-10-05)
Bug Fixes 🐛
- localized-forms: call bff for schema 013 if resources set later (#769) (802ab05)
Features ✨
- oauth: support token retrieval without explicitly naming the oauth config (#756) (0f02358)
- oauth: use refresh token resulting from refresh flow in subsequent refresh calls (#767) (d70cadb)
- schematics: allow to specify plugin packages with secondary entry points (#761) (688dceb)
7.4.0 (2021-09-28)
Features ✨
- oauth: take IdP config into consideration for refreshing tokens from interceptor (#755) (37220f1)
- schematics: provide proper allianz logo based on channel (#758) (c1e2dcc)
7.3.0 (2021-09-21)
Features ✨
- taly-common: add angular pipe for normalizing url (#745) (a860f0e)
- taly-schematics: add page title to generated pages (#733) (68f7603)
7.2.0 (2021-09-14)
Features ✨
- core: always enable next button and mark form controls as touched if clicked (#716) (e1041ec)
- schematics: add prod config to build architect of generated workspace app (#728) (dbf88f9)
7.1.0 (2021-09-07)
Features ✨
- taly-schematics: full-width background for building blocks (#684) (3afc1ea)
Bug Fixes 🐛
- acl-inspector: ignore keypress when text area is focused (#714) (6eed9b7)
- common: remove margin top and bottom when actions are empty (#722) (772340c)
- core: prevent runtime error when plugin validators is "undefined" (#725) (313aa7e)
7.0.0 (2021-08-31)
⚠️ BREAKING CHANGES
Validator plugins
While introducing support for plugins validators, in @allianz/taly-core
we have made some validation functions private, that were exposed by this package till now. We haven't found any usage of them in the outer world, but to be safe we are signalling this as a breaking change. We removed these functions:
collectConfigurationItems
createValidatorsForItem
parseValidationConfiguration
validationFactory
Dates
There have been changes to the way we handle dates in @allianz/taly-core
:
parseNaturalDateString()
so far returned a Date
object. It now returns a string in the format YYYY-MM-DD
.
parseNaturalDateString()
does not take options anymore. If you were passing an options object with either endOfDay
or avoidLeapDaySpill
please remove it.
MIN_YEARS_AGO
validator was removed. Please use MIN_DATE
validator with a natural date string like today-18years
for the same purpose.
HttpClientModule
Multiple imports of the HttpClientModule
in different locations within the injection hierarchy can cause issues with interceptors. To avoid this, the TalyCoreModule
and the OauthModule
don't import the HttpClientModule
anymore. Please ensure that the HttpClientModule
is imported in the AppModule
and that there are no duplicate imports in your app.
TALY-generated applications will already contain this change so you only need to act if you are using the TALY libraries for handcrafted applications.
Channel
With the introduction of the CHANNEL_TOKEN
which is necessary for Building Blocks and several taly components, there are some tasks to take care of.
For generated apps, the CHANNEL_TOKEN
is set automatically in the TalyIntegrationModule
. For other apps using Building Blocks or taly core and common components, you need to provide the token as described above, otherwise CHANNEL.RETAIL
is set as a default.
@allianz/taly-core
:
- The channel (expert vs retail) is now available in the
AbstractBuildingBlock
via channel
property. Therefore, every other property of a BB called channel
needs to be removed. It is not longer necessary to receive the channel via the resources. You can access the channel in a BB by calling this.channel
or using one of the methods: isRetailChannel()
and isExpertChannel()
@allianz/taly-common
:
CHANNEL
imported from @allianz/taly-common
is deleted. It is replaced by CHANNEL
from @allianz/taly-core
. Please search for all places where the channel from the common package is imported and replace it with the one from the core package
The FrameComponent
no longer has the channel
as an input. If you are using <taly-frame>
, please remove the [channel]
property
The ActionsComponent
no longer has the channel
as an input. If you are using <frame-actions-view>
, please remove the [channel]
property
The HeaderComponent
no longer has the channel
as an input. If you are using <frame-header>
, please remove the [channel]
property
The TalyFrameLayoutService
does no longer provide the methods setChannel(value)
, get channel()
and get channel$
. Please remove all calls. The channel is no longer editable during runtime making channel$
obsolete. The channel is now set via CHANNEL_TOKEN
e.g. in the AppModule
or TalyIntegrationModule
of your app:
import { CHANNEL_TOKEN, CHANNEL } from '@allianz/taly-core';
//...
{
provide: CHANNEL_TOKEN,
useValue: CHANNEL.EXPERT
}
If you want to retrieve the channel, you can do this by injecting the token in your component:
import { CHANNEL_TOKEN, CHANNEL } from '@allianz/taly-core';
//...
constructor(@Optional() @Inject(CHANNEL_TOKEN) private _channel) {}
Documentation 📚
- add documentation for web component integration (#692) (b9a7bac)
Bug Fixes 🐛
builders: make journal builder work for components with multiple decorators (#700) (4ddf9a5)
core: do not import the HttpClientModule anymore in the TalyCoreModule (#689) (709ffff)
core: use Day.JS in the NaturalDates and Validations with Months support (#702) (c6ed133)
Features ✨
- core, schematics: add support for validator plugins (#682) (231f0b4)
- core,common,schematics,playground: provide channel via token (#690) (076223f)
- schematics: include the deploy url for web components (#693) (cb26855)
6.3.1 (2021-08-24)
Bug Fixes 🐛
- screenshot-builder: running taly-builders:screeshot in parallel mixes up the images (#688) (bd69a0d)
6.3.0 (2021-08-17)
Bug Fixes 🐛
- common/frame: remove z-index from navigation, add it to content (#675) (2048f24)
Features ✨
- builders: allow to specify build config in generate-and-serve builders (#671) (e982ff9)
- common: add talyNormalizeUrl directive (#681) (1ed27dc)
- schematics: allow to configure webcomponent properties (#674) (300f655)
6.2.0 (2021-08-10)
Documentation 📚
- make compodoc documentation more consistent (#653) (cb1d644)
Bug Fixes 🐛
- common/frame: make horizontal navigation not sticky (#664) (19536e6)
- remove maxwidth from the modal dialog notification grid, which caused a min width (#655) (5c5f3aa)
Features ✨
- schematics: allow custom assets to overwrite default ones (#659) (38e5b9b)
- schematics: integrate custom frame header actions (#648) (ef66ef0)
- schematics: integrate web component target in workspace-generate schematics (#665) (a6e0936)
- schematis: produce localized web component bundles (#662) (114730f)
6.1.0 (2021-08-03)
Features ✨
- common/frame: allow custom header actions (#645) (a64af01)
Bug Fixes 🐛
- frame: remove grid gap from taly frame (#647) (27f5411)
- frame: set the frame grid width minimum to a fixed 320px for the stacked layout (#646) (f856be3)
Documentation 📚
- acl: add an example for an acl.yml file (#640) (67aba8b)
- extend frame error message feature description a little bit (#643) (c166498)
- schematics,builders,development: organise schematics and development docs (#610) (07cb1e5)
- schematics: remove confusion about existence of TALY plugin packages (#650) (4e88c4f)
6.0.2 (2021-07-27)
Bug Fixes 🐛
- use full width grid (col-12) for retail applications (#642) (38856f2)
6.0.1 (2021-07-27)
6.0.0 (2021-07-22)
⚠️ BREAKING CHANGES
Updates to pfe state resources are now also triggered when a value in the state
changes to undefined
.
Before this change, only value changes would trigger an update. When the value changed to
undefined
in the state, no update was triggered.
Effect of this change on building blocks: It can now happen that the setResources()
method is
updated with undefined
values for PFE_STORE_QUERY
values.
This should actually not require any code changes in the building blocks, as the previous behavior
was to initialize the setResources()
with null
for undefined
values in the state.
That means, building blocks should already be used to getting undefined
values there.
Nevertheless, it is recommended to double check for that.
It is now an error if your app specifies more than 7 navigation steps. If you don't have "navigation sections" specified in your pages.json
then each page in your pages.json
results in its individual "navigation step". If you encounter this error chances are that you can fix it by adding "navigation sections".
Here you can find more documentation about the TALY frame and how to configure navigation sections:
https://taly.frameworks.allianz.io/additional-documentation/app-configuration/common-layout-configuration.html#navigation-sections
Features ✨
- customer journey module integration (#604) (5f01985)
- schematics: add acl defaults during app generation (#617) (0321b23)
- schematics: introduce plugin system (#612) (582c15f)
Documentation 📚
- schematics: refine plugin documentation (#623) (4301b01)
Bug Fixes 🐛
- replace the windows paths in the journal schematics test with po… (#625) (f880327)
- schematics: get acl defaults from existing root workspace in case of skipInstall flag (#618) (1c6f05f)
- schematics: ignore building blocks without journal data during acl defaults collection (#616) (5a5d678)
- schematics: more intelligent search for library journals for ACL defaults (#621) (7a0a4de)
- trigger building block resource updates for undefined values in… (#607) (0386aa4), closes #609
- turn warnings about too many navigation steps into errors (#614) (3ed4dc9)
5.3.3 (2021-07-20)
Bug Fixes 🐛
- deployment of compodoc documentation. Typescript was missing (#606) (3306a34)
- schematics tests under windows (#600) (ac6ca71)
5.3.2 (2021-07-13)
Documentation 📚
5.3.1 (2021-07-06)
5.3.0 (2021-07-06)
Bug Fixes 🐛
- common/frame: set the z-index of the frame-content to 0 (#580) (7dd0032), closes #579
- taly-schematics: make spinner option configurable via pages.json (#575) (c7c2ae2)
Features ✨
- common-localized-forms: adapt schema 013 (#556) (c596fa1)
- common/frame: adjust frame content padding on narrow screens (#577) (3a53430)
- schematics: add experiment to add acl defaults in generate-app apps (#576) (2047fdc)
- schematics: add experiment to add acl defaults in workspace-generate apps (#578) (3a29f1c)
- schematics: use LIGHT style as default for retail panels (#582) (6a3293d)
- taly-schematics: webcomponent target environment for generated apps ( experimental ) (#572) (e2716ab)
Documentation 📚
- acl: add some high-level acl documentation (#581) (85e25d5)
- schematics: add app-generation documentation (#585) (c0cd109)
5.2.0 (2021-06-29)
Bug Fixes 🐛
- schematics: add scoped registries to generated .npmrc file (#566) (924f666)
Features ✨
- acl,core,schematics: allow to specify defaults for acl resources (#529) (ba7674a)
- schematics: allow to collect acl defaults from local libraries (#567) (0c73450)
Documentation 📚
- common/frame: update custom footer and header templates (#568) (b6081d2), closes #534
5.1.1 (2021-06-23)
Bug Fixes 🐛
- acl: update filtrex to include fix for webpack builds (#564) (c3b061e)
- taly-builders,taly-schematics: remove 'global' from required attributes for journal markdown validator (#563) (798c15c)
5.1.0 (2021-06-22)
Bug Fixes 🐛
- schematics: use correct existing dependency in warning message (#551) (5e7fdcc)
Features ✨
- common-localized-forms: preselect country name dropdown by value (#527) (56857c5)
- common-localized-forms: provide possibility for different layouts (#541) (dfdac2b)
- common/frame: remove placeholder text from mobile navigation (#545) (830fbbf)
- oauth: add logout support to oauth service & pfe integration (#540) (3fd4e96)
- schematics: install peer dependencies of building block libraries (#538) (5e7d21f)
- taly-builders: add linting for building block metadata (#533) (84c7452)
5.0.1 (2021-06-15)
Documentation 📚
5.0.0 (2021-06-10)
This major release mostly consists of a new secondary entry point in the @allianz/taly-oauth
library: we moved the OauthPfeIntegrationModule
to the entry point @allianz/taly-oauth/pfe
to remove the dependency to @allianz/ngx-pfe
from the main library. It is now possible to use @allianz/taly-oauth
without any PFE dependency.
⚠️ BREAKING CHANGES
- oauth: Applications using the
OauthPfeIntegrationModule
now need to import the module from @allianz/taly-oauth/pfe
. So instead of
import { OauthPfeIntegrationModule } from '@allianz/taly-oauth';
change the import to
import { OauthPfeIntegrationModule } from '@allianz/taly-oauth/pfe';
Features ✨
- oauth: move OAuth PFE integration module into secondary entry point (#523) (805916b)
- oauth: remove client secret from authorize request (#522) (86e312f)
4.0.0 (2021-06-09)
We proudly present version 4 of the TALY libraries. This major release contains various fixes, features, and cleanups. There are also a few breaking changes mostly related to @allianz/taly-common
in the ui
and localized-forms
packages. See the below list of breaking changes for more details.
⚠️ BREAKING CHANGES
common/ui: We removed some deprecated features and components that got replaced by the the taly-frame
like the itmp-navigation
and the itmp-expert-header
. By migrating to the taly-frame
you are able to cover all these breaking changes. If you are still using any of the removed features or components and are not (yet) able to use the taly-frame
please consider reaching out to us so we can figure out what's holding you back. For specific components that have been used widespread like the itmp-navigation
we suggest to add this as a local component to your app until you migrated to the taly-frame
.
List of removed components from @allianz/taly-common/ui
:
itmp-navigation
itmp-expert-layout
itmp-expert-header
itmp-footer
itmp-flow-actions
acl: We removed the setContext
method from the AclService
in @allianz/taly-core/angular
. If you were using this method please use setEnvironment('context', value)
instead of setContext(value)
from now on.
oauth: As we introduce the support for multiple IdP configurations in the OAuth library, the injection token for configurations was renamed from OAUTH_CONFIG
to OAUTH_CONFIGURATIONS
. If you explicitly define an OAUTH_CONFIG
in one of your Angular modules, make sure to rename it to OAUTH_CONFIGURATIONS
.
See the OAuth documentation for more details.
common/localized-forms: The static, country independent structure of localized address
and person
form are now enforced with specific types LocalizedAddressSchema
and LocalizedPersonSchema
, both extending LocalizedSchema
.
Therefore this former implicit structure is now made explicit:
LocalizedAddressSchema
:
{
street: LocalizedSchema,
locality: LocalizedSchema,
country: LocalizedSchema
}
LocalizedPersonSchema
:
{
name: LocalizedSchema,
address?: LocalizedAddressSchema
}
Consequently, if you declared your localized address
or person
property with the LocalizedSchema
type, you now have to adopt it accordingly.
Example Before:
export interface MyShopObject {
shopName: string;
manager: LocalizedSchema;
address: LocalizedSchema;
contactData: ContactData;
}
Example After:
export interface MyShopObject {
shopName: string;
manager: LocalizedPersonSchema;
address: LocalizedAddressSchema;
contactData: ContactData;
}
Moreover the respective methods of the LocalizedAddressService
and LocalizedPersonService
now expect an object of type LocalizedAddressSchema
or LocalizedPersonSchema
. Something like localizedAddressService.addressString({ id: '1234' })
won't work anymore. Previously that led to an empty string, now this will be an error detected during type checking.
common/localized-forms: When providing countryOptions
via the resources of the localized address (and person) form the control value for the country name will now be of type DataOption
(instead of string
).
Previously this was true, regardless if the country input was free text or a dropdown:
form.get(['address', 'country']).value === { name: 'GER' };
Now - when providing countryOptions
and thus turning the country name input into a dropdown - this is true:
form.get(['address', 'country']).value === { name: { label: 'Germany', value: 'GER' } };
The methods for creating a string representation of a localized address via the LocalizedAddressService
(addressString(address)
, countryString(address)
) use the label
if the country name is of type DataOption
.
Bug Fixes 🐛
schematics: properly copy assets into generated app (#513) (8c7d6d9)
schematics,common: remove deprecated features from taly workspace (#519) (2340661)
Features ✨
- update ngx-pfe to 25.3.0 (#520) (84c6867)
- common-localized-forms: add LocalizedAddressSchema and LocalizedPersonSchema (#498) (17df2e3)
- common-localized-forms: allow DataOption for country name in all schemas (#496) (18f8068)
- oauth: allow multiple IdP configurations (#484) (bc7bf83)
- schematics: allow to define initial collapsed state of panels (#510) (4e95eaa)
- schematics: allow to specify building blocks that appear in sidebar (#501) (1fcaa77)
- schematics: configure the style of the generated ndbx accordions (#511) (8b08673)
3.5.1 (2021-06-01)
Documentation 📚
Bug Fixes 🐛
- oauth: get auth code preferred from current navigation (#497) (03d6be4)
- routing setup of ngx-pfe (#462) (b92ac37)
- common/frame: lift sticky navigation in front of content (#483) (5f7fa9e), closes #435
3.5.0 (2021-05-25)
Bug Fixes 🐛
- schematics tests expect path handling on Windows (#476) (b64475a)
Features ✨
- extend screenshot builder with withServer and baseHref flags (#482) (44c0784)
3.4.0 (2021-05-20)
Features ✨
Bug Fixes 🐛
- common/frame: only calculate section states if there are sections (#464) (1529533), closes #459
3.3.1 (2021-05-18)
Documentation 📚
3.3.0 (2021-05-11)
Documentation 📚
- taly-builders:screenshot: add documentation to screenshot builder (#447) (f5927e3)
Features ✨
- common-localized-forms: enable dropdown for countries (#453) (5af48d2)
- schematics: add ie11 support for generate-app (#450) (57628b9)
Bug Fixes 🐛
- make local release work under Windows with git bash (#454) (605dfef)
3.2.0 (2021-05-05)
Bug Fixes 🐛
- schematics: replace copyRightText with copyright on pages schema (#444) (a752858)
Features ✨
- acl: allow to set arbitrary environment values (#429) (9c2abd0)
- schematics: set channel in ACL environment (#442) (f2440e4)
3.1.0 (2021-05-04)
Bug Fixes 🐛
- common/frame: expose types of frame config injection tokens (31c5af5)
Features ✨
- common-localized-forms: change form col sizes (#432) (b851ccf)
- common-localized-forms: remove placeholder (#413) (74a2e07)
3.0.0 (2021-04-28)
Say hello to the next version of Taly. This release brings a variety of new features but also some breaking changes. Please read carefully what's changed.
Notable Changes
Taly Frame
💡 Read the taly-frame documentation if you want to use the Taly Frame in your application.
We ship the <taly-frame>
which takes care of everything that happens around your lovely Building Blocks. This includes a Header, the Navigation, the Stage with headline and optional images and of course the Footer. We have also built-in a Sidebar if you need to place content like summaries side-by-side to your content.
The Taly Frame is made available by the @allianz/taly-common
package, starting with this version.
Important: In case your app.component.html
contains the pfe-ndbx-master-page
or itmp-navigation
(with a local pfe-frame
) you should upgrade to the Taly Frame. It has a lot of advantages over the manual template and is maintained by the core team. We deprecated the itmp-navigation
and will remove it with the next version.
Our schematics to generate applications will now use the Taly Frame exclusively, starting with this release.
Code Generation for Developers
💡 Read the schematics documentation if you want to use this feature.
The WUI-Editor uses already our schematics to generate flow-based applications. On the other side, we have many developers who work on flow-applications manually. By design, most of their work is about creating or improving Building Blocks or adjusting configuration files like pfe.json
or pages.json
. Everything that surrounds the Building Blocks like the frame (header, footer or navigation) or the several pages and the application configuration itself needs to be managed manually even though those files should (ideally) not contain any additional business or application logic.
That's why we now offer a developer schematic that you can run as the basis of your development. You provide all required configuration files and register your local Building Block library in your tsconfig. The schematic will watch all involved files and rebuild the entire application, page by page, for every code change. That's almost as fast as developing inside your current Angular application but with the convenience that you don't have to manage the boilerplate around the Building Blocks.
👉 Note: We are fully aware that the current code generation might not be able to generate everything you need. Something like additional services, interceptors, injections on the app.module level. That's why we have an issue opened to collect and discuss your requirements. Check our Missing Code Generation Aspect issue for more details. The goal is to either ship missing things, make them configurable or provide some kind of plugin mechanism, so you can extend our schematic. It's important to formalize anything missing in order to allow the WUI editor to generate your application with our schematics. Help us to make this work in the future ✨
Angular Support
This is the last release with Angular 11. Angular has released the first RC version of its version 12, so expect Taly v4 to be based on Angular 12.
⚠️ BREAKING CHANGES
Generated Applications with ACL on page level
Generated Applications (through our schematics) now include all pages in the ACL hierarchy. This will break your existing policy.txt
content. An ACL resources my-building-block/headline
that is put onto a page my-page
(the page id) will now be identified with the ACL resource my-page/my-building-block/headline
. You either have to prepend the correct page-id/
to every single rule or as a quicker alternative you can insert a wildcard */my-building-block/...
into the beginning to match any page which mimics the previous behavior.
The new ACL tag is not bound to a structural directive, therefore you won't be able to hide entire pages.
In case you maintain an application that is not generated, but you want ACL on the page level (to mimic the generate behavior), you can add the following provider to all of your page components. Swap your-page-id
with the actual page-id
of your page.
providers: [createStaticAclTagProvider('your-page-id')]
PFE upgraded to v25.0.0
All apps using taly are now required to also update to a ngx-pfe version > 25.0.1.
This version also contains other breaking changes, which can be seen in the ngx-pfe changelog
Taly Frame is enabled for all generated applications
The experimental flag with-taly-frame
has been removed and the taly frame will be used for any generated application starting with v3.0.0
of taly. Read the Taly Frame README for more details.
Option changed in pages.json
: schematicOptions
removed
The flags schematicOptions.withFooter
and schematicOptions.withHeader
got removed from the pages.json
. To generate an application without header and footer please use frame.chromeless
from now on. It is not possible anymore to remove only the header or only the footer.
Generate Application (generate-app
) with updated parameters (removed --pagesConfig
etc.)
The Parameters --assets
, --pagesConfig
, --policyPath
& --pfeConfig
from @allianz/taly-schematics:generate-app
have been replaced by --configDirectory
which needs to point to a folder that holds the 4 diffferent input files & folders. This is the expected structure:
config
├── pages.json
├── pfe.json
├── policy.txt
└── assets/
Before:
(four config-related parameters)
yarn schematics @allianz/taly-schematics:generate-app \
--assets=apps/playground/config/assets \
--pagesConfig=apps/playground/config/pages.json \
--policyPath=apps/playground/config/policy.txt \
--pfeConfig=apps/playground/config/pfe.json
After)
(one config-related parameter)
yarn schematics @allianz/taly-schematics:generate-app \
--configDirectory=apps/playground/config
In addition, we changed the format of the env file that can be passed via envPath
to the schematics. Before it was a json
format, now it's a plain text file with the dotenv
format (A=B
)
BFF=http://...
LANGUAGE=EN
2.4.1 (2021-04-22)
Bug Fixes 🐛
- builders: introspection always creates the output file (#375) (d515aa6)
2.4.0 (2021-04-20)
Documentation 📚
- frame: add first version of the documentation (#340) (a82756a)
Features ✨
- frame: only show stage if it has data (#349) (cae89b1)
- schematics: enable taly frame experiment in workspace-generate schematic (#345) (c43c295)
Bug Fixes 🐛
- schematics: add missing typescript dependency (#363) (9f53ab9)
- taly-common: set frame width from ndbx --grid-max-width (#358) (6020dd2)
- taly-schematics: bind channel and title properly while generating application (#356) (f822648)
2.3.0 (2021-04-13)
Bug Fixes 🐛
- common-localized-forms: remove formGroupPath in validationMap for dynamically added components (#342) (bba1883)
- taly-core: handle leap years in natural date parsing (#320) (9c49a81)
Features ✨
- switch to the pfe flow config token instead of the custom service (#305) (6edd12f)
- schematics: allow to copy
config/assets
into generated app (#319) (57b2d8d)
- schematics: author and generate taly page data (#326) (a2e68c3)
2.2.0 (2021-04-06)
Features ✨
- common: make
taly-frame
available (experimental) (#304) (a7da64d)
- schematics: support with-taly-frame experimental flag in generate-app (#314) (dea9015)
Bug Fixes 🐛
- common-localized-forms: rename formGroupName input to formGroupPath (#317) (2392437)
- frame: restrict max-width to 1600px (#323) (46c2e58)
2.1.0 (2021-03-30)
Bug Fixes 🐛
- builders: introspection unit tests that rely on memfs (#300) (a9ad924)
- schematics: jest mock path in the add dependencies schematics test (#299) (b626ffe)
- taly-schematics: add ndbx compatibility css (#301) (309104a)
- make generate-workspace-app workflow work in Windows (#287) (f4bcf01)
Features ✨
- frame: provide sidebar functionality (#276) (fb78fca)
- journal: output
label
for each given lob value (#308) (c7b27f0)
- playground: switch theme based on selected channel (#293) (7f3f992)
- schematics: add experimental support for page level acl (7a5b5b4)
2.0.1 (2021-03-23)
2.0.0 (2021-03-19)
⚠️ BREAKING CHANGES
core: A change of the constructor signature PFEBuildingBlockPage
will affect any page component that extends from PFEBuildingBlockPage
plus overrides the constructor. The constructor had two arguments before (PfeBusinessService
& BuildingBlockMetaService
) where it's only one now (Injector
). Please adjust your overridden constructors. Inject the Injector (@Inject(Injector) injector: Injector
) and pass it to the parent (super(injector)
). You can inject & use your own services as before.
Your code before:
export class MyPage extends PFEBuildingBlockPage {
constructor(
pfeBusinessService: PfeBusinessService,
buildingBlockMetaService: BuildingBlockMetaService
myService: MyService
) {
super(pfeBusinessService, buildingBlockMetaService);
myService.works();
}
}
After:
export class MyPage extends PFEBuildingBlockPage {
constructor(
@Inject(Injector) injector: Injector,
myService: MyService
) {
super(injector);
myService.works();
}
}
The TS compiler will help you by referring to this change with an error similar to this:
error TS2554: Expected 1 arguments, but got 2 or as mismatch of the types, which means you can't miss any required change.
schematics:
In the add-building-block
and add-example
schematics we renamed the --package
option to --project
and made the schematics aware of the angular.json to automatically extract the path to the library.
Before:
yarn schematics @allianz/taly-schematics:add-building-block \
--package="@itmp/building-blocks-portfolio-management" \
--path="libs/products/portfolio-management" \
--category="Portfolio Management" \
--name="My new building block"
After:
yarn schematics @allianz/taly-schematics:add-building-block \
--project="@itmp/building-blocks-portfolio-management" \
--category="Portfolio Management" \
--name="My new building block"
refactor
- core: inject Injector in AbstractBuildingBlockPage (#246) (ddf80c3)
Features ✨
- common-localized-forms: change schemas col sizes to fit design requirements (#271) (45e9dfd)
- core: introduce TalyPageDataService (#249) (03b485d)
- taly-common: add option to show custom form control errors (#243) (50684d0)
1.5.0 (2021-03-16)
Features ✨
- builders: add ndbx and env options to generate-and-serve-builder (#233) (8121fb9)
Documentation 📚
- workspace: list all taly projects with a small description (#242) (ebe0823)
Other 🧾
1.4.1 (2021-03-15)
Other 🧾
- bump readme version with image (#239) (3cd5be6)
- git: update git issue templates (97d734d)
- git: update issue template (#238) (ec07d80)
- playground: frame - actions spike (#237) (35686f7)
- playground: navigation & frame spike (#228) (202d91d)
- schematics: add --project extraction to the add-bb and add-example (#230) (76eefd0)
1.4.0 (2021-03-09)
Features ✨
- builders: add generate-and-serve builder (#211) (17a8bd6)
- schematics: add generate-workspace-app schematic (#226) (864930d)
- schematics: add workspace-scaffold and use it in workspace-generate (#227) (1786de0)
- show modal window on navigate back (#223) (b4aa825)
- common-localized-forms: create localized schema 015 (Thailand) (#204) (c9b71cc)
- schematics: add workspace-generate schematic (#220) (ff96402)
- schematics: allow to pass in example state data (#216) (30e500b)
Other 🧾
- schematics: change acltag value for examples to example name (#224) (00cb433)
1.3.0 (2021-03-02)
Features ✨
- common-localized-forms: create localized schema 014 (Singapore) (#168) (17ea281)
- common-localized-forms: fix locales (#185) (1b199f2)
Bug Fixes 🐛
- schematics: make sure to include the partials in the package (#208) (e2b4b15)
- schematics: ouput aclTag (#205) (63a9062)
Other 🧾
- ci: change the slack channel target to jenkins-frontend-messages (#199) (ed7733c)
- playground: provide base layout for the frame spikes (#188) (faab25c)
- schematics: add schematics for adding example (#175) (179c825)
- use npm to install pr title linter dependency (#198) (a3ec341)
1.2.0 (2021-02-23)
Features ✨
- common-localized-forms: create localized schema 013 (Spain) (#22) (3edf10e)
- schematics: allow to use local bb libraries (#172) (1169b19)
Other 🧾
- hide release commits in changelog (#169) (c09078d)
- housekeeping: update dependencies (#149) (600f94d)
- housekeeping: update dependencies (#176) (6519fa0)
- housekeeping: update dependencies to latest versions (#177) (2b86fc9)
- add housekeeping workflow to update dependencies (#148) (6c4ba8b)
- add label "needs triage" to newly created issues (#160) (98b70db)
- add workflow to automatically assign new issues to the project (#157) (2227d77)
- remove add-labels action from new-issues workflow (#167) (8c3b6ab)
- rename input for add-labels action (#165) (3d19778)
- schematics: restructure schematics into folders (#151) (75a09a2)
- workflows: provide label-action with github token (#163) (07b1695)
1.1.1 (2021-02-16)
Other 🧾
- jenkins: avoid multiple prereleases in a row (#142) (74ba8d2)
1.1.0 (2021-02-12)
Documentation 📚
Bug Fixes 🐛
- schematics: allow empty env overrides (#123) (d4fee8e)
- schematics: provide default ndbx theme (#125) (fbda544)
- schematics: use v1 of taly libs in generated apps (#117) (def2530)
Features ✨
- common: delete localized-forms display components (#135) (631338d)
- common-localized-forms: provide string renderer (#95) (670cc7a)
- core: navigation interface for building blocks (#133) (8cfc9cf)
- schematics: use the taly schematics version for taly dependencies (#130) (8034f15)
Other 🧾
- jenkins: actually do automated releases from the pipeline (#132) (817a697)
- jenkins: prevent accidental major releases from Jenkins (#137) (9489e3e)
- jenkins: provide automated release pipeline (#126) (a222f9d)
- playground: allow local generation (#124) (afb6087)
- schematics: make working add bb schematics (#141) (6d1184f)
- assign labels to template-created issues (#138) (ecae51b)
- use public pr title linter (#80) (f0561f9)
1.0.0 (2021-02-05)
This is our first stable release 🥳
We have collected all changes from the beta and kept the last alpha version (1.0.0-alpha.47
) we had in common with the ITMP workspace before we moved the core libraries into this repository to give you some orientation.
Please check MIGRATION.md in order to use the stable release if you are coming from a pre-release version. We also have an issue ⛅️ ITMP to TALY Migration Feedback & Support prepared where you can get our support.
This release now officially supports and requires Angular v11 and NBDX v11.
⚠️ BREAKING CHANGES
Please follow our Migration Guide and you don't need to worry about any of the breaking changes here. They all should get resolved mostly automatically with the node utility @allianz/migrate-to-taly
described in the guide.
We renamed ItmpCoreModule to TalyCoreModule (#88) (4f79950)
'ACL Debugger' renamed to the 'ACL Inspector' (#18) (c3e71dc)
You need to take actions in your project if you are using ACL:
Rename `<acl-debugger>` tag to the `<acl-inspector>`.
Rename AclDebuggerService to the AclInspectorService.
We changed our core package names:
- rename @itmp/acl to @allianz/taly-acl (#69) (19c2812)
- rename @itmp/builders to @allianz/taly-builders (#86) (b273a8e)
- rename @itmp/common to @allianz/taly-common (#83) (80e8d47)
- rename @itmp/itmp-core to @allianz/taly-core (#82) (d21ef07)
- rename @itmp/itmp-schematics to @allianz/taly-schematics (#85) (9d82f34)
- rename @itmp/pfe-connector to @allianz/taly-pfe-connector (#87) (304ec30)
That's it. Nothing more to consider 👍
Bug Fixes 🐛
- taly-builders: expose typings properly (d471a86)
- missing ngx-take-until-destroy dependencies (#77) (4447f23)
- acl playground app fix (93b0daf)
Documentation 📚
Other 🧾
create local consumers of our library (#105) (807baf4)
taly-common: remove obsolete NxIsoDateModule
(#96) (51d0503)
taly-schematics: update generated dependencies, parseJson update (#94) (604d8ab)
rename @itmp/acl to @allianz/taly-acl (#69) (19c2812)
rename @itmp/builders to @allianz/taly-builders (#86) (b273a8e)
rename @itmp/common to @allianz/taly-common (#83) (80e8d47)
rename @itmp/itmp-core to @allianz/taly-core (#82) (d21ef07)
rename @itmp/itmp-schematics to @allianz/taly-schematics (#85) (9d82f34)
rename @itmp/pfe-connector to @allianz/taly-pfe-connector (#87) (304ec30)
rename ItmpCoreModule to TalyCoreModule (#88) (4f79950)
update to latest stable pfe release v24 (#84) (61fc1a0)
workspace: make sure updates in yarn.lock are recognized by nx (#66) (3c7984a)
move libs from /libs/itmp/ to just /libs/ (#45) (18310ce)
update ndbx and ng-aquila to 11.0.0 (#63) (d5e6ef5)
update packages in .versionrc.js (#40) (298600c)
@itmp/acl: remove obsolete dependencies and update contributors (#28) (d508172)
@itmp/itmp-schematics: update dependencies & contributors (#38) (0e02c65)
make builders publishable (#34) (a7b5d99)
@itmp/builders: add missing dependencies and add contributors (#29) (2e9a64b)
@itmp/common: update dependencies and contributors (#30) (c7a97d5)
@itmp/itmp-core: update dependencies & contributors (#27) (11b7027)
jenkins: add release stage (#33) (de81ba9)
don't use sh to run local-registry script (#21) (a99e916)
remove deprecated bff-service (#12) (ffea395)
slim down the issue templates and introduce a support request template (#25) (4ae6228)
pfe-connector: update dependencies & contributors (#26) (15e3883)
remove obsolete content (#4) (1f351c7)
update code ownership file (51c58d5)
upgrade to nx11/ng11 (#8) (c3159ad)
upgrade versions in lib package.jsons (#11) (57cb033)
rename acl debugger to the acl inspector (#18) (c3e71dc)
Build & CI 👷
- provide the taly slack bot (#14) (e7a6579)
- remove obsolete stages from nightly (#3) (8db6237)
- update jenkinsfile for taly requirements (#2) (c3dc7cb)
⚠️ Be aware that the following alpha release was from within the ITMP workspace. We have stripped all content not related to the core libraries.
Other 🧾