@abp/ng.theme.shared 7.0.1 → 7.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/esm2020/extensions/lib/adapters/date-time.adapter.mjs +3 -3
  2. package/esm2020/extensions/lib/components/abstract-actions/abstract-actions.component.mjs +1 -1
  3. package/esm2020/extensions/lib/components/extensible-form/extensible-form-prop.component.mjs +3 -3
  4. package/esm2020/extensions/lib/components/extensible-form/extensible-form.component.mjs +1 -1
  5. package/esm2020/extensions/lib/components/extensible-table/extensible-table.component.mjs +4 -4
  6. package/esm2020/extensions/lib/components/grid-actions/grid-actions.component.mjs +1 -1
  7. package/esm2020/extensions/lib/components/page-toolbar/page-toolbar.component.mjs +8 -3
  8. package/esm2020/extensions/lib/models/actions.mjs +2 -2
  9. package/esm2020/extensions/lib/models/entity-actions.mjs +2 -2
  10. package/esm2020/extensions/lib/models/entity-props.mjs +13 -6
  11. package/esm2020/extensions/lib/models/form-props.mjs +3 -3
  12. package/esm2020/extensions/lib/models/internal/object-extensions.mjs +1 -1
  13. package/esm2020/extensions/lib/models/props.mjs +1 -1
  14. package/esm2020/extensions/lib/models/toolbar-actions.mjs +1 -1
  15. package/esm2020/extensions/lib/pipes/create-injector.pipe.mjs +2 -2
  16. package/esm2020/extensions/lib/utils/actions.util.mjs +1 -1
  17. package/esm2020/extensions/lib/utils/enum.util.mjs +1 -1
  18. package/esm2020/extensions/lib/utils/form-props.util.mjs +2 -2
  19. package/esm2020/extensions/lib/utils/props.util.mjs +1 -1
  20. package/esm2020/extensions/lib/utils/state.util.mjs +11 -11
  21. package/esm2020/lib/components/breadcrumb/breadcrumb.component.mjs +2 -2
  22. package/esm2020/lib/components/confirmation/confirmation.component.mjs +5 -2
  23. package/esm2020/lib/components/password/password.component.mjs +1 -1
  24. package/esm2020/lib/services/abstract-menu.service.mjs +1 -1
  25. package/esm2020/lib/services/confirmation.service.mjs +1 -1
  26. package/esm2020/lib/tokens/confirmation-icons.token.mjs +2 -1
  27. package/extensions/lib/adapters/date-time.adapter.d.ts +3 -3
  28. package/extensions/lib/components/abstract-actions/abstract-actions.component.d.ts +2 -2
  29. package/extensions/lib/components/extensible-form/extensible-form-prop.component.d.ts +1 -1
  30. package/extensions/lib/components/extensible-table/extensible-table.component.d.ts +1 -1
  31. package/extensions/lib/components/grid-actions/grid-actions.component.d.ts +1 -1
  32. package/extensions/lib/components/page-toolbar/page-toolbar.component.d.ts +5 -2
  33. package/extensions/lib/models/actions.d.ts +6 -5
  34. package/extensions/lib/models/entity-props.d.ts +3 -3
  35. package/extensions/lib/models/form-props.d.ts +2 -2
  36. package/extensions/lib/models/internal/object-extensions.d.ts +1 -1
  37. package/extensions/lib/models/props.d.ts +4 -3
  38. package/extensions/lib/models/toolbar-actions.d.ts +2 -2
  39. package/extensions/lib/tokens/extensions.token.d.ts +1 -1
  40. package/extensions/lib/utils/actions.util.d.ts +1 -1
  41. package/extensions/lib/utils/enum.util.d.ts +2 -2
  42. package/extensions/lib/utils/form-props.util.d.ts +2 -2
  43. package/extensions/lib/utils/props.util.d.ts +3 -2
  44. package/extensions/lib/utils/state.util.d.ts +3 -3
  45. package/fesm2015/abp-ng.theme.shared-extensions.mjs +33 -21
  46. package/fesm2015/abp-ng.theme.shared-extensions.mjs.map +1 -1
  47. package/fesm2015/abp-ng.theme.shared.mjs +5 -1
  48. package/fesm2015/abp-ng.theme.shared.mjs.map +1 -1
  49. package/fesm2020/abp-ng.theme.shared-extensions.mjs +33 -21
  50. package/fesm2020/abp-ng.theme.shared-extensions.mjs.map +1 -1
  51. package/fesm2020/abp-ng.theme.shared.mjs +5 -1
  52. package/fesm2020/abp-ng.theme.shared.mjs.map +1 -1
  53. package/lib/components/confirmation/confirmation.component.d.ts +1 -1
  54. package/lib/components/password/password.component.d.ts +1 -1
  55. package/lib/services/abstract-menu.service.d.ts +2 -1
  56. package/lib/tokens/confirmation-icons.token.d.ts +1 -0
  57. package/package.json +3 -3
@@ -65,4 +65,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
65
65
  type: Injectable,
66
66
  args: [{ providedIn: 'root' }]
