@lucca-front/ng 22.1.0 → 22.1.1

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 (125) hide show
  1. package/fesm2022/lucca-front-ng-activity-feed.mjs +8 -4
  2. package/fesm2022/lucca-front-ng-activity-feed.mjs.map +1 -1
  3. package/fesm2022/lucca-front-ng-approbation-inbox.mjs +46 -25
  4. package/fesm2022/lucca-front-ng-approbation-inbox.mjs.map +1 -1
  5. package/fesm2022/lucca-front-ng-core-select-department.mjs +2 -0
  6. package/fesm2022/lucca-front-ng-core-select-department.mjs.map +1 -1
  7. package/fesm2022/lucca-front-ng-core-select-establishment.mjs +2 -0
  8. package/fesm2022/lucca-front-ng-core-select-establishment.mjs.map +1 -1
  9. package/fesm2022/lucca-front-ng-core-select-user.mjs +2 -0
  10. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  11. package/fesm2022/lucca-front-ng-core-select.mjs +6 -6
  12. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  13. package/fesm2022/lucca-front-ng-date2.mjs +62 -12
  14. package/fesm2022/lucca-front-ng-date2.mjs.map +1 -1
  15. package/fesm2022/lucca-front-ng-dialog.mjs +3 -2
  16. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-filter-pills.mjs +4 -4
  18. package/fesm2022/lucca-front-ng-form-field.mjs +6 -2
  19. package/fesm2022/lucca-front-ng-form-field.mjs.map +1 -1
  20. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +3 -2
  21. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  22. package/fesm2022/lucca-front-ng-highlight-section.mjs +3 -0
  23. package/fesm2022/lucca-front-ng-highlight-section.mjs.map +1 -1
  24. package/fesm2022/lucca-front-ng-impersonation.mjs +3 -1
  25. package/fesm2022/lucca-front-ng-impersonation.mjs.map +1 -1
  26. package/fesm2022/lucca-front-ng-link.mjs +33 -9
  27. package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
  28. package/fesm2022/lucca-front-ng-listing.mjs +17 -7
  29. package/fesm2022/lucca-front-ng-listing.mjs.map +1 -1
  30. package/fesm2022/lucca-front-ng-multi-select.mjs +6 -6
  31. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  32. package/fesm2022/lucca-front-ng-popover2.mjs +2 -2
  33. package/fesm2022/lucca-front-ng-popover2.mjs.map +1 -1
  34. package/fesm2022/lucca-front-ng-priority-level.mjs +128 -0
  35. package/fesm2022/lucca-front-ng-priority-level.mjs.map +1 -0
  36. package/fesm2022/lucca-front-ng-segmented-control-tabs.mjs +2 -2
  37. package/fesm2022/lucca-front-ng-segmented-control.mjs +2 -2
  38. package/fesm2022/lucca-front-ng-simple-select.mjs +4 -4
  39. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  40. package/fesm2022/lucca-front-ng-tree-select.mjs +2 -2
  41. package/fesm2022/lucca-front-ng-tree-select.mjs.map +1 -1
  42. package/fesm2022/lucca-front-ng-user.mjs +11 -4
  43. package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
  44. package/package.json +11 -8
  45. package/schematics/lu-button/migration.js +59 -33
  46. package/src/components/_sidepanel.scss +2 -2
  47. package/src/components/cdk/_global.scss +4 -0
  48. package/src/components/cdk/_overlay.scss +1 -1
  49. package/types/lucca-front-ng-activity-feed.d.ts +13 -9
  50. package/types/lucca-front-ng-api.d.ts +28 -28
  51. package/types/lucca-front-ng-approbation-inbox.d.ts +19 -11
  52. package/types/lucca-front-ng-bubble-icon.d.ts +1 -1
  53. package/types/lucca-front-ng-callout.d.ts +17 -17
  54. package/types/lucca-front-ng-chip.d.ts +6 -6
  55. package/types/lucca-front-ng-clear.d.ts +1 -1
  56. package/types/lucca-front-ng-color.d.ts +3 -3
  57. package/types/lucca-front-ng-comment.d.ts +11 -11
  58. package/types/lucca-front-ng-container.d.ts +1 -1
  59. package/types/lucca-front-ng-core-select-api.d.ts +7 -7
  60. package/types/lucca-front-ng-core-select-department.d.ts +7 -5
  61. package/types/lucca-front-ng-core-select-establishment.d.ts +7 -5
  62. package/types/lucca-front-ng-core-select-job-qualification.d.ts +2 -2
  63. package/types/lucca-front-ng-core-select-legal-units.d.ts +3 -3
  64. package/types/lucca-front-ng-core-select-occupation-category.d.ts +2 -2
  65. package/types/lucca-front-ng-core-select-user.d.ts +14 -12
  66. package/types/lucca-front-ng-core-select.d.ts +39 -39
  67. package/types/lucca-front-ng-core.d.ts +2 -2
  68. package/types/lucca-front-ng-data-table.d.ts +33 -33
  69. package/types/lucca-front-ng-date.d.ts +11 -11
  70. package/types/lucca-front-ng-date2.d.ts +52 -36
  71. package/types/lucca-front-ng-dialog.d.ts +8 -8
  72. package/types/lucca-front-ng-divider.d.ts +2 -2
  73. package/types/lucca-front-ng-dropdown.d.ts +2 -2
  74. package/types/lucca-front-ng-empty-state.d.ts +20 -20
  75. package/types/lucca-front-ng-establishment.d.ts +13 -13
  76. package/types/lucca-front-ng-fancy-box.d.ts +12 -12
  77. package/types/lucca-front-ng-file-upload.d.ts +13 -13
  78. package/types/lucca-front-ng-filter-pills.d.ts +17 -17
  79. package/types/lucca-front-ng-footer.d.ts +1 -1
  80. package/types/lucca-front-ng-form-field.d.ts +19 -19
  81. package/types/lucca-front-ng-form-label.d.ts +4 -4
  82. package/types/lucca-front-ng-form.d.ts +1 -1
  83. package/types/lucca-front-ng-forms-phone-number-input.d.ts +11 -11
  84. package/types/lucca-front-ng-forms-rich-text-input.d.ts +11 -11
  85. package/types/lucca-front-ng-forms.d.ts +50 -50
  86. package/types/lucca-front-ng-grid.d.ts +23 -23
  87. package/types/lucca-front-ng-highlight-data.d.ts +5 -5
  88. package/types/lucca-front-ng-highlight-section.d.ts +6 -3
  89. package/types/lucca-front-ng-horizontal-navigation.d.ts +4 -4
  90. package/types/lucca-front-ng-impersonation.d.ts +8 -6
  91. package/types/lucca-front-ng-index-table.d.ts +18 -18
  92. package/types/lucca-front-ng-inline-message.d.ts +2 -2
  93. package/types/lucca-front-ng-link.d.ts +17 -4
  94. package/types/lucca-front-ng-listbox.d.ts +9 -9
  95. package/types/lucca-front-ng-listing.d.ts +14 -3
  96. package/types/lucca-front-ng-loading.d.ts +4 -4
  97. package/types/lucca-front-ng-main-layout.d.ts +9 -9
  98. package/types/lucca-front-ng-modal.d.ts +2 -2
  99. package/types/lucca-front-ng-multi-select.d.ts +20 -20
  100. package/types/lucca-front-ng-option.d.ts +3 -3
  101. package/types/lucca-front-ng-page-header.d.ts +2 -2
  102. package/types/lucca-front-ng-pagination.d.ts +3 -3
  103. package/types/lucca-front-ng-popover.d.ts +18 -18
  104. package/types/lucca-front-ng-popover2.d.ts +8 -8
  105. package/types/lucca-front-ng-popup.d.ts +2 -2
  106. package/types/{lucca-front-ng-priority-levels.d.ts → lucca-front-ng-priority-level.d.ts} +11 -11
  107. package/types/lucca-front-ng-progress-bar.d.ts +1 -1
  108. package/types/lucca-front-ng-progress-stepper.d.ts +2 -2
  109. package/types/lucca-front-ng-read-more.d.ts +4 -4
  110. package/types/lucca-front-ng-resource-card.d.ts +3 -3
  111. package/types/lucca-front-ng-segmented-control-tabs.d.ts +5 -5
  112. package/types/lucca-front-ng-segmented-control.d.ts +3 -3
  113. package/types/lucca-front-ng-select.d.ts +9 -9
  114. package/types/lucca-front-ng-simple-select.d.ts +8 -8
  115. package/types/lucca-front-ng-software-icon.d.ts +1 -1
  116. package/types/lucca-front-ng-sortable-list.d.ts +1 -1
  117. package/types/lucca-front-ng-status-badge.d.ts +1 -1
  118. package/types/lucca-front-ng-time.d.ts +19 -19
  119. package/types/lucca-front-ng-toast.d.ts +1 -1
  120. package/types/lucca-front-ng-tree-select.d.ts +2 -2
  121. package/types/lucca-front-ng-user-popover.d.ts +1 -1
  122. package/types/lucca-front-ng-user.d.ts +24 -18
  123. package/types/lucca-front-ng-vertical-navigation.d.ts +5 -5
  124. package/fesm2022/lucca-front-ng-priority-levels.mjs +0 -128
  125. package/fesm2022/lucca-front-ng-priority-levels.mjs.map +0 -1