67
67
  }], ctorParameters: function () { return [{ type: i1.ContentProjectionService }]; } });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQXFCLG1CQUFtQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hHLE9BQU8sRUFBZ0IsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQWMsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUMxRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7OztBQUd0RCxNQUFNLE9BQU8sbUJBQW1CO0lBVzlCLFlBQW9CLHdCQUFrRDtRQUFsRCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBVHRFLGtCQUFhLEdBQUcsSUFBSSxhQUFhLENBQTBCLENBQUMsQ0FBQyxDQUFDO1FBSTlELFVBQUssR0FBRyxDQUFDLFNBQThCLFlBQVksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDcEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDO0lBRXVFLENBQUM7SUFFbEUsWUFBWTtRQUNsQixJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGNBQWMsQ0FDdkUsbUJBQW1CLENBQUMscUJBQXFCLENBQUMscUJBQXFCLEVBQUU7WUFDL0QsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztTQUNsQixDQUFDLENBQ0gsQ0FBQztRQUVGLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMscUJBQXFCLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDL0QsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUVELElBQUksQ0FDRixPQUEwQixFQUMxQixLQUF3QixFQUN4QixPQUF1QztRQUV2QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELE9BQU8sQ0FDTCxPQUEwQixFQUMxQixLQUF3QixFQUN4QixPQUF1QztRQUV2QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksQ0FDRixPQUEwQixFQUMxQixLQUF3QixFQUN4QixPQUF1QztRQUV2QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELEtBQUssQ0FDSCxPQUEwQixFQUMxQixLQUF3QixFQUN4QixPQUF1QztRQUV2QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELElBQUksQ0FDRixPQUEwQixFQUMxQixLQUF3QixFQUN4QixRQUFnQyxFQUNoQyxVQUFVLEVBQW1DO1FBRTdDLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCO1lBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXJELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1lBQ3RCLE9BQU87WUFDUCxLQUFLO1lBQ0wsUUFBUSxFQUFFLFFBQVEsSUFBSSxTQUFTO1lBQy9CLE9BQU87U0FDUixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDN0IsTUFBTSxFQUFFLFdBQVcsR0FBRyxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDdkMsSUFBSSxXQUFXO1lBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXZDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRU8sY0FBYztRQUNwQixTQUFTLENBQWdCLFFBQVEsRUFBRSxPQUFPLENBQUM7YUFDeEMsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQ3ZCLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFDakIsTUFBTSxDQUFDLENBQUMsR0FBa0IsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLEtBQUssUUFBUSxDQUFDLENBQzVEO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7Z0hBMUZVLG1CQUFtQjtvSEFBbkIsbUJBQW1CLGNBRE4sTUFBTTsyRkFDbkIsbUJBQW1CO2tCQUQvQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRQcm9qZWN0aW9uU2VydmljZSwgTG9jYWxpemF0aW9uUGFyYW0sIFBST0pFQ1RJT05fU1RSQVRFR1kgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRSZWYsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZnJvbUV2ZW50LCBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb25maXJtYXRpb24gfSBmcm9tICcuLi9tb2RlbHMvY29uZmlybWF0aW9uJztcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtYXRpb25TZXJ2aWNlIHtcclxuICBzdGF0dXMkITogU3ViamVjdDxDb25maXJtYXRpb24uU3RhdHVzPjtcclxuICBjb25maXJtYXRpb24kID0gbmV3IFJlcGxheVN1YmplY3Q8Q29uZmlybWF0aW9uLkRpYWxvZ0RhdGE+KDEpO1xyXG5cclxuICBwcml2YXRlIGNvbnRhaW5lckNvbXBvbmVudFJlZiE6IENvbXBvbmVudFJlZjxDb25maXJtYXRpb25Db21wb25lbnQ+O1xyXG5cclxuICBjbGVhciA9IChzdGF0dXM6IENvbmZpcm1hdGlvbi5TdGF0dXMgPSBDb25maXJtYXRpb24uU3RhdHVzLmRpc21pc3MpID0+IHtcclxuICAgIHRoaXMuY29uZmlybWF0aW9uJC5uZXh0KG51bGwpO1xyXG4gICAgdGhpcy5zdGF0dXMkLm5leHQoc3RhdHVzKTtcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbnRlbnRQcm9qZWN0aW9uU2VydmljZTogQ29udGVudFByb2plY3Rpb25TZXJ2aWNlKSB7fVxyXG5cclxuICBwcml2YXRlIHNldENvbnRhaW5lcigpIHtcclxuICAgIHRoaXMuY29udGFpbmVyQ29tcG9uZW50UmVmID0gdGhpcy5jb250ZW50UHJvamVjdGlvblNlcnZpY2UucHJvamVjdENvbnRlbnQoXHJcbiAgICAgIFBST0pFQ1RJT05fU1RSQVRFR1kuQXBwZW5kQ29tcG9uZW50VG9Cb2R5KENvbmZpcm1hdGlvbkNvbXBvbmVudCwge1xyXG4gICAgICAgIGNvbmZpcm1hdGlvbiQ6IHRoaXMuY29uZmlybWF0aW9uJCxcclxuICAgICAgICBjbGVhcjogdGhpcy5jbGVhcixcclxuICAgICAgfSksXHJcbiAgICApO1xyXG5cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmNvbnRhaW5lckNvbXBvbmVudFJlZi5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9LCAwKTtcclxuICB9XHJcblxyXG4gIGluZm8oXHJcbiAgICBtZXNzYWdlOiBMb2NhbGl6YXRpb25QYXJhbSxcclxuICAgIHRpdGxlOiBMb2NhbGl6YXRpb25QYXJhbSxcclxuICAgIG9wdGlvbnM/OiBQYXJ0aWFsPENvbmZpcm1hdGlvbi5PcHRpb25zPixcclxuICApOiBPYnNlcnZhYmxlPENvbmZpcm1hdGlvbi5TdGF0dXM+IHtcclxuICAgIHJldHVybiB0aGlzLnNob3cobWVzc2FnZSwgdGl0bGUsICdpbmZvJywgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBzdWNjZXNzKFxyXG4gICAgbWVzc2FnZTogTG9jYWxpemF0aW9uUGFyYW0sXHJcbiAgICB0aXRsZTogTG9jYWxpemF0aW9uUGFyYW0sXHJcbiAgICBvcHRpb25zPzogUGFydGlhbDxDb25maXJtYXRpb24uT3B0aW9ucz4sXHJcbiAgKTogT2JzZXJ2YWJsZTxDb25maXJtYXRpb24uU3RhdHVzPiB7XHJcbiAgICByZXR1cm4gdGhpcy5zaG93KG1lc3NhZ2UsIHRpdGxlLCAnc3VjY2VzcycsIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgd2FybihcclxuICAgIG1lc3NhZ2U6IExvY2FsaXphdGlvblBhcmFtLFxyXG4gICAgdGl0bGU6IExvY2FsaXphdGlvblBhcmFtLFxyXG4gICAgb3B0aW9ucz86IFBhcnRpYWw8Q29uZmlybWF0aW9uLk9wdGlvbnM+LFxyXG4gICk6IE9ic2VydmFibGU8Q29uZmlybWF0aW9uLlN0YXR1cz4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgJ3dhcm5pbmcnLCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGVycm9yKFxyXG4gICAgbWVzc2FnZTogTG9jYWxpemF0aW9uUGFyYW0sXHJcbiAgICB0aXRsZTogTG9jYWxpemF0aW9uUGFyYW0sXHJcbiAgICBvcHRpb25zPzogUGFydGlhbDxDb25maXJtYXRpb24uT3B0aW9ucz4sXHJcbiAgKTogT2JzZXJ2YWJsZTxDb25maXJtYXRpb24uU3RhdHVzPiB7XHJcbiAgICByZXR1cm4gdGhpcy5zaG93KG1lc3NhZ2UsIHRpdGxlLCAnZXJyb3InLCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHNob3coXHJcbiAgICBtZXNzYWdlOiBMb2NhbGl6YXRpb25QYXJhbSxcclxuICAgIHRpdGxlOiBMb2NhbGl6YXRpb25QYXJhbSxcclxuICAgIHNldmVyaXR5PzogQ29uZmlybWF0aW9uLlNldmVyaXR5LFxyXG4gICAgb3B0aW9ucyA9IHt9IGFzIFBhcnRpYWw8Q29uZmlybWF0aW9uLk9wdGlvbnM+LFxyXG4gICk6IE9ic2VydmFibGU8Q29uZmlybWF0aW9uLlN0YXR1cz4ge1xyXG4gICAgaWYgKCF0aGlzLmNvbnRhaW5lckNvbXBvbmVudFJlZikgdGhpcy5zZXRDb250YWluZXIoKTtcclxuXHJcbiAgICB0aGlzLmNvbmZpcm1hdGlvbiQubmV4dCh7XHJcbiAgICAgIG1lc3NhZ2UsXHJcbiAgICAgIHRpdGxlLFxyXG4gICAgICBzZXZlcml0eTogc2V2ZXJpdHkgfHwgJ25ldXRyYWwnLFxyXG4gICAgICBvcHRpb25zLFxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5zdGF0dXMkID0gbmV3IFN1YmplY3QoKTtcclxuICAgIGNvbnN0IHsgZGlzbWlzc2libGUgPSB0cnVlIH0gPSBvcHRpb25zO1xyXG4gICAgaWYgKGRpc21pc3NpYmxlKSB0aGlzLmxpc3RlblRvRXNjYXBlKCk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzJDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbGlzdGVuVG9Fc2NhcGUoKSB7XHJcbiAgICBmcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4oZG9jdW1lbnQsICdrZXl1cCcpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLnN0YXR1cyQpLFxyXG4gICAgICAgIGRlYm91bmNlVGltZSgxNTApLFxyXG4gICAgICAgIGZpbHRlcigoa2V5OiBLZXlib2FyZEV2ZW50KSA9PiBrZXkgJiYga2V5LmtleSA9PT0gJ0VzY2FwZScpLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY2xlYXIoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy90aGVtZS1zaGFyZWQvc3JjL2xpYi9zZXJ2aWNlcy9jb25maXJtYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQXFCLG1CQUFtQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ2hHLE9BQU8sRUFBZ0IsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxTQUFTLEVBQWMsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUMxRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7OztBQUd0RCxNQUFNLE9BQU8sbUJBQW1CO0lBVzlCLFlBQW9CLHdCQUFrRDtRQUFsRCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBVHRFLGtCQUFhLEdBQUcsSUFBSSxhQUFhLENBQWlDLENBQUMsQ0FBQyxDQUFDO1FBSXJFLFVBQUssR0FBRyxDQUFDLFNBQThCLFlBQVksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDcEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDNUIsQ0FBQyxDQUFDO0lBRXVFLENBQUM7SUFFbEUsWUFBWTtRQUNsQixJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGNBQWMsQ0FDdkUsbUJBQW1CLENBQUMscUJBQXFCLENBQUMscUJBQXFCLEVBQUU7WUFDL0QsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztTQUNsQixDQUFDLENBQ0gsQ0FBQztRQUVGLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMscUJBQXFCLENBQUMsaUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDL0QsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUVELElBQUksQ0FDRixPQUEwQixFQUMxQixLQUF3QixFQUN4QixPQUF1QztRQUV2QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELE9BQU8sQ0FDTCxPQUEwQixFQUMxQixLQUF3QixFQUN4QixPQUF1QztRQUV2QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELElBQUksQ0FDRixPQUEwQixFQUMxQixLQUF3QixFQUN4QixPQUF1QztRQUV2QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELEtBQUssQ0FDSCxPQUEwQixFQUMxQixLQUF3QixFQUN4QixPQUF1QztRQUV2QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELElBQUksQ0FDRixPQUEwQixFQUMxQixLQUF3QixFQUN4QixRQUFnQyxFQUNoQyxVQUFVLEVBQW1DO1FBRTdDLElBQUksQ0FBQyxJQUFJLENBQUMscUJBQXFCO1lBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXJELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO1lBQ3RCLE9BQU87WUFDUCxLQUFLO1lBQ0wsUUFBUSxFQUFFLFFBQVEsSUFBSSxTQUFTO1lBQy9CLE9BQU87U0FDUixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDN0IsTUFBTSxFQUFFLFdBQVcsR0FBRyxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDdkMsSUFBSSxXQUFXO1lBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXZDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRU8sY0FBYztRQUNwQixTQUFTLENBQWdCLFFBQVEsRUFBRSxPQUFPLENBQUM7YUFDeEMsSUFBSSxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQ3ZCLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFDakIsTUFBTSxDQUFDLENBQUMsR0FBa0IsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxHQUFHLEtBQUssUUFBUSxDQUFDLENBQzVEO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7Z0hBMUZVLG1CQUFtQjtvSEFBbkIsbUJBQW1CLGNBRE4sTUFBTTsyRkFDbkIsbUJBQW1CO2tCQUQvQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRQcm9qZWN0aW9uU2VydmljZSwgTG9jYWxpemF0aW9uUGFyYW0sIFBST0pFQ1RJT05fU1RSQVRFR1kgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBDb21wb25lbnRSZWYsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZnJvbUV2ZW50LCBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZmlsdGVyLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvY29uZmlybWF0aW9uL2NvbmZpcm1hdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb25maXJtYXRpb24gfSBmcm9tICcuLi9tb2RlbHMvY29uZmlybWF0aW9uJztcclxuXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtYXRpb25TZXJ2aWNlIHtcclxuICBzdGF0dXMkITogU3ViamVjdDxDb25maXJtYXRpb24uU3RhdHVzPjtcclxuICBjb25maXJtYXRpb24kID0gbmV3IFJlcGxheVN1YmplY3Q8Q29uZmlybWF0aW9uLkRpYWxvZ0RhdGEgfCBudWxsPigxKTtcclxuXHJcbiAgcHJpdmF0ZSBjb250YWluZXJDb21wb25lbnRSZWYhOiBDb21wb25lbnRSZWY8Q29uZmlybWF0aW9uQ29tcG9uZW50PjtcclxuXHJcbiAgY2xlYXIgPSAoc3RhdHVzOiBDb25maXJtYXRpb24uU3RhdHVzID0gQ29uZmlybWF0aW9uLlN0YXR1cy5kaXNtaXNzKSA9PiB7XHJcbiAgICB0aGlzLmNvbmZpcm1hdGlvbiQubmV4dChudWxsKTtcclxuICAgIHRoaXMuc3RhdHVzJC5uZXh0KHN0YXR1cyk7XHJcbiAgfTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjb250ZW50UHJvamVjdGlvblNlcnZpY2U6IENvbnRlbnRQcm9qZWN0aW9uU2VydmljZSkge31cclxuXHJcbiAgcHJpdmF0ZSBzZXRDb250YWluZXIoKSB7XHJcbiAgICB0aGlzLmNvbnRhaW5lckNvbXBvbmVudFJlZiA9IHRoaXMuY29udGVudFByb2plY3Rpb25TZXJ2aWNlLnByb2plY3RDb250ZW50KFxyXG4gICAgICBQUk9KRUNUSU9OX1NUUkFURUdZLkFwcGVuZENvbXBvbmVudFRvQm9keShDb25maXJtYXRpb25Db21wb25lbnQsIHtcclxuICAgICAgICBjb25maXJtYXRpb24kOiB0aGlzLmNvbmZpcm1hdGlvbiQsXHJcbiAgICAgICAgY2xlYXI6IHRoaXMuY2xlYXIsXHJcbiAgICAgIH0pLFxyXG4gICAgKTtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5jb250YWluZXJDb21wb25lbnRSZWYuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSwgMCk7XHJcbiAgfVxyXG5cclxuICBpbmZvKFxyXG4gICAgbWVzc2FnZTogTG9jYWxpemF0aW9uUGFyYW0sXHJcbiAgICB0aXRsZTogTG9jYWxpemF0aW9uUGFyYW0sXHJcbiAgICBvcHRpb25zPzogUGFydGlhbDxDb25maXJtYXRpb24uT3B0aW9ucz4sXHJcbiAgKTogT2JzZXJ2YWJsZTxDb25maXJtYXRpb24uU3RhdHVzPiB7XHJcbiAgICByZXR1cm4gdGhpcy5zaG93KG1lc3NhZ2UsIHRpdGxlLCAnaW5mbycsIG9wdGlvbnMpO1xyXG4gIH1cclxuXHJcbiAgc3VjY2VzcyhcclxuICAgIG1lc3NhZ2U6IExvY2FsaXphdGlvblBhcmFtLFxyXG4gICAgdGl0bGU6IExvY2FsaXphdGlvblBhcmFtLFxyXG4gICAgb3B0aW9ucz86IFBhcnRpYWw8Q29uZmlybWF0aW9uLk9wdGlvbnM+LFxyXG4gICk6IE9ic2VydmFibGU8Q29uZmlybWF0aW9uLlN0YXR1cz4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgJ3N1Y2Nlc3MnLCBvcHRpb25zKTtcclxuICB9XHJcblxyXG4gIHdhcm4oXHJcbiAgICBtZXNzYWdlOiBMb2NhbGl6YXRpb25QYXJhbSxcclxuICAgIHRpdGxlOiBMb2NhbGl6YXRpb25QYXJhbSxcclxuICAgIG9wdGlvbnM/OiBQYXJ0aWFsPENvbmZpcm1hdGlvbi5PcHRpb25zPixcclxuICApOiBPYnNlcnZhYmxlPENvbmZpcm1hdGlvbi5TdGF0dXM+IHtcclxuICAgIHJldHVybiB0aGlzLnNob3cobWVzc2FnZSwgdGl0bGUsICd3YXJuaW5nJywgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBlcnJvcihcclxuICAgIG1lc3NhZ2U6IExvY2FsaXphdGlvblBhcmFtLFxyXG4gICAgdGl0bGU6IExvY2FsaXphdGlvblBhcmFtLFxyXG4gICAgb3B0aW9ucz86IFBhcnRpYWw8Q29uZmlybWF0aW9uLk9wdGlvbnM+LFxyXG4gICk6IE9ic2VydmFibGU8Q29uZmlybWF0aW9uLlN0YXR1cz4ge1xyXG4gICAgcmV0dXJuIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgJ2Vycm9yJywgb3B0aW9ucyk7XHJcbiAgfVxyXG5cclxuICBzaG93KFxyXG4gICAgbWVzc2FnZTogTG9jYWxpemF0aW9uUGFyYW0sXHJcbiAgICB0aXRsZTogTG9jYWxpemF0aW9uUGFyYW0sXHJcbiAgICBzZXZlcml0eT86IENvbmZpcm1hdGlvbi5TZXZlcml0eSxcclxuICAgIG9wdGlvbnMgPSB7fSBhcyBQYXJ0aWFsPENvbmZpcm1hdGlvbi5PcHRpb25zPixcclxuICApOiBPYnNlcnZhYmxlPENvbmZpcm1hdGlvbi5TdGF0dXM+IHtcclxuICAgIGlmICghdGhpcy5jb250YWluZXJDb21wb25lbnRSZWYpIHRoaXMuc2V0Q29udGFpbmVyKCk7XHJcblxyXG4gICAgdGhpcy5jb25maXJtYXRpb24kLm5leHQoe1xyXG4gICAgICBtZXNzYWdlLFxyXG4gICAgICB0aXRsZSxcclxuICAgICAgc2V2ZXJpdHk6IHNldmVyaXR5IHx8ICduZXV0cmFsJyxcclxuICAgICAgb3B0aW9ucyxcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuc3RhdHVzJCA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgICBjb25zdCB7IGRpc21pc3NpYmxlID0gdHJ1ZSB9ID0gb3B0aW9ucztcclxuICAgIGlmIChkaXNtaXNzaWJsZSkgdGhpcy5saXN0ZW5Ub0VzY2FwZSgpO1xyXG5cclxuICAgIHJldHVybiB0aGlzLnN0YXR1cyQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxpc3RlblRvRXNjYXBlKCkge1xyXG4gICAgZnJvbUV2ZW50PEtleWJvYXJkRXZlbnQ+KGRvY3VtZW50LCAna2V5dXAnKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5zdGF0dXMkKSxcclxuICAgICAgICBkZWJvdW5jZVRpbWUoMTUwKSxcclxuICAgICAgICBmaWx0ZXIoKGtleTogS2V5Ym9hcmRFdmVudCkgPT4ga2V5ICYmIGtleS5rZXkgPT09ICdFc2NhcGUnKSxcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmNsZWFyKCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -6,5 +6,6 @@ export const DEFAULT_CONFIRMATION_ICONS = {
6
6
  warning: 'fa fa-exclamation-triangle',
7
7
  error: 'fa fa-times-circle',
8
8
  default: 'fa fa-question-circle',
9
+ neutral: '',
9
10
  };
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLWljb25zLnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGhlbWUtc2hhcmVkL3NyYy9saWIvdG9rZW5zL2NvbmZpcm1hdGlvbi1pY29ucy50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBVS9DLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUNsRCxvQkFBb0IsQ0FDckIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFzQjtJQUMzRCxJQUFJLEVBQUUsbUJBQW1CO0lBQ3pCLE9BQU8sRUFBRSxvQkFBb0I7SUFDN0IsT0FBTyxFQUFFLDRCQUE0QjtJQUNyQyxLQUFLLEVBQUUsb0JBQW9CO0lBQzNCLE9BQU8sRUFBRSx1QkFBdUI7Q0FDakMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpcm1hdGlvbkljb25zIHtcclxuICBpbmZvOiBzdHJpbmc7XHJcbiAgc3VjY2Vzczogc3RyaW5nO1xyXG4gIHdhcm5pbmc6IHN0cmluZztcclxuICBlcnJvcjogc3RyaW5nO1xyXG4gIGRlZmF1bHQ6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IENPTkZJUk1BVElPTl9JQ09OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxQYXJ0aWFsPENvbmZpcm1hdGlvbkljb25zPj4oXHJcbiAgJ0NPTkZJUk1BVElPTl9JQ09OUycsXHJcbik7XHJcblxyXG5leHBvcnQgY29uc3QgREVGQVVMVF9DT05GSVJNQVRJT05fSUNPTlM6IENvbmZpcm1hdGlvbkljb25zID0ge1xyXG4gIGluZm86ICdmYSBmYS1pbmZvLWNpcmNsZScsXHJcbiAgc3VjY2VzczogJ2ZhIGZhLWNoZWNrLWNpcmNsZScsXHJcbiAgd2FybmluZzogJ2ZhIGZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlJyxcclxuICBlcnJvcjogJ2ZhIGZhLXRpbWVzLWNpcmNsZScsXHJcbiAgZGVmYXVsdDogJ2ZhIGZhLXF1ZXN0aW9uLWNpcmNsZScsXHJcbn07XHJcbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybWF0aW9uLWljb25zLnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvdGhlbWUtc2hhcmVkL3NyYy9saWIvdG9rZW5zL2NvbmZpcm1hdGlvbi1pY29ucy50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBVy9DLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUNsRCxvQkFBb0IsQ0FDckIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFzQjtJQUMzRCxJQUFJLEVBQUUsbUJBQW1CO0lBQ3pCLE9BQU8sRUFBRSxvQkFBb0I7SUFDN0IsT0FBTyxFQUFFLDRCQUE0QjtJQUNyQyxLQUFLLEVBQUUsb0JBQW9CO0lBQzNCLE9BQU8sRUFBRSx1QkFBdUI7SUFDaEMsT0FBTyxFQUFFLEVBQUU7Q0FDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlybWF0aW9uSWNvbnMge1xyXG4gIGluZm86IHN0cmluZztcclxuICBzdWNjZXNzOiBzdHJpbmc7XHJcbiAgd2FybmluZzogc3RyaW5nO1xyXG4gIGVycm9yOiBzdHJpbmc7XHJcbiAgZGVmYXVsdDogc3RyaW5nO1xyXG4gIG5ldXRyYWw6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IENPTkZJUk1BVElPTl9JQ09OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxQYXJ0aWFsPENvbmZpcm1hdGlvbkljb25zPj4oXHJcbiAgJ0NPTkZJUk1BVElPTl9JQ09OUycsXHJcbik7XHJcblxyXG5leHBvcnQgY29uc3QgREVGQVVMVF9DT05GSVJNQVRJT05fSUNPTlM6IENvbmZpcm1hdGlvbkljb25zID0ge1xyXG4gIGluZm86ICdmYSBmYS1pbmZvLWNpcmNsZScsXHJcbiAgc3VjY2VzczogJ2ZhIGZhLWNoZWNrLWNpcmNsZScsXHJcbiAgd2FybmluZzogJ2ZhIGZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlJyxcclxuICBlcnJvcjogJ2ZhIGZhLXRpbWVzLWNpcmNsZScsXHJcbiAgZGVmYXVsdDogJ2ZhIGZhLXF1ZXN0aW9uLWNpcmNsZScsXHJcbiAgbmV1dHJhbDogJycsXHJcbn07XHJcbiJdfQ==
@@ -1,9 +1,9 @@
1
1
  import { NgbDateStruct, NgbTimeStruct } from '@ng-bootstrap/ng-bootstrap';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class DateTimeAdapter {
4
- value: NgbDateTimeStruct;
5
- fromModel(value: string | Date): NgbDateTimeStruct | null;
6
- toModel(value: NgbDateTimeStruct | null): string;
4
+ value: Partial<NgbDateTimeStruct>;
5
+ fromModel(value: string | Date): Partial<NgbDateTimeStruct> | null;
6
+ toModel(value: Partial<NgbDateTimeStruct> | null): string;
7
7
  static ɵfac: i0.ɵɵFactoryDeclaration<DateTimeAdapter, never>;
8
8
  static ɵprov: i0.ɵɵInjectableDeclaration<DateTimeAdapter>;
9
9
  }
@@ -1,8 +1,8 @@
1
1
  import { Injector } from '@angular/core';
2
- import { ActionData, ActionList } from '../../models/actions';
2
+ import { ActionData, ActionList, InferredAction } from '../../models/actions';
3
3
  import { InferredData, InferredRecord } from '../../models/toolbar-actions';
4
4
  import * as i0 from "@angular/core";
5
- export declare abstract class AbstractActionsComponent<L extends ActionList<any>> extends ActionData<InferredRecord<L>> {
5
+ export declare abstract class AbstractActionsComponent<L extends ActionList<any, InferredAction<L>>> extends ActionData<InferredRecord<L>> {
6
6
  readonly actionList: L;
7
7
  readonly getInjected: InferredData<L>['getInjected'];
8
8
  record: InferredData<L>['record'];
@@ -15,7 +15,7 @@ export declare class ExtensibleFormPropComponent implements OnChanges, AfterView
15
15
  prop: FormProp;
16
16
  first?: boolean;
17
17
  private fieldRef;
18
- injectorForCustomComponent: Injector;
18
+ injectorForCustomComponent?: Injector;
19
19
  asterisk: string;
20
20
  containerClassName: string;
21
21
  options$: Observable<ABP.Option<any>[]>;
@@ -17,7 +17,7 @@ export declare class ExtensibleTableComponent<R = any> implements OnChanges {
17
17
  list: ListService;
18
18
  recordsTotal: number;
19
19
  set actionsColumnWidth(width: number);
20
- actionsTemplate: TemplateRef<any>;
20
+ actionsTemplate?: TemplateRef<any>;
21
21
  tableActivate: EventEmitter<any>;
22
22
  getInjected: <T>(token: Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: InjectFlags) => T;
23
23
  hasAtLeastOnePermittedAction: boolean;
@@ -4,7 +4,7 @@ import { AbstractActionsComponent } from '../abstract-actions/abstract-actions.c
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class GridActionsComponent<R = any> extends AbstractActionsComponent<EntityActionList<R>> {
6
6
  icon: string;
7
- readonly index: number;
7
+ readonly index?: number;
8
8
  text: string;
9
9
  readonly trackByFn: TrackByFunction<EntityAction<R>>;
10
10
  constructor(injector: Injector);
@@ -1,5 +1,5 @@
1
1
  import { Injector, TrackByFunction } from '@angular/core';
2
- import { HasCreateInjectorPipe, ToolbarActionList, ToolbarComponent } from '../../models/toolbar-actions';
2
+ import { HasCreateInjectorPipe, ToolbarAction, ToolbarActionDefault, ToolbarActionList, ToolbarComponent } from '../../models/toolbar-actions';
3
3
  import { AbstractActionsComponent } from '../abstract-actions/abstract-actions.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class PageToolbarComponent<R = any> extends AbstractActionsComponent<ToolbarActionList<R>> implements HasCreateInjectorPipe<R> {
@@ -8,10 +8,13 @@ export declare class PageToolbarComponent<R = any> extends AbstractActionsCompon
8
8
  getData: () => {
9
9
  readonly index?: number;
10
10
  readonly record: R;
11
- readonly getInjected: <T>(token: import("@angular/core").Type<T> | import("@angular/core").InjectionToken<T>, notFoundValue?: T, flags?: import("@angular/core").InjectFlags) => T;
11
+ readonly getInjected: <T>(token: import("@angular/core").Type<T> | import("@angular/core").InjectionToken<T>, notFoundValue?: T, flags?: import("@angular/core").InjectOptions | import("@angular/core").InjectFlags) => T;
12
12
  };
13
13
  readonly trackByFn: TrackByFunction<ToolbarComponent<R>>;
14
14
  constructor(injector: Injector);
15
+ asToolbarAction(value: ToolbarActionDefault): {
16
+ value: ToolbarAction;
17
+ };
15
18
  static ɵfac: i0.ɵɵFactoryDeclaration<PageToolbarComponent<any>, never>;
16
19
  static ɵcmp: i0.ɵɵComponentDeclaration<PageToolbarComponent<any>, "abp-page-toolbar", ["abpPageToolbar"], {}, {}, never, never, false, never>;
17
20
  }
@@ -1,10 +1,10 @@
1
1
  import { LinkedList } from '@abp/utils';
2
- import { InjectFlags, InjectionToken, Type } from '@angular/core';
2
+ import { InjectFlags, InjectionToken, InjectOptions, Type } from '@angular/core';
3
3
  import { O } from 'ts-toolbelt';
4
4
  export declare abstract class ActionList<R = any, A = Action<R>> extends LinkedList<A> {
5
5
  }
6
6
  export declare abstract class ActionData<R = any> {
7
- abstract getInjected: <T>(token: Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: InjectFlags) => T;
7
+ abstract getInjected: <T>(token: Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: InjectOptions | InjectFlags) => T;
8
8
  index?: number;
9
9
  abstract record: R;
10
10
  get data(): ReadonlyActionData<R>;
@@ -23,7 +23,7 @@ export declare abstract class ActionsFactory<C extends Actions<any>> {
23
23
  private contributorCallbacks;
24
24
  get(name: string): C;
25
25
  }
26
- export declare abstract class Actions<L extends ActionList> {
26
+ export declare abstract class Actions<L extends ActionList<any, InferredAction<L>>> {
27
27
  private readonly callbackList;
28
28
  protected abstract _ctor: Type<L>;
29
29
  get actions(): L;
@@ -31,5 +31,6 @@ export declare abstract class Actions<L extends ActionList> {
31
31
  addContributor(contributeCallback: ActionContributorCallback<L>): void;
32
32
  clearContributors(): void;
33
33
  }
34
- export declare type ActionContributorCallbacks<L extends ActionList<any>> = Record<string, ActionContributorCallback<L>[]>;
35
- export declare type ActionContributorCallback<L extends ActionList<any>> = (actionList: L) => any;
34
+ export declare type ActionContributorCallbacks<L extends ActionList<any, InferredAction<L>>> = Record<string, ActionContributorCallback<L>[]>;
35
+ export declare type ActionContributorCallback<L extends ActionList<any, InferredAction<L>>> = (actionList: L) => any;
36
+ export declare type InferredAction<T> = T extends ActionList<any, infer U> ? U : T;
@@ -16,9 +16,9 @@ export declare class EntityProp<R = any> extends Prop<R> {
16
16
  readonly columnWidth: number | undefined;
17
17
  readonly sortable: boolean;
18
18
  readonly valueResolver: PropCallback<R, Observable<any>>;
19
- readonly action: ActionCallback<R>;
20
- readonly component: Type<any>;
21
- readonly enumList: Array<ABP.Option<any>>;
19
+ readonly action?: ActionCallback<R>;
20
+ readonly component?: Type<any>;
21
+ readonly enumList?: Array<ABP.Option<any>>;
22
22
  constructor(options: EntityPropOptions<R>);
23
23
  static create<R = any>(options: EntityPropOptions<R>): EntityProp<R>;
24
24
  static createMany<R = any>(arrayOfOptions: EntityPropOptions<R>[]): EntityProp<R>[];
@@ -6,7 +6,7 @@ import { O } from 'ts-toolbelt';
6
6
  import { Prop, PropCallback, PropContributorCallback, PropContributorCallbacks, PropData, PropDisplayTextResolver, PropList, PropPredicate, Props, PropsFactory } from './props';
7
7
  export declare class FormPropList<R = any> extends PropList<R, FormProp<R>> {
8
8
  }
9
- export declare class FormProps<R = any> extends Props<FormPropList<R>> {
9
+ export declare class FormProps<R = any> extends Props<PropList<R, FormProp<R>>> {
10
10
  protected _ctor: Type<FormPropList<R>>;
11
11
  }
12
12
  export interface FormPropGroup {
@@ -18,7 +18,7 @@ export declare class GroupedFormPropList<R = any> {
18
18
  addItem(item: FormProp<R>): void;
19
19
  }
20
20
  export interface GroupedFormPropItem {
21
- group: FormPropGroup;
21
+ group?: FormPropGroup;
22
22
  formPropList: FormPropList;
23
23
  }
24
24
  export declare class CreateFormPropsFactory<R = any> extends PropsFactory<FormProps<R>> {
@@ -2,7 +2,7 @@ import { ePropType } from '../../enums/props.enum';
2
2
  import { EntityPropList } from '../entity-props';
3
3
  import { FormPropList } from '../form-props';
4
4
  import { PropContributorCallbacks } from '../props';
5
- export declare type DisplayNameGeneratorFn = (displayName: LocalizableStringDto, fallback: LocalizableStringDto) => string;
5
+ export declare type DisplayNameGeneratorFn = (displayName: LocalizableStringDto, fallback: LocalizableStringDto) => string | undefined;
6
6
  export declare type EntityExtensions = Record<string, EntityExtensionDto>;
7
7
  export interface EntityExtensionDto {
8
8
  properties: EntityExtensionProperties;
@@ -31,7 +31,7 @@ export declare abstract class PropsFactory<C extends Props<any>> {
31
31
  private contributorCallbacks;
32
32
  get(name: string): C;
33
33
  }
34
- export declare abstract class Props<L extends PropList> {
34
+ export declare abstract class Props<L extends PropList<any, InferredProp<L>>> {
35
35
  private readonly callbackList;
36
36
  protected abstract _ctor: Type<L>;
37
37
  get props(): L;
@@ -39,5 +39,6 @@ export declare abstract class Props<L extends PropList> {
39
39
  addContributor(contributeCallback: PropContributorCallback<L>): void;
40
40
  clearContributors(): void;
41
41
  }
42
- export declare type PropContributorCallbacks<L extends PropList<any>> = Record<string, PropContributorCallback<L>[]>;
43
- export declare type PropContributorCallback<L extends PropList<any>> = (propList: L) => any;
42
+ export declare type PropContributorCallbacks<L extends PropList<any, InferredProp<L>>> = Record<string, PropContributorCallback<L>[]>;
43
+ export declare type PropContributorCallback<L extends PropList<any, InferredProp<L>>> = (propList: L) => any;
44
+ export declare type InferredProp<T> = T extends PropList<any, infer U> ? U : T;
@@ -1,7 +1,7 @@
1
1
  import { Injector, Type } from '@angular/core';
2
2
  import { O } from 'ts-toolbelt';
3
3
  import { Action, ActionContributorCallback, ActionContributorCallbacks, ActionData, ActionList, Actions, ActionsFactory, ReadonlyActionData } from './actions';
4
- export declare class ToolbarActionList<R = any> extends ActionList<R, ToolbarAction<R> | ToolbarComponent<R>> {
4
+ export declare class ToolbarActionList<R = any> extends ActionList<R, ToolbarActionDefault<R>> {
5
5
  }
6
6
  export declare class ToolbarActions<R = any> extends Actions<ToolbarActionList<R>> {
7
7
  protected _ctor: Type<ToolbarActionList<R>>;
@@ -30,7 +30,7 @@ export declare type ToolbarActionDefaults<R = any> = Record<string, Array<Toolba
30
30
  export declare type ToolbarActionContributorCallback<R = any> = ActionContributorCallback<ToolbarActionList<R>>;
31
31
  export declare type ToolbarActionContributorCallbacks<R = any> = ActionContributorCallbacks<ToolbarActionList<R>>;
32
32
  export declare type InferredData<L> = ActionData<InferredRecord<L>>;
33
- export declare type InferredRecord<L> = L extends ActionList<infer R> ? R : never;
33
+ export declare type InferredRecord<L> = L extends ActionList<infer R> ? R : any;
34
34
  export interface HasCreateInjectorPipe<R> {
35
35
  getData: () => ReadonlyActionData<R>;
36
36
  injector: Injector;
@@ -10,7 +10,7 @@ export declare const EXTENSIONS_ACTION_TYPE: InjectionToken<ActionKeys>;
10
10
  export declare const EXTENSIONS_ACTION_DATA: InjectionToken<{
11
11
  readonly index?: number;
12
12
  readonly record: any;
13
- readonly getInjected: <T>(token: import("@angular/core").Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: import("@angular/core").InjectFlags) => T;
13
+ readonly getInjected: <T>(token: import("@angular/core").Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: import("@angular/core").InjectOptions | import("@angular/core").InjectFlags) => T;
14
14
  }>;
15
15
  export declare const EXTENSIONS_ACTION_CALLBACK: InjectionToken<ActionCallback<unknown, any>>;
16
16
  export declare const PROP_DATA_STREAM: InjectionToken<Observable<any>>;
@@ -1,4 +1,4 @@
1
- import { ActionsFactory } from '../models/actions';
1
+ import { ActionsFactory } from "../models/actions";
2
2
  import { EntityActionContributorCallbacks, EntityActionDefaults, EntityActionsFactory } from '../models/entity-actions';
3
3
  import { ToolbarActionContributorCallbacks, ToolbarActionDefaults, ToolbarActionsFactory } from '../models/toolbar-actions';
4
4
  export declare function mergeWithDefaultActions<F extends ActionsFactory<any>>(extension: F, defaultActions: InferredActionDefaults<F>, ...contributors: InferredActionContributorCallbacks<F>[]): void;
@@ -1,7 +1,7 @@
1
- import { ABP } from '@abp/ng.core';
1
+ import { ABP, ExtensionEnumFieldDto } from '@abp/ng.core';
2
2
  import { Observable } from 'rxjs';
3
3
  import { ObjectExtensions } from '../models/object-extensions';
4
4
  import { PropCallback } from '../models/props';
5
- export declare function createEnum(members: ObjectExtensions.ExtensionEnumFieldDto[]): any;
5
+ export declare function createEnum(members: ExtensionEnumFieldDto[]): any;
6
6
  export declare function createEnumValueResolver<T = any>(enumType: string, lookupEnum: ObjectExtensions.ExtensionEnumDto, propName: string): PropCallback<T, Observable<string>>;
7
7
  export declare function createEnumOptions<T = any>(enumType: string, lookupEnum: ObjectExtensions.ExtensionEnumDto): PropCallback<T, Observable<ABP.Option<any>[]>>;
@@ -1,3 +1,3 @@
1
1
  import { UntypedFormGroup } from '@angular/forms';
2
- import { PropData } from '../models/props';
3
- export declare function generateFormFromProps<R extends any>(data: PropData<R>): UntypedFormGroup;
2
+ import { PropData } from "../models/props";
3
+ export declare function generateFormFromProps<R = any>(data: PropData<R>): UntypedFormGroup;
@@ -1,7 +1,8 @@
1
+ import { Observable } from 'rxjs';
1
2
  import { EntityPropContributorCallbacks, EntityPropDefaults, EntityPropsFactory } from '../models/entity-props';
2
3
  import { CreateFormPropContributorCallbacks, CreateFormPropDefaults, CreateFormPropsFactory, EditFormPropContributorCallbacks, EditFormPropDefaults, EditFormPropsFactory } from '../models/form-props';
3
- import { PropData, PropsFactory } from '../models/props';
4
- export declare function createExtraPropertyValueResolver<T>(name: string): (data?: PropData<T>) => import("rxjs").Observable<any>;
4
+ import { PropCallback, PropsFactory } from '../models/props';
5
+ export declare function createExtraPropertyValueResolver<T>(name: string): PropCallback<T, Observable<any>>;
5
6
  export declare function mergeWithDefaultProps<F extends PropsFactory<any>>(extension: F, defaultProps: InferredPropDefaults<F>, ...contributors: InferredPropContributorCallbacks<F>[]): void;
6
7
  declare type InferredPropDefaults<F> = F extends EntityPropsFactory<infer RE> ? EntityPropDefaults<RE> : F extends CreateFormPropsFactory<infer RCF> ? CreateFormPropDefaults<RCF> : F extends EditFormPropsFactory<infer REF> ? EditFormPropDefaults<REF> : never;
7
8
  declare type InferredPropContributorCallbacks<F> = F extends EntityPropsFactory<infer RE> ? EntityPropContributorCallbacks<RE> : F extends CreateFormPropsFactory<infer RCF> ? CreateFormPropContributorCallbacks<RCF> : F extends EditFormPropsFactory<infer REF> ? EditFormPropContributorCallbacks<REF> : never;
@@ -1,5 +1,5 @@
1
- import { ConfigStateService } from '@abp/ng.core';
2
- import { Observable } from 'rxjs';
3
- import { ObjectExtensions } from '../models/object-extensions';
1
+ import { ConfigStateService } from "@abp/ng.core";
2
+ import { Observable } from "rxjs";
3
+ import { ObjectExtensions } from "../models/object-extensions";
4
4
  export declare function getObjectExtensionEntitiesFromStore(configState: ConfigStateService, moduleKey: string): Observable<ObjectExtensions.EntityExtensions>;
5
5
  export declare function mapEntitiesToContributors<T = any>(configState: ConfigStateService, resource: string): import("rxjs").UnaryFunction<Observable<any>, Observable<ObjectExtensions.PropContributors<any>>>;
@@ -38,10 +38,10 @@ class DateTimeAdapter {
38
38
  if (!value)
39
39
  return '';
40
40
  const now = new Date();
41
- value = Object.assign(Object.assign({
41
+ const newValue = Object.assign(Object.assign({
42
42
  // TODO look for strict mode errors
43
43
  year: now.getUTCFullYear(), month: now.getMonth() + 1, day: now.getDate(), hour: 0, minute: 0, second: 0 }, this.value), value);
44
- const date = new Date(value.year, value.month - 1, value.day, value.hour, value.minute, value.second);
44
+ const date = new Date(newValue.year, newValue.month - 1, newValue.day, newValue.hour, newValue.minute, newValue.second);
45
45
  return new Date(date).toISOString();
46
46
  }
47
47
  }
@@ -325,7 +325,7 @@ class ExtensibleFormPropComponent {
325
325
  this.passwordKey = "ThemeShared.Extensions.PasswordComponent" /* eThemeSharedComponents.PasswordComponent */;
326
326
  this.disabledFn = (data) => false;
327
327
  this.search = (text$) => text$
328
- ? text$.pipe(debounceTime(300), distinctUntilChanged(), switchMap(text => this.prop.options(this.data, text)))
328
+ ? text$.pipe(debounceTime(300), distinctUntilChanged(), switchMap(text => { var _a, _b; return ((_b = (_a = this.prop) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.call(_a, this.data, text)) || of([]); }))
329
329
  : of([]);
330
330
  this.typeaheadFormatter = (option) => option.key;
331
331
  this.form = groupDirective.form;
@@ -347,7 +347,7 @@ class ExtensibleFormPropComponent {
347
347
  }
348
348
  get isInvalid() {
349
349
  const control = this.form.get(this.prop.name);
350
- return control.touched && control.invalid;
350
+ return (control === null || control === void 0 ? void 0 : control.touched) && control.invalid;
351
351
  }
352
352
  getTypeaheadControls() {
353
353
  const { name } = this.prop;
@@ -583,7 +583,7 @@ class EditFormPropsFactory extends PropsFactory {
583
583
  }
584
584
  class FormProp extends Prop {
585
585
  constructor(options) {
586
- super(options.type, options.name, options.displayName, options.permission, options.visible, options.isExtra, options.template, options.className);
586
+ super(options.type, options.name, options.displayName || '', options.permission || '', options.visible, options.isExtra, options.template, options.className);
587
587
  this.group = options.group;
588
588
  this.className = options.className;
589
589
  this.asyncValidators = options.asyncValidators || (_ => []);
@@ -594,7 +594,7 @@ class FormProp extends Prop {
594
594
  this.options = options.options;
595
595
  this.id = options.id || options.name;
596
596
  const defaultValue = options.defaultValue;
597
- this.defaultValue = isFalsyValue(defaultValue) ? defaultValue : defaultValue || null;
597
+ this.defaultValue = isFalsyValue(defaultValue) ? defaultValue : defaultValue || '';
598
598
  this.displayTextResolver = options.displayTextResolver;
599
599
  }
600
600
  static create(options) {
@@ -627,7 +627,7 @@ class ActionData {
627
627
  }
628
628
  }
629
629
  class Action {
630
- constructor(permission, visible = _ => true, action = _ => { }) {
630
+ constructor(permission, visible = () => true, action = () => { }) {
631
631
  this.permission = permission;
632
632
  this.visible = visible;
633
633
  this.action = action;
@@ -676,7 +676,7 @@ class EntityActionsFactory extends ActionsFactory {
676
676
  }
677
677
  class EntityAction extends Action {
678
678
  constructor(options) {
679
- super(options.permission, options.visible, options.action);
679
+ super(options.permission || '', options.visible, options.action);
680
680
  this.text = options.text;
681
681
  this.icon = options.icon || '';
682
682
  }
@@ -704,14 +704,21 @@ class EntityPropsFactory extends PropsFactory {
704
704
  }
705
705
  class EntityProp extends Prop {
706
706
  constructor(options) {
707
- super(options.type, options.name, options.displayName, options.permission, options.visible, options.isExtra);
707
+ super(options.type, options.name, options.displayName || '', options.permission || '', options.visible, options.isExtra);
708
708
  this.columnWidth = options.columnWidth;
709
709
  this.sortable = options.sortable || false;
710
710
  this.valueResolver =
711
- options.valueResolver || (data => of(escapeHtmlChars(data.record[this.name])));
712
- this.action = options.action;
713
- this.component = options.component;
714
- this.enumList = options.enumList;
711
+ options.valueResolver ||
712
+ (data => of(escapeHtmlChars(data.record[this.name])));
713
+ if (options.action) {
714
+ this.action = options.action;
715
+ }
716
+ if (options.component) {
717
+ this.component = options.component;
718
+ }
719
+ if (options.enumList) {
720
+ this.enumList = options.enumList;
721
+ }
715
722
  }
716
723
  static create(options) {
717
724
  return new EntityProp(options);
@@ -967,7 +974,7 @@ class ExtensibleTableComponent {
967
974
  this.columnWidths = widths;
968
975
  }
969
976
  getDate(value, format) {
970
- return value ? formatDate(value, format, this.locale) : '';
977
+ return value && format ? formatDate(value, format, this.locale) : '';
971
978
  }
972
979
  getIcon(value) {
973
980
  return value
@@ -977,7 +984,7 @@ class ExtensibleTableComponent {
977
984
  getEnum(rowValue, list) {
978
985
  if (!list)
979
986
  return rowValue;
980
- const { key } = list.find(({ value }) => value === rowValue);
987
+ const { key } = list.find(({ value }) => value === rowValue) || {};
981
988
  return key;
982
989
  }
983
990
  getContent(prop, data) {
@@ -992,7 +999,7 @@ class ExtensibleTableComponent {
992
999
  case "datetime" /* ePropType.DateTime */:
993
1000
  return this.getDate(value, getShortDateShortTimeFormat(this.config));
994
1001
  case "enum" /* ePropType.Enum */:
995
- return this.getEnum(value, prop.enumList);
1002
+ return this.getEnum(value, prop.enumList || []);
996
1003
  default:
997
1004
  return value;
998
1005
  // More types can be handled in the future
@@ -1059,7 +1066,7 @@ class CreateInjectorPipe {
1059
1066
  transform(_, action, context) {
1060
1067
  const get = (token, notFoundValue, options) => {
1061
1068
  const componentData = context.getData();
1062
- const componentDataCallback = data => {
1069
+ const componentDataCallback = (data) => {
1063
1070
  data = data !== null && data !== void 0 ? data : context.getData();
1064
1071
  return action.action(data);
1065
1072
  };
@@ -1096,6 +1103,11 @@ class PageToolbarComponent extends AbstractActionsComponent {
1096
1103
  this.getData = () => this.data;
1097
1104
  this.trackByFn = (_, item) => item.action || item.component;
1098
1105
  }
1106
+ asToolbarAction(value) {
1107
+ return {
1108
+ value: value,
1109
+ };
1110
+ }
1099
1111
  }
1100
1112
  PageToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PageToolbarComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
1101
1113
  PageToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: PageToolbarComponent, selector: "abp-page-toolbar", providers: [
@@ -1103,7 +1115,7 @@ PageToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
1103
1115
  provide: EXTENSIONS_ACTION_TYPE,
1104
1116
  useValue: 'toolbarActions',
1105
1117
  },
1106
- ], exportAs: ["abpPageToolbar"], usesInheritance: true, ngImport: i0, template: "<div class=\"row justify-content-end mx-0 gap-2\" id=\"AbpContentToolbar\">\r\n <div\r\n class=\"col-auto px-0 pt-0 pt-md-2\"\r\n [class.pe-0]=\"last\"\r\n *ngFor=\"let action of actionList; trackBy: trackByFn; let last = last\"\r\n >\r\n <ng-container *ngIf=\"action.visible(data)\">\r\n <ng-container *abpPermission=\"action.permission;runChangeDetection: false\">\r\n <ng-container *ngIf=\"action.component as component; else button\">\r\n <ng-container\r\n *ngComponentOutlet=\"component; injector: record | createInjector: action:this\"\r\n ></ng-container>\r\n </ng-container>\r\n\r\n <ng-template #button>\r\n <button\r\n (click)=\"action.action(data)\"\r\n type=\"button\"\r\n [ngClass]=\"action.btnClass ? action.btnClass : defaultBtnClass\"\r\n class=\"d-inline-flex align-items-center gap-1\"\r\n >\r\n <i [ngClass]=\"action.icon\" [class.me-1]=\"action.icon\"></i>\r\n {{ action.text | abpLocalization }}\r\n </button>\r\n </ng-template>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.PermissionDirective, selector: "[abpPermission]", inputs: ["abpPermission", "abpPermissionRunChangeDetection"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }, { kind: "pipe", type: CreateInjectorPipe, name: "createInjector" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1118
+ ], exportAs: ["abpPageToolbar"], usesInheritance: true, ngImport: i0, template: "<div class=\"row justify-content-end mx-0 gap-2\" id=\"AbpContentToolbar\">\r\n <div\r\n class=\"col-auto px-0 pt-0 \"\r\n [class.pe-0]=\"last\"\r\n *ngFor=\"let action of actionList; trackBy: trackByFn; let last = last\"\r\n >\r\n <ng-container *ngIf=\"action.visible(data)\">\r\n <ng-container *abpPermission=\"action.permission;runChangeDetection: false\">\r\n <ng-container *ngIf=\"action.component as component; else button\">\r\n <ng-container\r\n *ngComponentOutlet=\"component; injector: record | createInjector: action:this\"\r\n ></ng-container>\r\n </ng-container>\r\n\r\n <ng-template #button>\r\n <ng-container *ngIf=\"asToolbarAction(action).value as toolbarAction\">\r\n <button\r\n (click)=\"action.action(data)\"\r\n type=\"button\"\r\n [ngClass]=\"toolbarAction.btnClass ? toolbarAction.btnClass : defaultBtnClass\"\r\n class=\"d-inline-flex align-items-center gap-1\"\r\n >\r\n <i [ngClass]=\"toolbarAction.icon\" [class.me-1]=\"toolbarAction.icon\"></i>\r\n {{ toolbarAction.text | abpLocalization }}\r\n </button>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.PermissionDirective, selector: "[abpPermission]", inputs: ["abpPermission", "abpPermissionRunChangeDetection"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }, { kind: "pipe", type: CreateInjectorPipe, name: "createInjector" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
1107
1119
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PageToolbarComponent, decorators: [{
1108
1120
  type: Component,
1109
1121
  args: [{ exportAs: 'abpPageToolbar', selector: 'abp-page-toolbar', providers: [
@@ -1111,7 +1123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
1111
1123
  provide: EXTENSIONS_ACTION_TYPE,
1112
1124
  useValue: 'toolbarActions',
1113
1125
  },
1114
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"row justify-content-end mx-0 gap-2\" id=\"AbpContentToolbar\">\r\n <div\r\n class=\"col-auto px-0 pt-0 pt-md-2\"\r\n [class.pe-0]=\"last\"\r\n *ngFor=\"let action of actionList; trackBy: trackByFn; let last = last\"\r\n >\r\n <ng-container *ngIf=\"action.visible(data)\">\r\n <ng-container *abpPermission=\"action.permission;runChangeDetection: false\">\r\n <ng-container *ngIf=\"action.component as component; else button\">\r\n <ng-container\r\n *ngComponentOutlet=\"component; injector: record | createInjector: action:this\"\r\n ></ng-container>\r\n </ng-container>\r\n\r\n <ng-template #button>\r\n <button\r\n (click)=\"action.action(data)\"\r\n type=\"button\"\r\n [ngClass]=\"action.btnClass ? action.btnClass : defaultBtnClass\"\r\n class=\"d-inline-flex align-items-center gap-1\"\r\n >\r\n <i [ngClass]=\"action.icon\" [class.me-1]=\"action.icon\"></i>\r\n {{ action.text | abpLocalization }}\r\n </button>\r\n </ng-template>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</div>\r\n" }]
1126
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"row justify-content-end mx-0 gap-2\" id=\"AbpContentToolbar\">\r\n <div\r\n class=\"col-auto px-0 pt-0 \"\r\n [class.pe-0]=\"last\"\r\n *ngFor=\"let action of actionList; trackBy: trackByFn; let last = last\"\r\n >\r\n <ng-container *ngIf=\"action.visible(data)\">\r\n <ng-container *abpPermission=\"action.permission;runChangeDetection: false\">\r\n <ng-container *ngIf=\"action.component as component; else button\">\r\n <ng-container\r\n *ngComponentOutlet=\"component; injector: record | createInjector: action:this\"\r\n ></ng-container>\r\n </ng-container>\r\n\r\n <ng-template #button>\r\n <ng-container *ngIf=\"asToolbarAction(action).value as toolbarAction\">\r\n <button\r\n (click)=\"action.action(data)\"\r\n type=\"button\"\r\n [ngClass]=\"toolbarAction.btnClass ? toolbarAction.btnClass : defaultBtnClass\"\r\n class=\"d-inline-flex align-items-center gap-1\"\r\n >\r\n <i [ngClass]=\"toolbarAction.icon\" [class.me-1]=\"toolbarAction.icon\"></i>\r\n {{ toolbarAction.text | abpLocalization }}\r\n </button>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n</div>\r\n" }]
1115
1127
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
1116
1128
 
1117
1129
  var objectExtensions = /*#__PURE__*/Object.freeze({
@@ -1210,7 +1222,7 @@ function mergeWithDefaultActions(extension, defaultActions, ...contributors) {
1210
1222
  }
1211
1223
 
1212
1224
  function generateFormFromProps(data) {
1213
- const extensions = data.getInjected(ExtensionsService);
1225
+ const extensions = data.getInjected((ExtensionsService));
1214
1226
  const identifier = data.getInjected(EXTENSIONS_IDENTIFIER);
1215
1227
  const form = new UntypedFormGroup({});
1216
1228
  const extraForm = new UntypedFormGroup({});
@@ -1388,7 +1400,7 @@ function createPropertiesToContributorsMapper(generateDisplayName, resource, enu
1388
1400
  if (property.ui.onTable.isVisible) {
1389
1401
  const sortable = Boolean(property.ui.onTable.isSortable);
1390
1402
  const columnWidth = type === "boolean" /* ePropType.Boolean */ ? 150 : 250;
1391
- const valueResolver = type === "enum" /* ePropType.Enum */
1403
+ const valueResolver = type === "enum" /* ePropType.Enum */ && property.type
1392
1404
  ? createEnumValueResolver(property.type, enums[property.type], propName)
1393
1405
  : createExtraPropertyValueResolver(propName);
1394
1406
  const entityProp = new EntityProp({