@@ -27,6 +27,12 @@ function migrateComponent(sourceFile, path, tree) {
27
27
  if (button.inputs.palette) {
28
28
  thingsToAdd += `palette="${button.inputs.palette}" `;
29
29
  }
30
+ if (button.inputs.critical) {
31
+ thingsToAdd += "critical ";
32
+ }
33
+ if (button.inputs.disabled) {
34
+ thingsToAdd += "disabled ";
35
+ }
30
36
  if (button.inputs.block) {
31
37
  thingsToAdd += "block ";
32
38
  }
@@ -39,23 +45,39 @@ function migrateComponent(sourceFile, path, tree) {
39
45
  * Modify classes
40
46
  */
41
47
  const classes = classesNode.value;
42
- const cleanedClasses = classes.split(' ').filter(c => {
43
- return ![
44
- 'button',
45
- `mod-block`,
46
- `mod-disclosure`,
47
- `palette-${button.inputs.palette}`,
48
- `mod-text`,
49
- `mod-ghost`,
50
- `mod-outlined`,
51
- `mod-inverted`,
52
- `mod-onlyIcon`,
53
- `mod-withIcon`,
54
- `is-${button.inputs.state}`,
55
- `mod-delete`,
56
- `mod-${button.inputs.size}`
57
- ].includes(c);
58
- }).join(' ');
48
+ const removedClasses = [
49
+ 'button',
50
+ `mod-block`,
51
+ `mod-disclosure`,
52
+ `palette-${button.inputs.palette}`,
53
+ `mod-text`,
54
+ `mod-link`,
55
+ `mod-ghost`,
56
+ `mod-outline`,
57
+ `mod-outlined`,
58
+ `mod-AI`,
59
+ `mod-onlyIcon`,
60
+ `mod-withIcon`,
61
+ `is-${button.inputs.state}`,
62
+ `mod-delete`,
63
+ `mod-critical`,
64
+ // Bare state classes are deprecated aliases of .is-*
65
+ 'loading',
66
+ 'error',
67
+ 'success',
68
+ `mod-${button.inputs.size}`
69
+ ];
70
+ // Invert is only carried by the ghost-invert and AI-invert types, otherwise the class is kept
71
+ const invertedByType = button.type.endsWith('-invert');
72
+ if (button.inputs.disabled) {
73
+ removedClasses.push('disabled', 'is-disabled');
74
+ }
75
+ const cleanedClasses = classes.split(' ').filter(c => !removedClasses.includes(c) && !(invertedByType && INVERT_CLASSES.includes(c)))
76
+ // .mod-invert is a deprecated alias of .mod-inverted
77
+ .map(c => c === 'mod-invert' ? 'mod-inverted' : c)
78
+ // .disabled is a deprecated alias of .is-disabled
79
+ .map(c => c === 'disabled' ? 'is-disabled' : c)
80
+ .join(' ');
59
81
  templateUpdate.remove(button.nodeOffset + classesNode.keySpan.start.offset - 1, classesNode.sourceSpan.toString().length + 1);
60
82
  if (cleanedClasses) {
61
83
  templateUpdate.insertRight(button.nodeOffset + classesNode.keySpan.start.offset, `class="${cleanedClasses}"`);
@@ -80,17 +102,20 @@ function findCssButtons(sourceFile, basePath, tree) {
80
102
  if ((0, lib_1.isInterestingNode)(node) && ["button", "a"].includes(node.name)) {
81
103
  const classes = node.attributes.find(attr => attr.name === 'class')?.value || "";
82
104
  if (classes.split(" ").includes("button")) {
105
+ const classList = classes.split(' ');
83
106
  const inputs = {
84
- size: classes.split(' ').find(c => /mod-(XS|S|M|L|XL|XXL)/.test(c))?.replace('mod-', ''),
85
- block: classes.includes(`mod-block`),
86
- delete: classes.includes(`mod-delete`),
87
- disclosure: classes.includes(`mod-disclosure`),
88
- palette: classes.split(' ').find(c => /palette-(\w+)/.test(c))?.replace('palette-', ''),
89
- state: classes.split(' ').find(c => /is-(\w+)/.test(c))?.replace('is-', ''),
107
+ size: classList.find(c => /^mod-(XS|S|M|L|XL|XXL)$/.test(c))?.replace('mod-', ''),
108
+ block: classList.includes(`mod-block`),
109
+ critical: classList.includes(`mod-delete`) || classList.includes(`mod-critical`),
110
+ // The disabled input only works on a <button>, links keep the .is-disabled class
111
+ disabled: node.name === 'button' && (classList.includes(`disabled`) || classList.includes(`is-disabled`)),
112
+ disclosure: classList.includes(`mod-disclosure`),
113
+ palette: classList.find(c => /palette-(\w+)/.test(c))?.replace('palette-', ''),
114
+ state: classList.find(c => /^(is-)?(loading|error|success)$/.test(c))?.replace('is-', ''),
90
115
  };
91
116
  const button = {
92
117
  node: node,
93
- type: getButtonType(classes),
118
+ type: getButtonType(classList),
94
119
  inputs,
95
120
  nodeOffset: template.offsetStart,
96
121
  filePath: template.filePath,
@@ -103,18 +128,19 @@ function findCssButtons(sourceFile, basePath, tree) {
103
128
  });
104
129
  return buttons;
105
130
  }
106
- function getButtonType(classes) {
107
- if (classes.includes('mod-outlined')) {
131
+ const INVERT_CLASSES = ['mod-invert', 'mod-inverted'];
132
+ function getButtonType(classList) {
133
+ const inverted = INVERT_CLASSES.some(c => classList.includes(c));
134
+ // .mod-outline is a deprecated alias of .mod-outlined
135
+ if (classList.includes('mod-outlined') || classList.includes('mod-outline')) {
108
136
  return 'outlined';
109
137
  }
110
- if (classes.includes('mod-ghost')) {
111
- return 'ghost';
138
+ if (classList.includes('mod-AI')) {
139
+ return inverted ? 'AI-invert' : 'AI';
112
140
  }
113
- if (classes.includes('mod-text')) {
114
- if (classes.includes('mod-invert')) {
115
- return 'ghost-invert';
116
- }
117
- return 'ghost';
141
+ // .mod-text and .mod-link are deprecated aliases of .mod-ghost
142
+ if (['mod-ghost', 'mod-text', 'mod-link'].some(c => classList.includes(c))) {
143
+ return inverted ? 'ghost-invert' : 'ghost';
118
144
  }
119
145
  return '';
120
146
  }
@@ -15,9 +15,9 @@
15
15
  &.mod-sidepanel {
16
16
  position: fixed !important;
17
17
  inset-block: 0;
18
- inset-inline-end: 0;
18
+ inset-inline-end: var(--commons-pushPanel-inlineSize);
19
19
  inline-size: var(--components-sidepanel-M);
20
- max-inline-size: 100%;
20
+ max-inline-size: calc(100% - var(--commons-pushPanel-inlineSize));
21
21
  max-block-size: 100vb;
22
22
  border-radius: 0;
23
23
  animation-name: sidepanel;
@@ -26,6 +26,10 @@
26
26
  position: absolute;
27
27
  z-index: 1000;
28
28
 
29
+ &.cdk-overlay-popover {
30
+ inline-size: calc(100% - var(--commons-pushPanel-inlineSize)) !important;
31
+ }
32
+
29
33
  &.mod-stacked {
30
34
  @for $i from 1 through 3 {
31
35
  @include stacked($i);
@@ -41,7 +41,7 @@
41
41
  max-inline-size: 30rem;
42
42
  }
43
43
 
44
- // Caps the panel anchored to the field only: below the `S` breakpoint the panel is rendered by the
44
+ // Caps the panel anchored to the field only: below the `XS` breakpoint the panel is rendered by the
45
45
  // dialog as a sheet, which spans the whole viewport and sizes itself.
46
46
  &:not(.dialog):has(> lu-select-panel) {
47
47
  max-inline-size: 35rem !important;
@@ -14,21 +14,25 @@ type ActivityFeedStepStatus = (typeof ACTIVITY_FEED_STEP_STATUS)[number];
14
14
  declare class ActivityFeedStepComponent {
15
15
  #private;
16
16
  readonly intl: _angular_core.InputSignalWithTransform<_lucca_front_ng_activity_feed.ActivityFeedTranslate, Partial<_lucca_front_ng_activity_feed.ActivityFeedTranslate>>;
17
- readonly label: _angular_core.InputSignal<PortalContent>;
18
- readonly user: _angular_core.InputSignal<ILuUser>;
19
- readonly status: _angular_core.InputSignal<"success" | "critical" | "pending">;
20
- readonly icon: _angular_core.InputSignal<LuccaIcon>;
21
- readonly date: _angular_core.InputSignal<string | Date>;
22
- protected readonly preparedDate: _angular_core.Signal<Date>;
17
+ readonly label: _angular_core.InputSignal<PortalContent | null>;
18
+ readonly user: _angular_core.InputSignal<ILuUser | null>;
19
+ /**
20
+ * Displays a placeholder avatar instead of the `user` one
21
+ */
22
+ readonly avatarPlaceholder: _angular_core.InputSignalWithTransform<boolean, boolean | "" | "false" | "true">;
23
+ readonly status: _angular_core.InputSignal<"success" | "critical" | "pending" | null>;
24
+ readonly icon: _angular_core.InputSignal<LuccaIcon | null>;
25
+ readonly date: _angular_core.InputSignal<string | Date | null>;
26
+ protected readonly preparedDate: _angular_core.Signal<Date | null>;
23
27
  /**
24
28
  * format given to the date pipe for display.
25
29
  *
26
30
  * See https://angular.dev/api/common/DatePipe#custom-format-options
27
31
  */
28
- readonly datePipeFormat: _angular_core.InputSignal<string>;
29
- protected readonly dateDisplay: _angular_core.Signal<string>;
32
+ readonly datePipeFormat: _angular_core.InputSignal<string | undefined>;
33
+ protected readonly dateDisplay: _angular_core.Signal<string | null>;
30
34
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ActivityFeedStepComponent, never>;
31
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ActivityFeedStepComponent, "lu-activity-feed-step", never, { "intl": { "alias": "intl"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "user": { "alias": "user"; "required": false; "isSignal": true; }; "status": { "alias": "status"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "date": { "alias": "date"; "required": false; "isSignal": true; }; "datePipeFormat": { "alias": "datePipeFormat"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
35
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ActivityFeedStepComponent, "lu-activity-feed-step", never, { "intl": { "alias": "intl"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "user": { "alias": "user"; "required": false; "isSignal": true; }; "avatarPlaceholder": { "alias": "avatarPlaceholder"; "required": false; "isSignal": true; }; "status": { "alias": "status"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "date": { "alias": "date"; "required": false; "isSignal": true; }; "datePipeFormat": { "alias": "datePipeFormat"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
32
36
  }
33
37
 
34
38
  declare class ActivityFeedUpdateItemComponent {
@@ -111,12 +111,12 @@ declare abstract class ALuApiOptionFeeder<T extends ILuApiItem = ILuApiItem, S e
111
111
 
112
112
  declare class LuApiFeederComponent<T extends ILuApiItem = ILuApiItem> extends ALuApiOptionFeeder<T, LuApiHybridService<T>> implements ILuOptionOperator<T>, ILuOnOpenSubscriber {
113
113
  readonly outOptions$: BehaviorSubject<T[]>;
114
- readonly standard: _angular_core.InputSignal<"v3" | "v4">;
115
- readonly api: _angular_core.InputSignal<string>;
116
- readonly fields: _angular_core.InputSignal<string>;
117
- readonly filters: _angular_core.InputSignal<string[]>;
118
- readonly orderBy: _angular_core.InputSignal<string>;
119
- readonly sort: _angular_core.InputSignal<string>;
114
+ readonly standard: _angular_core.InputSignal<"v3" | "v4" | undefined>;
115
+ readonly api: _angular_core.InputSignal<string | undefined>;
116
+ readonly fields: _angular_core.InputSignal<string | undefined>;
117
+ readonly filters: _angular_core.InputSignal<string[] | undefined>;
118
+ readonly orderBy: _angular_core.InputSignal<string | undefined>;
119
+ readonly sort: _angular_core.InputSignal<string | undefined>;
120
120
  constructor(hostService: LuApiHybridService<T>, selfService: LuApiHybridService<T>);
121
121
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<LuApiFeederComponent<any>, [{ optional: true; skipSelf: true; }, { self: true; }]>;
122
122
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<LuApiFeederComponent<any>, "lu-api-feeder", never, { "standard": { "alias": "standard"; "required": false; "isSignal": true; }; "api": { "alias": "api"; "required": false; "isSignal": true; }; "fields": { "alias": "fields"; "required": false; "isSignal": true; }; "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "orderBy": { "alias": "orderBy"; "required": false; "isSignal": true; }; "sort": { "alias": "sort"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
@@ -155,12 +155,12 @@ declare abstract class ALuApiOptionPagedSearcher<T extends ILuApiItem = ILuApiIt
155
155
 
156
156
  declare class LuApiSearcherComponent<T extends ILuApiItem = ILuApiItem> extends ALuApiOptionSearcher<T, LuApiHybridService<T>> implements OnInit {
157
157
  readonly searchInput: _angular_core.Signal<ElementRef<HTMLElement>>;
158
- readonly standard: _angular_core.InputSignal<"v3" | "v4">;
159
- readonly api: _angular_core.InputSignal<string>;
160
- readonly fields: _angular_core.InputSignal<string>;
161
- readonly filters: _angular_core.InputSignal<string[]>;
162
- readonly orderBy: _angular_core.InputSignal<string>;
163
- readonly sort: _angular_core.InputSignal<string>;
158
+ readonly standard: _angular_core.InputSignal<"v3" | "v4" | undefined>;
159
+ readonly api: _angular_core.InputSignal<string | undefined>;
160
+ readonly fields: _angular_core.InputSignal<string | undefined>;
161
+ readonly filters: _angular_core.InputSignal<string[] | undefined>;
162
+ readonly orderBy: _angular_core.InputSignal<string | undefined>;
163
+ readonly sort: _angular_core.InputSignal<string | undefined>;
164
164
  readonly debounceTime: _angular_core.InputSignal<number>;
165
165
  clueControl: FormControl;
166
166
  constructor(hostService: LuApiHybridService<T>, selfService: LuApiHybridService<T>);
@@ -172,12 +172,12 @@ declare class LuApiSearcherComponent<T extends ILuApiItem = ILuApiItem> extends
172
172
  }
173
173
  declare class LuApiPagedSearcherComponent<T extends ILuApiItem = ILuApiItem> extends ALuApiOptionPagedSearcher<T, LuApiHybridService<T>> implements OnInit {
174
174
  readonly searchInput: _angular_core.Signal<ElementRef<HTMLElement>>;
175
- readonly standard: _angular_core.InputSignal<"v3" | "v4">;
176
- readonly api: _angular_core.InputSignal<string>;
177
- readonly fields: _angular_core.InputSignal<string>;
178
- readonly filters: _angular_core.InputSignal<string[]>;
179
- readonly orderBy: _angular_core.InputSignal<string>;
180
- readonly sort: _angular_core.InputSignal<string>;
175
+ readonly standard: _angular_core.InputSignal<"v3" | "v4" | undefined>;
176
+ readonly api: _angular_core.InputSignal<string | undefined>;
177
+ readonly fields: _angular_core.InputSignal<string | undefined>;
178
+ readonly filters: _angular_core.InputSignal<string[] | undefined>;
179
+ readonly orderBy: _angular_core.InputSignal<string | undefined>;
180
+ readonly sort: _angular_core.InputSignal<string | undefined>;
181
181
  readonly debounceTime: _angular_core.InputSignal<number>;
182
182
  clueControl: FormControl;
183
183
  constructor(hostService: LuApiHybridService<T>, selfService: LuApiHybridService<T>);
@@ -217,11 +217,11 @@ declare abstract class ALuApiOptionPager<T extends ILuApiItem = ILuApiItem, S ex
217
217
  }
218
218
 
219
219
  declare class LuApiPagerComponent<T extends ILuApiItem = ILuApiItem> extends ALuApiOptionPager<T, LuApiHybridService<T>> implements ILuOptionOperator<T>, OnInit, ILuOnScrollBottomSubscriber, ILuOnOpenSubscriber {
220
- readonly standard: _angular_core.InputSignal<"v3" | "v4">;
221
- readonly api: _angular_core.InputSignal<string>;
222
- readonly fields: _angular_core.InputSignal<string>;
223
- readonly filters: _angular_core.InputSignal<string[]>;
224
- readonly orderBy: _angular_core.InputSignal<string>;
220
+ readonly standard: _angular_core.InputSignal<"v3" | "v4" | undefined>;
221
+ readonly api: _angular_core.InputSignal<string | undefined>;
222
+ readonly fields: _angular_core.InputSignal<string | undefined>;
223
+ readonly filters: _angular_core.InputSignal<string[] | undefined>;
224
+ readonly orderBy: _angular_core.InputSignal<string | undefined>;
225
225
  constructor(hostService: LuApiHybridService<T>, selfService: LuApiHybridService<T>);
226
226
  ngOnInit(): void;
227
227
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<LuApiPagerComponent<any>, [{ optional: true; skipSelf: true; }, { self: true; }]>;
@@ -235,20 +235,20 @@ declare class LuApiSelectInputComponent<T extends ILuApiItem = ILuApiItem> exten
235
235
  protected _viewContainerRef: ViewContainerRef;
236
236
  protected _renderer: Renderer2;
237
237
  readonly standard: _angular_core.InputSignal<"v3" | "v4">;
238
- readonly api: _angular_core.InputSignal<string>;
238
+ readonly api: _angular_core.InputSignal<string | undefined>;
239
239
  /**
240
240
  * only works with standard="v3"
241
241
  */
242
- readonly fields: _angular_core.InputSignal<string>;
243
- readonly filters: _angular_core.InputSignal<string[]>;
242
+ readonly fields: _angular_core.InputSignal<string | undefined>;
243
+ readonly filters: _angular_core.InputSignal<string[] | undefined>;
244
244
  /**
245
245
  * only works with standard="v3", otherwise use sort
246
246
  */
247
- readonly orderBy: _angular_core.InputSignal<string>;
247
+ readonly orderBy: _angular_core.InputSignal<string | undefined>;
248
248
  /**
249
249
  * only works with standard="v4", otherwise use orderBy
250
250
  */
251
- readonly sort: _angular_core.InputSignal<string>;
251
+ readonly sort: _angular_core.InputSignal<string | undefined>;
252
252
  byId: LuOptionComparer<T>;
253
253
  constructor(_changeDetectorRef: ChangeDetectorRef, _overlay: Overlay, _elementRef: ElementRef<HTMLElement>, _viewContainerRef: ViewContainerRef, _renderer: Renderer2);
254
254
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<LuApiSelectInputComponent<any>, never>;
@@ -13,26 +13,34 @@ declare class ApprobationInboxDetailMainBlockComponent {
13
13
 
14
14
  interface LuApprobationInboxDetailHeaderTranslations {
15
15
  delegation: string;
16
+ overdue: string;
16
17
  }
17
18
 
18
19
  declare class ApprobationInboxHeaderComponent {
19
- protected readonly dialogRef: LuDialogRef<any, any>;
20
- protected readonly intl: LuApprobationInboxDetailHeaderTranslations;
20
+ protected readonly dialogRef: LuDialogRef<any, any> | null;
21
21
  readonly label: _angular_core.InputSignal<string>;
22
- readonly delegatedBy: _angular_core.InputSignal<string>;
23
- readonly actions: _angular_core.Signal<TemplateRef<unknown>>;
22
+ readonly delegatedBy: _angular_core.InputSignal<string | null>;
23
+ /**
24
+ * Displays an overdue status badge next to the title. Ignored when content is projected in [approbationInboxDetailTitleTrailing]
25
+ */
26
+ readonly overdue: _angular_core.InputSignalWithTransform<boolean, unknown>;
27
+ /**
28
+ * Overrides default translations
29
+ */
30
+ readonly intl: _angular_core.InputSignalWithTransform<LuApprobationInboxDetailHeaderTranslations, Partial<LuApprobationInboxDetailHeaderTranslations>>;
31
+ readonly actions: _angular_core.Signal<TemplateRef<unknown> | undefined>;
24
32
  readonly titleId: string;
25
33
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ApprobationInboxHeaderComponent, never>;
26
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ApprobationInboxHeaderComponent, "lu-approbation-inbox-detail-header", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; "delegatedBy": { "alias": "delegatedBy"; "required": false; "isSignal": true; }; }, {}, never, ["[approbationInboxDetailIllustration]", "*", "[approbationInboxDetailActions]"], true, never>;
34
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ApprobationInboxHeaderComponent, "lu-approbation-inbox-detail-header", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; "delegatedBy": { "alias": "delegatedBy"; "required": false; "isSignal": true; }; "overdue": { "alias": "overdue"; "required": false; "isSignal": true; }; "intl": { "alias": "intl"; "required": false; "isSignal": true; }; }, {}, never, ["[approbationInboxDetailIllustration]", "[approbationInboxDetailTitleTrailing]", "*", "[approbationInboxDetailActions]"], true, never>;
27
35
  }
28
36
 
29
37
  declare class ApprobationInboxDetailComponent {
30
- protected readonly dialogRef: LuDialogRef<any, any>;
38
+ protected readonly dialogRef: LuDialogRef<any, any> | null;
31
39
  readonly insideDialog: _angular_core.InputSignalWithTransform<boolean, unknown>;
32
- readonly headerRef: _angular_core.Signal<ApprobationInboxHeaderComponent>;
33
- readonly content: _angular_core.Signal<TemplateRef<unknown>>;
34
- readonly header: _angular_core.Signal<TemplateRef<unknown>>;
35
- readonly titleId: _angular_core.Signal<string>;
40
+ readonly headerRef: _angular_core.Signal<ApprobationInboxHeaderComponent | undefined>;
41
+ readonly content: _angular_core.Signal<TemplateRef<unknown> | undefined>;
42
+ readonly header: _angular_core.Signal<TemplateRef<unknown> | undefined>;
43
+ readonly titleId: _angular_core.Signal<string | undefined>;
36
44
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ApprobationInboxDetailComponent, never>;
37
45
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ApprobationInboxDetailComponent, "lu-approbation-inbox-detail", never, { "insideDialog": { "alias": "insideDialog"; "required": false; "isSignal": true; }; }, {}, ["headerRef"], ["[approbationInboxDetailHeader]", "*"], true, never>;
38
46
  }
@@ -41,7 +49,7 @@ declare class ApprobationInboxLinkComponent {
41
49
  private readonly listInstance;
42
50
  readonly current: _angular_core.InputSignalWithTransform<boolean, unknown>;
43
51
  readonly dialogService: LuDialogService;
44
- readonly mediaMinM: _angular_core.Signal<boolean>;
52
+ readonly mediaMinM: _angular_core.Signal<boolean | undefined>;
45
53
  openDialog($event: Event): void;
46
54
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ApprobationInboxLinkComponent, never>;
47
55
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ApprobationInboxLinkComponent, "a[lu-approbation-inbox-list-action]", never, { "current": { "alias": "current"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
@@ -14,7 +14,7 @@ declare const LU_BUBBLE_ICON_DEFAULT_DIRECTION: InjectionToken<"top" | "bottom"
14
14
 
15
15
  declare class BubbleIconComponent {
16
16
  readonly icon: _angular_core.InputSignal<LuccaIcon>;
17
- readonly alt: _angular_core.InputSignal<string>;
17
+ readonly alt: _angular_core.InputSignal<string | null>;
18
18
  readonly size: _angular_core.InputSignal<"XS" | "S" | "M" | "L">;
19
19
  readonly palette: _angular_core.InputSignal<"error" | "success" | "warning" | "product" | "neutral" | "none" | "brand" | "kiwi" | "lime" | "cucumber" | "mint" | "glacier" | "lagoon" | "blueberry" | "lavender" | "grape" | "watermelon" | "pumpkin" | "pineapple" | "pagga" | "poplee" | "coreHR" | "timmi" | "cleemy" | "cc">;
20
20
  readonly paletteClass: _angular_core.Signal<{
@@ -22,7 +22,7 @@ declare class CalloutDisclosureComponent {
22
22
  * Which icon should we display in the disclosure callout if any?
23
23
  * Defaults to no icon.
24
24
  */
25
- readonly icon: _angular_core.InputSignal<LuccaIcon>;
25
+ readonly icon: _angular_core.InputSignal<LuccaIcon | undefined>;
26
26
  /**
27
27
  * Which palette should be used for the entire disclosure callout.
28
28
  * Defaults to none (inherits parent palette)
@@ -39,7 +39,7 @@ declare class CalloutDisclosureComponent {
39
39
  * If one of the icon or palette inputs are filled along with the state input, their values will have the priority over
40
40
  * state (so setting state to success and palette to warning will make the palette warning)
41
41
  */
42
- readonly state: _angular_core.InputSignal<"success" | "warning" | "error">;
42
+ readonly state: _angular_core.InputSignal<"success" | "warning" | "error" | undefined>;
43
43
  /**
44
44
  * Is the disclosure callout is open by default
45
45
  */
@@ -72,11 +72,11 @@ declare class CalloutFeedbackListComponent {
72
72
  * Which palette should be used for the entire feedback list callout.
73
73
  * Defaults to none (inherits parent palette)
74
74
  */
75
- readonly palette: _angular_core.InputSignal<"success" | "warning" | "error" | "product" | "neutral" | "none" | "brand">;
75
+ readonly palette: _angular_core.InputSignal<"success" | "warning" | "error" | "product" | "neutral" | "none" | "brand" | undefined>;
76
76
  /**
77
77
  * Which size should the feedback list callout be? Defaults to medium
78
78
  */
79
- readonly size: _angular_core.InputSignal<"M" | "S">;
79
+ readonly size: _angular_core.InputSignal<"M" | "S" | undefined>;
80
80
  constructor();
81
81
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<CalloutFeedbackListComponent, never>;
82
82
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<CalloutFeedbackListComponent, "ul[lu-callout-feedback-list]", never, { "palette": { "alias": "palette"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
@@ -94,7 +94,7 @@ declare class CalloutPopoverComponent {
94
94
  /**
95
95
  * Label (visual only) to put inside the button, often used to show just a number
96
96
  */
97
- readonly buttonLabel: _angular_core.InputSignal<string | number>;
97
+ readonly buttonLabel: _angular_core.InputSignal<string | number | undefined>;
98
98
  /**
99
99
  * Alternative for the button
100
100
  */
@@ -111,11 +111,11 @@ declare class CalloutPopoverComponent {
111
111
  /**
112
112
  * Size for both button and popover content
113
113
  */
114
- readonly size: _angular_core.InputSignal<"M" | "S" | "XS">;
114
+ readonly size: _angular_core.InputSignal<"M" | "S" | "XS" | undefined>;
115
115
  /**
116
116
  * Icon shows in button and next to popover's title
117
117
  */
118
- readonly icon: _angular_core.InputSignal<LuccaIcon>;
118
+ readonly icon: _angular_core.InputSignal<LuccaIcon | undefined>;
119
119
  /**
120
120
  * State is a shorthand to set the icon and the palette to the recommended values for the icon and palette based on
121
121
  * the provided state.
@@ -123,11 +123,11 @@ declare class CalloutPopoverComponent {
123
123
  * If one of the icon or palette inputs are filled along with the state input, their values will have the priority over
124
124
  * state (so setting state to success and palette to warning will make the palette warning)
125
125
  */
126
- readonly state: _angular_core.InputSignal<"success" | "warning" | "error">;
126
+ readonly state: _angular_core.InputSignal<"success" | "warning" | "error" | undefined>;
127
127
  /**
128
128
  * Heading for the details popover
129
129
  */
130
- readonly heading: _angular_core.InputSignal<PortalContent>;
130
+ readonly heading: _angular_core.InputSignal<PortalContent | undefined>;
131
131
  /**
132
132
  * Defines callout popover open position above by default
133
133
  */
@@ -135,13 +135,13 @@ declare class CalloutPopoverComponent {
135
135
  /**
136
136
  * Defines custom callout popover open position override popoverPosition
137
137
  */
138
- readonly customPopoverPositions: _angular_core.InputSignal<ConnectionPositionPair[]>;
138
+ readonly customPopoverPositions: _angular_core.InputSignal<ConnectionPositionPair[] | undefined>;
139
139
  /**
140
140
  * Disable callout popover apparition
141
141
  */
142
142
  readonly popoverDisabled: _angular_core.InputSignalWithTransform<boolean, boolean | "" | "false" | "true">;
143
143
  readonly feedbackItems: _angular_core.Signal<readonly CalloutFeedbackItemComponent[]>;
144
- readonly contentSize: _angular_core.Signal<"M" | "S">;
144
+ readonly contentSize: _angular_core.Signal<"M" | "S" | undefined>;
145
145
  readonly calloutOverlayClasses: _angular_core.Signal<{
146
146
  [x: string]: boolean;
147
147
  }>;
@@ -183,11 +183,11 @@ declare class CalloutComponent {
183
183
  /**
184
184
  * The title of the callout
185
185
  */
186
- readonly heading: _angular_core.InputSignal<PortalContent>;
186
+ readonly heading: _angular_core.InputSignal<PortalContent | undefined>;
187
187
  /**
188
188
  * Define the aria level of the title
189
189
  */
190
- readonly hx: _angular_core.InputSignalWithTransform<2 | 3 | 1 | 4 | 5 | 6, 2 | 3 | 1 | 4 | 5 | 6 | "1" | "2" | "3" | "4" | "5" | "6">;
190
+ readonly hx: _angular_core.InputSignalWithTransform<2 | 3 | 1 | 4 | 5 | 6 | null, 2 | 3 | 1 | 4 | 5 | 6 | "1" | "2" | "3" | "4" | "5" | "6">;
191
191
  /**
192
192
  * Which palette should be used for the entire callout.
193
193
  * Defaults to none (inherits parent palette)
@@ -196,7 +196,7 @@ declare class CalloutComponent {
196
196
  /**
197
197
  * Which size should the callout be? Defaults to medium
198
198
  */
199
- readonly size: _angular_core.InputSignal<"M" | "S">;
199
+ readonly size: _angular_core.InputSignal<"M" | "S" | undefined>;
200
200
  /**
201
201
  * State is a shorthand to set the icon and the palette to the recommended values for the icon and palette based on
202
202
  * the provided state.
@@ -204,12 +204,12 @@ declare class CalloutComponent {
204
204
  * If one of the icon or palette inputs are filled along with the state input, their values will have the priority over
205
205
  * state (so setting state to success and palette to warning will make the palette warning)
206
206
  */
207
- readonly state: _angular_core.InputSignal<"success" | "warning" | "error">;
207
+ readonly state: _angular_core.InputSignal<"success" | "warning" | "error" | undefined>;
208
208
  /**
209
209
  * Which icon should we display in the callout if any?
210
210
  * Defaults to no icon.
211
211
  */
212
- readonly icon: _angular_core.InputSignal<LuccaIcon>;
212
+ readonly icon: _angular_core.InputSignal<LuccaIcon | undefined>;
213
213
  /**
214
214
  * Should we display the remove icon?
215
215
  */
@@ -221,7 +221,7 @@ declare class CalloutComponent {
221
221
  /**
222
222
  * Defines the icon’s alt attribute used for accessibility
223
223
  */
224
- readonly iconAlt: _angular_core.InputSignal<string>;
224
+ readonly iconAlt: _angular_core.InputSignal<string | null>;
225
225
  /**
226
226
  * Displayed in AI mode
227
227
  */
@@ -27,7 +27,7 @@ declare class ChipComponent {
27
27
  * Which palette should be used for the entire chip.
28
28
  * Defaults to none (inherits parent palette)
29
29
  */
30
- readonly palette: _angular_core.InputSignal<string>;
30
+ readonly palette: _angular_core.InputSignal<string | undefined>;
31
31
  /**
32
32
  * Disabled the chip
33
33
  */
@@ -35,7 +35,7 @@ declare class ChipComponent {
35
35
  /**
36
36
  * Which size should the chip be? Defaults to the regular size, `S` for small
37
37
  */
38
- readonly size: _angular_core.InputSignal<"S">;
38
+ readonly size: _angular_core.InputSignal<"S" | null>;
39
39
  /**
40
40
  * State is a shorthand to set the icon and the palette to the recommended values for the icon and palette based on
41
41
  * the provided state.
@@ -43,12 +43,12 @@ declare class ChipComponent {
43
43
  * If one of the icon or palette inputs are filled along with the state input, their values will have the priority over
44
44
  * state (so setting state to success and palette to warning will make the palette warning)
45
45
  */
46
- readonly state: _angular_core.InputSignal<"warning" | "critical">;
46
+ readonly state: _angular_core.InputSignal<"warning" | "critical" | null>;
47
47
  /**
48
48
  * Which icon should we display in the chip if any?
49
49
  * Defaults to no icon.
50
50
  */
51
- readonly icon: _angular_core.InputSignal<LuccaIcon>;
51
+ readonly icon: _angular_core.InputSignal<LuccaIcon | null>;
52
52
  /**
53
53
  * Emit event when button kill is click
54
54
  */
@@ -56,8 +56,8 @@ declare class ChipComponent {
56
56
  readonly stateAlt: _angular_core.Signal<string>;
57
57
  readonly isWarning: _angular_core.Signal<boolean>;
58
58
  readonly isCritical: _angular_core.Signal<boolean>;
59
- readonly displayedIcon: _angular_core.Signal<LuccaIcon>;
60
- protected readonly tooltipTriggerAnchor: _angular_core.Signal<HTMLElement>;
59
+ readonly displayedIcon: _angular_core.Signal<LuccaIcon | null>;
60
+ protected readonly tooltipTriggerAnchor: _angular_core.Signal<HTMLElement | undefined>;
61
61
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ChipComponent, never>;
62
62
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ChipComponent, "lu-chip, button[luChip], a[luChip]", never, { "intl": { "alias": "intl"; "required": false; "isSignal": true; }; "withEllipsis": { "alias": "withEllipsis"; "required": false; "isSignal": true; }; "unkillable": { "alias": "unkillable"; "required": false; "isSignal": true; }; "palette": { "alias": "palette"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; }, { "kill": "kill"; }, never, ["*"], true, never>;
63
63
  }
@@ -23,7 +23,7 @@ declare class ClearComponent<T> extends ALuClear<T> implements ILuClear<T> {
23
23
  /**
24
24
  * Which size should the clear be? Defaults to the regular size, `S` for small
25
25
  */
26
- readonly size: _angular_core.InputSignal<"S">;
26
+ readonly size: _angular_core.InputSignal<"S" | null>;
27
27
  /**
28
28
  * Disabled the clear
29
29
  */
@@ -7,9 +7,9 @@ declare const COLOR_SIZE: readonly ["L", "XL"];
7
7
  type ColorSize = (typeof COLOR_SIZE)[number];
8
8
 
9
9
  declare class ColorComponent {
10
- readonly value: _angular_core.InputSignal<string>;
11
- readonly borderColor: _angular_core.InputSignal<string>;
12
- readonly size: _angular_core.InputSignal<"L" | "XL">;
10
+ readonly value: _angular_core.InputSignal<string | null>;
11
+ readonly borderColor: _angular_core.InputSignal<string | null>;
12
+ readonly size: _angular_core.InputSignal<"L" | "XL" | null>;
13
13
  readonly hiddenName: _angular_core.InputSignalWithTransform<boolean, boolean | "" | "false" | "true">;
14
14
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ColorComponent, never>;
15
15
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ColorComponent, "lu-color", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "borderColor": { "alias": "borderColor"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "hiddenName": { "alias": "hiddenName"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
@@ -5,23 +5,23 @@ import { PortalContent } from '@lucca-front/ng/core';
5
5
  declare class CommentComponent {
6
6
  #private;
7
7
  readonly content: _angular_core.InputSignal<PortalContent>;
8
- readonly date: _angular_core.InputSignal<Date>;
8
+ readonly date: _angular_core.InputSignal<Date | undefined>;
9
9
  /**
10
10
  * format given to the date pipe for display.
11
11
  *
12
12
  * See https://angular.dev/api/common/DatePipe#custom-format-options
13
13
  */
14
- readonly datePipeFormat: _angular_core.InputSignal<string>;
15
- readonly noAvatar: _angular_core.Signal<boolean>;
16
- readonly avatar: _angular_core.Signal<_angular_core.TemplateRef<unknown>>;
17
- readonly authorName: _angular_core.Signal<PortalContent>;
18
- readonly size: _angular_core.Signal<"S" | "M">;
14
+ readonly datePipeFormat: _angular_core.InputSignal<string | undefined>;
15
+ readonly noAvatar: _angular_core.Signal<boolean | undefined>;
16
+ readonly avatar: _angular_core.Signal<_angular_core.TemplateRef<unknown> | undefined>;
17
+ readonly authorName: _angular_core.Signal<PortalContent | undefined>;
18
+ readonly size: _angular_core.Signal<"S" | "M" | undefined>;
19
19
  readonly contentIsPortal: _angular_core.Signal<boolean>;
20
20
  readonly contentIsHTML: _angular_core.Signal<boolean>;
21
21
  readonly noInfos: _angular_core.InputSignalWithTransform<boolean, boolean | "" | "false" | "true">;
22
22
  readonly plainText: _angular_core.InputSignalWithTransform<boolean, boolean | "" | "false" | "true">;
23
23
  readonly dateDisplay: _angular_core.Signal<string>;
24
- readonly role: _angular_core.Signal<string>;
24
+ readonly role: _angular_core.Signal<"listitem" | null>;
25
25
  get roleAttr(): string | null;
26
26
  isStringPortalContent(message: PortalContent): message is string;
27
27
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<CommentComponent, never>;
@@ -39,15 +39,15 @@ declare class CommentBlockComponent {
39
39
  */
40
40
  readonly small: _angular_core.InputSignalWithTransform<boolean, boolean | "" | "false" | "true">;
41
41
  readonly chatAnswer: _angular_core.InputSignalWithTransform<boolean, boolean | "" | "false" | "true">;
42
- readonly authorName: _angular_core.InputSignal<PortalContent>;
43
- readonly avatar: _angular_core.InputSignal<TemplateRef<unknown>>;
42
+ readonly authorName: _angular_core.InputSignal<PortalContent | undefined>;
43
+ readonly avatar: _angular_core.InputSignal<TemplateRef<unknown> | undefined>;
44
44
  /**
45
45
  * Which size should each comment of the block be? `S` applies the small size
46
46
  */
47
- readonly size: _angular_core.InputSignal<"S" | "M">;
47
+ readonly size: _angular_core.InputSignal<"S" | "M" | undefined>;
48
48
  readonly noAvatar: _angular_core.Signal<boolean>;
49
49
  readonly isSingleComment: _angular_core.Signal<boolean>;
50
- readonly role = "listitem";
50
+ readonly role: string | null;
51
51
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<CommentBlockComponent, never>;
52
52
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<CommentBlockComponent, "lu-comment-block", never, { "compact": { "alias": "compact"; "required": false; "isSignal": true; }; "small": { "alias": "small"; "required": false; "isSignal": true; }; "chatAnswer": { "alias": "chatAnswer"; "required": false; "isSignal": true; }; "authorName": { "alias": "authorName"; "required": false; "isSignal": true; }; "avatar": { "alias": "avatar"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, ["comments"], ["*"], true, never>;
53
53
  }