@lucca-front/ng 21.0.0-rc.4 → 21.0.0-rc.5

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 (102) hide show
  1. package/app-layout/index.d.ts +1 -1
  2. package/box/index.d.ts +3 -3
  3. package/breadcrumbs/index.d.ts +3 -3
  4. package/button/index.d.ts +26 -21
  5. package/callout/index.d.ts +65 -57
  6. package/chip/index.d.ts +1 -1
  7. package/code/index.d.ts +1 -1
  8. package/comment/index.d.ts +11 -14
  9. package/core/index.d.ts +10 -7
  10. package/core-select/index.d.ts +6 -4
  11. package/core-select/user/index.d.ts +3 -2
  12. package/dialog/index.d.ts +21 -5
  13. package/empty-state/index.d.ts +23 -26
  14. package/fancy-box/index.d.ts +11 -10
  15. package/fesm2022/lucca-front-ng-app-layout.mjs.map +1 -1
  16. package/fesm2022/lucca-front-ng-box.mjs.map +1 -1
  17. package/fesm2022/lucca-front-ng-breadcrumbs.mjs.map +1 -1
  18. package/fesm2022/lucca-front-ng-button.mjs +59 -90
  19. package/fesm2022/lucca-front-ng-button.mjs.map +1 -1
  20. package/fesm2022/lucca-front-ng-callout.mjs +96 -130
  21. package/fesm2022/lucca-front-ng-callout.mjs.map +1 -1
  22. package/fesm2022/lucca-front-ng-chip.mjs.map +1 -1
  23. package/fesm2022/lucca-front-ng-code.mjs.map +1 -1
  24. package/fesm2022/lucca-front-ng-comment.mjs +14 -34
  25. package/fesm2022/lucca-front-ng-comment.mjs.map +1 -1
  26. package/fesm2022/lucca-front-ng-core-select-api.mjs +3 -3
  27. package/fesm2022/lucca-front-ng-core-select-api.mjs.map +1 -1
  28. package/fesm2022/lucca-front-ng-core-select-user.mjs +14 -11
  29. package/fesm2022/lucca-front-ng-core-select-user.mjs.map +1 -1
  30. package/fesm2022/lucca-front-ng-core-select.mjs +14 -20
  31. package/fesm2022/lucca-front-ng-core-select.mjs.map +1 -1
  32. package/fesm2022/lucca-front-ng-core.mjs +6 -4
  33. package/fesm2022/lucca-front-ng-core.mjs.map +1 -1
  34. package/fesm2022/lucca-front-ng-dialog.mjs +22 -25
  35. package/fesm2022/lucca-front-ng-dialog.mjs.map +1 -1
  36. package/fesm2022/lucca-front-ng-empty-state.mjs +27 -68
  37. package/fesm2022/lucca-front-ng-empty-state.mjs.map +1 -1
  38. package/fesm2022/lucca-front-ng-fancy-box.mjs +14 -28
  39. package/fesm2022/lucca-front-ng-fancy-box.mjs.map +1 -1
  40. package/fesm2022/lucca-front-ng-file-upload.mjs +1 -1
  41. package/fesm2022/lucca-front-ng-file-upload.mjs.map +1 -1
  42. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs +15 -17
  43. package/fesm2022/lucca-front-ng-forms-phone-number-input.mjs.map +1 -1
  44. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs +2 -2
  45. package/fesm2022/lucca-front-ng-forms-rich-text-input.mjs.map +1 -1
  46. package/fesm2022/lucca-front-ng-forms.mjs +99 -187
  47. package/fesm2022/lucca-front-ng-forms.mjs.map +1 -1
  48. package/fesm2022/lucca-front-ng-icon.mjs +14 -19
  49. package/fesm2022/lucca-front-ng-icon.mjs.map +1 -1
  50. package/fesm2022/lucca-front-ng-inline-message.mjs +15 -22
  51. package/fesm2022/lucca-front-ng-inline-message.mjs.map +1 -1
  52. package/fesm2022/lucca-front-ng-link.mjs +20 -28
  53. package/fesm2022/lucca-front-ng-link.mjs.map +1 -1
  54. package/fesm2022/lucca-front-ng-mobile-push.mjs +4 -8
  55. package/fesm2022/lucca-front-ng-mobile-push.mjs.map +1 -1
  56. package/fesm2022/lucca-front-ng-modal.mjs +1 -1
  57. package/fesm2022/lucca-front-ng-modal.mjs.map +1 -1
  58. package/fesm2022/lucca-front-ng-multi-select.mjs +1 -1
  59. package/fesm2022/lucca-front-ng-multi-select.mjs.map +1 -1
  60. package/fesm2022/lucca-front-ng-new-badge.mjs +7 -11
  61. package/fesm2022/lucca-front-ng-new-badge.mjs.map +1 -1
  62. package/fesm2022/lucca-front-ng-numeric-badge.mjs +40 -39
  63. package/fesm2022/lucca-front-ng-numeric-badge.mjs.map +1 -1
  64. package/fesm2022/lucca-front-ng-plg-push.mjs +8 -17
  65. package/fesm2022/lucca-front-ng-plg-push.mjs.map +1 -1
  66. package/fesm2022/lucca-front-ng-scroll.mjs +19 -29
  67. package/fesm2022/lucca-front-ng-scroll.mjs.map +1 -1
  68. package/fesm2022/lucca-front-ng-simple-select.mjs +1 -1
  69. package/fesm2022/lucca-front-ng-simple-select.mjs.map +1 -1
  70. package/fesm2022/lucca-front-ng-skeleton.mjs +24 -40
  71. package/fesm2022/lucca-front-ng-skeleton.mjs.map +1 -1
  72. package/fesm2022/lucca-front-ng-tag.mjs +31 -42
  73. package/fesm2022/lucca-front-ng-tag.mjs.map +1 -1
  74. package/fesm2022/lucca-front-ng-time.mjs +8 -18
  75. package/fesm2022/lucca-front-ng-time.mjs.map +1 -1
  76. package/fesm2022/lucca-front-ng-toast.mjs +55 -60
  77. package/fesm2022/lucca-front-ng-toast.mjs.map +1 -1
  78. package/fesm2022/lucca-front-ng-tooltip.mjs +86 -107
  79. package/fesm2022/lucca-front-ng-tooltip.mjs.map +1 -1
  80. package/fesm2022/lucca-front-ng-user.mjs +58 -96
  81. package/fesm2022/lucca-front-ng-user.mjs.map +1 -1
  82. package/fesm2022/lucca-front-ng-vertical-navigation.mjs +6 -6
  83. package/fesm2022/lucca-front-ng-vertical-navigation.mjs.map +1 -1
  84. package/forms/index.d.ts +54 -62
  85. package/forms/phone-number-input/index.d.ts +13 -13
  86. package/icon/index.d.ts +10 -10
  87. package/inline-message/index.d.ts +9 -11
  88. package/link/index.d.ts +11 -13
  89. package/mobile-push/index.d.ts +5 -6
  90. package/new-badge/index.d.ts +2 -3
  91. package/numeric-badge/index.d.ts +14 -11
  92. package/package.json +37 -37
  93. package/plg-push/index.d.ts +6 -8
  94. package/read-more/index.d.ts +1 -1
  95. package/scroll/index.d.ts +20 -22
  96. package/skeleton/index.d.ts +27 -32
  97. package/tag/index.d.ts +17 -15
  98. package/time/index.d.ts +5 -5
  99. package/toast/index.d.ts +23 -25
  100. package/tooltip/index.d.ts +35 -41
  101. package/user/index.d.ts +24 -32
  102. package/vertical-navigation/index.d.ts +16 -16
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-new-badge.mjs","sources":["../../../packages/ng/new-badge/new-badge.component.ts","../../../packages/ng/new-badge/new-badge.component.html","../../../packages/ng/new-badge/lucca-front-ng-new-badge.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\tselector: 'lu-new-badge',\n\ttemplateUrl: './new-badge.component.html',\n\tstyleUrl: './new-badge.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class NewBadgeComponent {\n\t@Input({ required: true })\n\tlabel: string;\n\n\t@HostBinding('class.newBadge')\n\tnewBadge = true;\n}\n","{{ label }}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MASa,iBAAiB,CAAA;AAP9B,IAAA,WAAA,GAAA;QAYC,IAAQ,CAAA,QAAA,GAAG,IAAI;AACf;8GANY,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,iKCT9B,eACA,EAAA,MAAA,EAAA,CAAA,0oBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FDQa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAP7B,SAAS;AACC,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,mBAGP,uBAAuB,CAAC,MAAM,EAChC,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,0oBAAA,CAAA,EAAA;8BAIrC,KAAK,EAAA,CAAA;sBADJ,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAIzB,QAAQ,EAAA,CAAA;sBADP,WAAW;uBAAC,gBAAgB;;;AEb9B;;AAEG;;;;"}
1
+ {"version":3,"file":"lucca-front-ng-new-badge.mjs","sources":["../../../packages/ng/new-badge/new-badge.component.ts","../../../packages/ng/new-badge/new-badge.component.html","../../../packages/ng/new-badge/lucca-front-ng-new-badge.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n\tselector: 'lu-new-badge',\n\ttemplateUrl: './new-badge.component.html',\n\tstyleUrl: './new-badge.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n\thost: {\n\t\tclass: 'newBadge',\n\t},\n})\nexport class NewBadgeComponent {\n\treadonly label = input.required<string>();\n}\n","{{ label() }}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAYa,iBAAiB,CAAA;AAV9B,IAAA,WAAA,GAAA;AAWU,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAU;AACzC;8GAFY,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,iPCZ9B,iBACA,EAAA,MAAA,EAAA,CAAA,0oBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FDWa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAV7B,SAAS;+BACC,cAAc,EAAA,eAAA,EAGP,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI,EAC/B,IAAA,EAAA;AACL,wBAAA,KAAK,EAAE,UAAU;AACjB,qBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,0oBAAA,CAAA,EAAA;;;AEVF;;AAEG;;;;"}
@@ -1,33 +1,55 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, input, booleanAttribute, Input, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
- import { LuClass } from '@lucca-front/ng/core';
2
+ import { inject, input, booleanAttribute, computed, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { LuClass, ɵeffectWithDeps as _effectWithDeps } from '@lucca-front/ng/core';
4
4
  import * as i1 from '@lucca-front/ng/tooltip';
5
5
  import { LuTooltipModule } from '@lucca-front/ng/tooltip';
6
6
 
7
7
  class NumericBadgeComponent {
8
+ #luClass;
8
9
  constructor() {
9
10
  this.#luClass = inject(LuClass);
11
+ /**
12
+ * The value to display, number or string contains number only.
13
+ */
14
+ this.value = input.required();
15
+ /**
16
+ * The size of the badge
17
+ */
18
+ this.size = input();
19
+ /**
20
+ * The palette to use for this badge. Defaults to 'none' (inherits parent palette)
21
+ */
22
+ this.palette = input('none');
10
23
  this.loading = input(false, { transform: booleanAttribute });
11
- this.maxValue = 999;
24
+ this.maxValue = input(999);
12
25
  this.disableTooltip = input(false, { transform: booleanAttribute });
13
- this.palette = 'none';
14
- this.displayValue = () => {
15
- if (typeof this.value === 'number') {
16
- return +this.value > this.maxValue ? `${this.maxValue}+` : this.value;
26
+ this.numericBadgeClasses = computed(() => {
27
+ const palette = this.palette();
28
+ const size = this.size();
29
+ return { [`palette-${palette}`]: !!this.palette(), [`mod-${size}`]: !!this.size() };
30
+ });
31
+ this.displayValue = computed(() => {
32
+ const value = this.value();
33
+ const maxValue = this.maxValue();
34
+ if (typeof value === 'number') {
35
+ return +value > maxValue ? `${maxValue}+` : value;
17
36
  }
18
37
  else {
19
- return this.value;
38
+ return value;
20
39
  }
21
- };
22
- }
23
- #luClass;
24
- ngOnChanges(changes) {
25
- if (changes['palette']?.currentValue || changes['size']?.currentValue) {
26
- this.#luClass.setState({ [`palette-${this.palette}`]: !!this.palette, [`mod-${this.size}`]: !!this.size });
27
- }
40
+ });
41
+ this.isDisabled = computed(() => {
42
+ const value = this.value();
43
+ return this.disableTooltip() || typeof value !== 'number' || this.loading() || this.maxValue() >= +value;
44
+ });
45
+ _effectWithDeps([this.numericBadgeClasses], (numericBadgeClasses) => {
46
+ if (numericBadgeClasses) {
47
+ this.#luClass.setState(numericBadgeClasses);
48
+ }
49
+ });
28
50
  }
29
51
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.2", ngImport: i0, type: NumericBadgeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.2", type: NumericBadgeComponent, isStandalone: true, selector: "lu-numeric-badge", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: false, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, maxValue: { classPropertyName: "maxValue", publicName: "maxValue", isSignal: false, isRequired: false, transformFunction: null }, disableTooltip: { classPropertyName: "disableTooltip", publicName: "disableTooltip", isSignal: true, isRequired: false, transformFunction: null }, palette: { classPropertyName: "palette", publicName: "palette", isSignal: false, isRequired: false, transformFunction: null } }, host: { properties: { "class.is-loading": "loading()", "attr.aria-hidden": "loading()" }, classAttribute: "numericBadge" }, providers: [LuClass], usesOnChanges: true, ngImport: i0, template: "<span\n\tclass=\"numericBadge-value\"\n\t[luTooltip]=\"value\"\n\t[luTooltipDisabled]=\"disableTooltip() || typeof this.value !== 'number' || loading || maxValue >= +value\"\n\t>{{ this.displayValue() }}</span\n>\n", styles: ["@charset \"UTF-8\";@layer components{.numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-neutral-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-neutral-700));--components-numericBadge-loadingColor: var(--palettes-500, var(--palettes-neutral-500));--components-numericBadge-size: 1.5rem;--components-numericBadge-font: var(--pr-t-font-body-S);--components-numericBadge-borderRadius: var(--pr-t-border-radius-default);--components-numericBadge-fontSize: var(--pr-t-font-body-S-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-S-lineHeight);display:inline-flex;align-items:center;justify-content:center;block-size:var(--components-numericBadge-size);min-inline-size:var(--components-numericBadge-size);padding:var(--pr-t-spacings-50);font:var(--components-numericBadge-font);font-size:var(--components-numericBadge-fontSize);line-height:var(--components-numericBadge-lineHeight);font-weight:var(--pr-t-font-fontWeight-semibold);background-color:var(--components-numericBadge-background);color:var(--components-numericBadge-color);border-radius:var(--components-numericBadge-borderRadius);transition-timing-function:ease;white-space:nowrap;position:relative;transition-duration:var(--commons-animations-durations-fast);transition-property:color}.numericBadge:empty:before{content:\"\\a0\"/\"\"}.numericBadge-value{outline:none}}@layer mods{.numericBadge.mod-S{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.numericBadge.mod-XS{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.numericBadge.is-loading{--commons-loading-frontground: var(--components-numericBadge-loadingColor);--commons-loading-borderWidth: 2px;--components-numericBadge-color: transparent}.numericBadge.is-loading:after{content:\"\";inline-size:calc(var(--components-numericBadge-size) - var(--pr-t-spacings-100));block-size:calc(var(--components-numericBadge-size) - var(--pr-t-spacings-100));border-radius:var(--pr-t-border-radius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.numericBadge.is-loading.mod-S{--commons-loading-borderWidth: 1.5px}.numericBadge.is-loading.mod-XS{--commons-loading-borderWidth: 1px}.numericBadge:focus-within{outline:2px solid var(--palettes-product-700);outline-offset:2px}}@layer base{lu-numeric-badge{display:inline-flex}}\n"], dependencies: [{ kind: "ngmodule", type: LuTooltipModule }, { kind: "directive", type: i1.LuTooltipTriggerDirective, selector: "[luTooltip]", inputs: ["luTooltip", "luTooltipEnterDelay", "luTooltipLeaveDelay", "luTooltipDisabled", "luTooltipOnlyForDisplay", "luTooltipPosition", "luTooltipWhenEllipsis", "luTooltipAnchor"], exportAs: ["luTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
52
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.2", type: NumericBadgeComponent, isStandalone: true, selector: "lu-numeric-badge", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, palette: { classPropertyName: "palette", publicName: "palette", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, maxValue: { classPropertyName: "maxValue", publicName: "maxValue", isSignal: true, isRequired: false, transformFunction: null }, disableTooltip: { classPropertyName: "disableTooltip", publicName: "disableTooltip", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.is-loading": "loading()", "attr.aria-hidden": "loading()" }, classAttribute: "numericBadge" }, providers: [LuClass], ngImport: i0, template: "<span class=\"numericBadge-value\" [luTooltip]=\"value()\" [luTooltipDisabled]=\"isDisabled()\">{{ displayValue() }}</span>\n", styles: ["@charset \"UTF-8\";@layer components{.numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-neutral-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-neutral-700));--components-numericBadge-loadingColor: var(--palettes-500, var(--palettes-neutral-500));--components-numericBadge-size: 1.5rem;--components-numericBadge-font: var(--pr-t-font-body-S);--components-numericBadge-borderRadius: var(--pr-t-border-radius-default);--components-numericBadge-fontSize: var(--pr-t-font-body-S-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-S-lineHeight);display:inline-flex;align-items:center;justify-content:center;block-size:var(--components-numericBadge-size);min-inline-size:var(--components-numericBadge-size);padding:var(--pr-t-spacings-50);font:var(--components-numericBadge-font);font-size:var(--components-numericBadge-fontSize);line-height:var(--components-numericBadge-lineHeight);font-weight:var(--pr-t-font-fontWeight-semibold);background-color:var(--components-numericBadge-background);color:var(--components-numericBadge-color);border-radius:var(--components-numericBadge-borderRadius);transition-timing-function:ease;white-space:nowrap;position:relative;transition-duration:var(--commons-animations-durations-fast);transition-property:color}.numericBadge:empty:before{content:\"\\a0\"/\"\"}.numericBadge-value{outline:none}}@layer mods{.numericBadge.mod-S{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.numericBadge.mod-XS{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.numericBadge.is-loading{--commons-loading-frontground: var(--components-numericBadge-loadingColor);--commons-loading-borderWidth: 2px;--components-numericBadge-color: transparent}.numericBadge.is-loading:after{content:\"\";inline-size:calc(var(--components-numericBadge-size) - var(--pr-t-spacings-100));block-size:calc(var(--components-numericBadge-size) - var(--pr-t-spacings-100));border-radius:var(--pr-t-border-radius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.numericBadge.is-loading.mod-S{--commons-loading-borderWidth: 1.5px}.numericBadge.is-loading.mod-XS{--commons-loading-borderWidth: 1px}.numericBadge:focus-within{outline:2px solid var(--palettes-product-700);outline-offset:2px}}@layer base{lu-numeric-badge{display:inline-flex}}\n"], dependencies: [{ kind: "ngmodule", type: LuTooltipModule }, { kind: "directive", type: i1.LuTooltipTriggerDirective, selector: "[luTooltip]", inputs: ["luTooltip", "luTooltipEnterDelay", "luTooltipLeaveDelay", "luTooltipDisabled", "luTooltipOnlyForDisplay", "luTooltipPosition", "luTooltipWhenEllipsis", "luTooltipAnchor"], exportAs: ["luTooltip"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
31
53
  }
32
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.2", ngImport: i0, type: NumericBadgeComponent, decorators: [{
33
55
  type: Component,
@@ -35,29 +57,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.2", ngImpor
35
57
  class: 'numericBadge',
36
58
  '[class.is-loading]': 'loading()',
37
59
  '[attr.aria-hidden]': 'loading()',
38
- }, encapsulation: ViewEncapsulation.None, template: "<span\n\tclass=\"numericBadge-value\"\n\t[luTooltip]=\"value\"\n\t[luTooltipDisabled]=\"disableTooltip() || typeof this.value !== 'number' || loading || maxValue >= +value\"\n\t>{{ this.displayValue() }}</span\n>\n", styles: ["@charset \"UTF-8\";@layer components{.numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-neutral-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-neutral-700));--components-numericBadge-loadingColor: var(--palettes-500, var(--palettes-neutral-500));--components-numericBadge-size: 1.5rem;--components-numericBadge-font: var(--pr-t-font-body-S);--components-numericBadge-borderRadius: var(--pr-t-border-radius-default);--components-numericBadge-fontSize: var(--pr-t-font-body-S-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-S-lineHeight);display:inline-flex;align-items:center;justify-content:center;block-size:var(--components-numericBadge-size);min-inline-size:var(--components-numericBadge-size);padding:var(--pr-t-spacings-50);font:var(--components-numericBadge-font);font-size:var(--components-numericBadge-fontSize);line-height:var(--components-numericBadge-lineHeight);font-weight:var(--pr-t-font-fontWeight-semibold);background-color:var(--components-numericBadge-background);color:var(--components-numericBadge-color);border-radius:var(--components-numericBadge-borderRadius);transition-timing-function:ease;white-space:nowrap;position:relative;transition-duration:var(--commons-animations-durations-fast);transition-property:color}.numericBadge:empty:before{content:\"\\a0\"/\"\"}.numericBadge-value{outline:none}}@layer mods{.numericBadge.mod-S{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.numericBadge.mod-XS{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.numericBadge.is-loading{--commons-loading-frontground: var(--components-numericBadge-loadingColor);--commons-loading-borderWidth: 2px;--components-numericBadge-color: transparent}.numericBadge.is-loading:after{content:\"\";inline-size:calc(var(--components-numericBadge-size) - var(--pr-t-spacings-100));block-size:calc(var(--components-numericBadge-size) - var(--pr-t-spacings-100));border-radius:var(--pr-t-border-radius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.numericBadge.is-loading.mod-S{--commons-loading-borderWidth: 1.5px}.numericBadge.is-loading.mod-XS{--commons-loading-borderWidth: 1px}.numericBadge:focus-within{outline:2px solid var(--palettes-product-700);outline-offset:2px}}@layer base{lu-numeric-badge{display:inline-flex}}\n"] }]
39
- }], propDecorators: {
40
- /**
41
- * The value to display, number or string contains number only.
42
- */
43
- value: [{
44
- type: Input,
45
- args: [{ required: true }]
46
- }],
47
- /**
48
- * The size of the badge
49
- */
50
- size: [{
51
- type: Input
52
- }], maxValue: [{
53
- type: Input
54
- }],
55
- /**
56
- * The palette to use for this badge. Defaults to 'none' (inherits parent palette)
57
- */
58
- palette: [{
59
- type: Input
60
- }] } });
60
+ }, encapsulation: ViewEncapsulation.None, template: "<span class=\"numericBadge-value\" [luTooltip]=\"value()\" [luTooltipDisabled]=\"isDisabled()\">{{ displayValue() }}</span>\n", styles: ["@charset \"UTF-8\";@layer components{.numericBadge{--components-numericBadge-background: var(--palettes-200, var(--palettes-neutral-200));--components-numericBadge-color: var(--palettes-800, var(--palettes-neutral-700));--components-numericBadge-loadingColor: var(--palettes-500, var(--palettes-neutral-500));--components-numericBadge-size: 1.5rem;--components-numericBadge-font: var(--pr-t-font-body-S);--components-numericBadge-borderRadius: var(--pr-t-border-radius-default);--components-numericBadge-fontSize: var(--pr-t-font-body-S-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-S-lineHeight);display:inline-flex;align-items:center;justify-content:center;block-size:var(--components-numericBadge-size);min-inline-size:var(--components-numericBadge-size);padding:var(--pr-t-spacings-50);font:var(--components-numericBadge-font);font-size:var(--components-numericBadge-fontSize);line-height:var(--components-numericBadge-lineHeight);font-weight:var(--pr-t-font-fontWeight-semibold);background-color:var(--components-numericBadge-background);color:var(--components-numericBadge-color);border-radius:var(--components-numericBadge-borderRadius);transition-timing-function:ease;white-space:nowrap;position:relative;transition-duration:var(--commons-animations-durations-fast);transition-property:color}.numericBadge:empty:before{content:\"\\a0\"/\"\"}.numericBadge-value{outline:none}}@layer mods{.numericBadge.mod-S{--components-numericBadge-size: 1.25rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.numericBadge.mod-XS{--components-numericBadge-size: 1rem;--components-numericBadge-borderRadius: var(--pr-t-border-radius-small);--components-numericBadge-font: var(--pr-t-font-body-XS);--components-numericBadge-fontSize: var(--pr-t-font-body-XS-fontSize);--components-numericBadge-lineHeight: var(--pr-t-font-body-XS-lineHeight)}.numericBadge.is-loading{--commons-loading-frontground: var(--components-numericBadge-loadingColor);--commons-loading-borderWidth: 2px;--components-numericBadge-color: transparent}.numericBadge.is-loading:after{content:\"\";inline-size:calc(var(--components-numericBadge-size) - var(--pr-t-spacings-100));block-size:calc(var(--components-numericBadge-size) - var(--pr-t-spacings-100));border-radius:var(--pr-t-border-radius-full);line-height:.8rem;border-width:var(--commons-loading-borderWidth);inset:0;margin:auto;position:absolute;border-style:solid;animation-name:rotate;animation-duration:var(--commons-loading-speed);animation-timing-function:linear;animation-iteration-count:infinite;border-color:var(--commons-loading-frontground);border-block-start-color:transparent}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.numericBadge.is-loading.mod-S{--commons-loading-borderWidth: 1.5px}.numericBadge.is-loading.mod-XS{--commons-loading-borderWidth: 1px}.numericBadge:focus-within{outline:2px solid var(--palettes-product-700);outline-offset:2px}}@layer base{lu-numeric-badge{display:inline-flex}}\n"] }]
61
+ }], ctorParameters: () => [] });
61
62
 
62
63
  /**
63
64
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-numeric-badge.mjs","sources":["../../../packages/ng/numeric-badge/numeric-badge.component.ts","../../../packages/ng/numeric-badge/numeric-badge.component.html","../../../packages/ng/numeric-badge/lucca-front-ng-numeric-badge.ts"],"sourcesContent":["import { booleanAttribute, ChangeDetectionStrategy, Component, inject, input, Input, OnChanges, SimpleChanges, ViewEncapsulation } from '@angular/core';\nimport { LuClass, Palette } from '@lucca-front/ng/core';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\n\n@Component({\n\tselector: 'lu-numeric-badge',\n\ttemplateUrl: './numeric-badge.component.html',\n\tstyleUrl: './numeric-badge.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [LuTooltipModule],\n\tproviders: [LuClass],\n\thost: {\n\t\tclass: 'numericBadge',\n\t\t'[class.is-loading]': 'loading()',\n\t\t'[attr.aria-hidden]': 'loading()',\n\t},\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class NumericBadgeComponent implements OnChanges {\n\t#luClass = inject(LuClass);\n\n\t@Input({ required: true })\n\t/**\n\t * The value to display, number or string contains number only.\n\t */\n\tvalue!: number | string;\n\n\t@Input()\n\t/**\n\t * The size of the badge\n\t */\n\tsize: 'XS' | 'S' | 'M';\n\n\tloading = input(false, { transform: booleanAttribute });\n\n\t@Input()\n\tmaxValue: number = 999;\n\n\tdisableTooltip = input(false, { transform: booleanAttribute });\n\n\t@Input()\n\t/**\n\t * The palette to use for this badge. Defaults to 'none' (inherits parent palette)\n\t */\n\tpalette: Palette = 'none';\n\n\tngOnChanges(changes: SimpleChanges): void {\n\t\tif (changes['palette']?.currentValue || changes['size']?.currentValue) {\n\t\t\tthis.#luClass.setState({ [`palette-${this.palette}`]: !!this.palette, [`mod-${this.size}`]: !!this.size });\n\t\t}\n\t}\n\n\tdisplayValue = () => {\n\t\tif (typeof this.value === 'number') {\n\t\t\treturn +this.value > this.maxValue ? `${this.maxValue}+` : this.value;\n\t\t} else {\n\t\t\treturn this.value;\n\t\t}\n\t};\n}\n","<span\n\tclass=\"numericBadge-value\"\n\t[luTooltip]=\"value\"\n\t[luTooltipDisabled]=\"disableTooltip() || typeof this.value !== 'number' || loading || maxValue >= +value\"\n\t>{{ this.displayValue() }}</span\n>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-numeric-badge.mjs","sources":["../../../packages/ng/numeric-badge/numeric-badge.component.ts","../../../packages/ng/numeric-badge/numeric-badge.component.html","../../../packages/ng/numeric-badge/lucca-front-ng-numeric-badge.ts"],"sourcesContent":["import { booleanAttribute, ChangeDetectionStrategy, Component, computed, inject, input, ViewEncapsulation } from '@angular/core';\nimport { LuClass, Palette, ɵeffectWithDeps } from '@lucca-front/ng/core';\nimport { LuTooltipModule } from '@lucca-front/ng/tooltip';\n\n@Component({\n\tselector: 'lu-numeric-badge',\n\ttemplateUrl: './numeric-badge.component.html',\n\tstyleUrl: './numeric-badge.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\timports: [LuTooltipModule],\n\tproviders: [LuClass],\n\thost: {\n\t\tclass: 'numericBadge',\n\t\t'[class.is-loading]': 'loading()',\n\t\t'[attr.aria-hidden]': 'loading()',\n\t},\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class NumericBadgeComponent {\n\t#luClass = inject(LuClass);\n\n\t/**\n\t * The value to display, number or string contains number only.\n\t */\n\treadonly value = input.required<number | string>();\n\n\t/**\n\t * The size of the badge\n\t */\n\treadonly size = input<'XS' | 'S' | 'M'>();\n\n\t/**\n\t * The palette to use for this badge. Defaults to 'none' (inherits parent palette)\n\t */\n\treadonly palette = input<Palette>('none');\n\n\treadonly loading = input(false, { transform: booleanAttribute });\n\n\treadonly maxValue = input<number>(999);\n\n\treadonly disableTooltip = input(false, { transform: booleanAttribute });\n\n\treadonly numericBadgeClasses = computed(() => {\n\t\tconst palette = this.palette();\n\t\tconst size = this.size();\n\t\treturn { [`palette-${palette}`]: !!this.palette(), [`mod-${size}`]: !!this.size() };\n\t});\n\n\treadonly displayValue = computed(() => {\n\t\tconst value = this.value();\n\t\tconst maxValue = this.maxValue();\n\t\tif (typeof value === 'number') {\n\t\t\treturn +value > maxValue ? `${maxValue}+` : value;\n\t\t} else {\n\t\t\treturn value;\n\t\t}\n\t});\n\n\treadonly isDisabled = computed<boolean>(() => {\n\t\tconst value = this.value();\n\t\treturn this.disableTooltip() || typeof value !== 'number' || this.loading() || this.maxValue() >= +value;\n\t});\n\n\tconstructor() {\n\t\tɵeffectWithDeps([this.numericBadgeClasses], (numericBadgeClasses) => {\n\t\t\tif (numericBadgeClasses) {\n\t\t\t\tthis.#luClass.setState(numericBadgeClasses);\n\t\t\t}\n\t\t});\n\t}\n}\n","<span class=\"numericBadge-value\" [luTooltip]=\"value()\" [luTooltipDisabled]=\"isDisabled()\">{{ displayValue() }}</span>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["ɵeffectWithDeps"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, model, booleanAttribute, HostBinding, Input, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { InjectionToken, input, booleanAttribute, model, ViewEncapsulation, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import { ButtonComponent } from '@lucca-front/ng/button';
4
4
  import { getIntl } from '@lucca-front/ng/core';
5
5
  import { IconComponent } from '@lucca-front/ng/icon';
@@ -39,31 +39,22 @@ const LuPlgPushTranslations = Translations;
39
39
  class PLGPushComponent {
40
40
  constructor() {
41
41
  this.intl = getIntl(LU_PLG_PUSH_TRANSLATIONS);
42
- this.heading = '';
43
- this.removable = false;
42
+ this.heading = input('');
43
+ this.removable = input(false, { transform: booleanAttribute });
44
44
  /**
45
45
  * Is the callout removed? Works with two way binding too.
46
46
  */
47
47
  this.removed = model(false);
48
48
  }
49
- get hiddenAttr() {
50
- return this.removed() ? 'hidden' : null;
51
- }
52
49
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.2", ngImport: i0, type: PLGPushComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
53
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.2", type: PLGPushComponent, isStandalone: true, selector: "lu-plg-push", inputs: { heading: { classPropertyName: "heading", publicName: "heading", isSignal: false, isRequired: false, transformFunction: null }, removable: { classPropertyName: "removable", publicName: "removable", isSignal: false, isRequired: false, transformFunction: booleanAttribute }, removed: { classPropertyName: "removed", publicName: "removed", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { removed: "removedChange" }, host: { properties: { "attr.hidden": "this.hiddenAttr" } }, ngImport: i0, template: "<div class=\"plgPush\">\n\t<div class=\"plgPush-icons\">\n\t\t<lu-icon class=\"plgPush-icons-front\" icon=\"transportRocket\" size=\"S\" />\n\t\t<img class=\"plgPush-icons-back\" alt=\"\" src=\"https://cdn.lucca.fr/transverse/prisme/visuals/plg-push/shape.svg\" />\n\t</div>\n\t<div class=\"plgPush-content\">\n\t\t@if (heading) {\n\t\t\t<div class=\"plgPush-content-title\">{{ heading }}</div>\n\t\t}\n\t\t<div class=\"plgPush-content-description\">\n\t\t\t<ng-content />\n\t\t</div>\n\t</div>\n\t@if (removable) {\n\t\t<button class=\"plgPush-close\" type=\"button\" luButton=\"ghost\" size=\"S\" (click)=\"removed.set(true)\">\n\t\t\t<lu-icon icon=\"signClose\" [alt]=\"intl.close\" />\n\t\t</button>\n\t}\n</div>\n", styles: ["@layer components{.plgPush{--components-plgPush-icon-size: 2rem;display:flex;align-items:flex-start;gap:var(--pr-t-spacings-100);padding:var(--pr-t-spacings-100);font:var(--pr-t-font-body-S);border:var(--commons-divider-width) var(--commons-divider-style) var(--palettes-brand-200);border-radius:var(--pr-t-border-radius-default);background-color:var(--palettes-brand-50)}.plgPush .link{--commons-text-link-color: var(--palettes-brand-700);--commons-text-link-hover: var(--palettes-brand-800);display:inline-block}.plgPush-icons{position:relative;display:flex;flex-shrink:0;align-items:center;justify-content:center;block-size:var(--components-plgPush-icon-size);inline-size:var(--components-plgPush-icon-size)}.plgPush-icons-front{color:var(--palettes-brand-600);z-index:1}.plgPush-icons-back{position:absolute;z-index:0;inset:0}.plgPush-content{display:flex;flex-direction:column;gap:var(--pr-t-spacings-50);padding-block:var(--pr-t-spacings-75)}.plgPush-content-title{font-weight:var(--pr-t-font-fontWeight-semibold)}.plgPush-content-link{display:flex;align-items:center;gap:var(--pr-t-spacings-25);padding:var(--pr-t-spacings-0)}.plgPush-close{margin-inline-start:auto}}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: ButtonComponent, selector: "button[luButton],a[luButton]", inputs: ["size", "block", "critical", "delete", "disclosure", "palette", "state", "luButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.2", type: PLGPushComponent, isStandalone: true, selector: "lu-plg-push", inputs: { heading: { classPropertyName: "heading", publicName: "heading", isSignal: true, isRequired: false, transformFunction: null }, removable: { classPropertyName: "removable", publicName: "removable", isSignal: true, isRequired: false, transformFunction: null }, removed: { classPropertyName: "removed", publicName: "removed", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { removed: "removedChange" }, host: { properties: { "attr.hidden": "removed() ? \"hidden\" : null" } }, ngImport: i0, template: "<div class=\"plgPush\">\n\t<div class=\"plgPush-icons\">\n\t\t<lu-icon class=\"plgPush-icons-front\" icon=\"transportRocket\" size=\"S\" />\n\t\t<img class=\"plgPush-icons-back\" alt=\"\" src=\"https://cdn.lucca.fr/transverse/prisme/visuals/plg-push/shape.svg\" />\n\t</div>\n\t<div class=\"plgPush-content\">\n\t\t@if (heading()) {\n\t\t\t<div class=\"plgPush-content-title\">{{ heading() }}</div>\n\t\t}\n\t\t<div class=\"plgPush-content-description\">\n\t\t\t<ng-content />\n\t\t</div>\n\t</div>\n\t@if (removable()) {\n\t\t<button class=\"plgPush-close\" type=\"button\" luButton=\"ghost\" size=\"S\" (click)=\"removed.set(true)\">\n\t\t\t<lu-icon icon=\"signClose\" [alt]=\"intl.close\" />\n\t\t</button>\n\t}\n</div>\n", styles: ["@layer components{.plgPush{--components-plgPush-icon-size: 2rem;display:flex;align-items:flex-start;gap:var(--pr-t-spacings-100);padding:var(--pr-t-spacings-100);font:var(--pr-t-font-body-S);border:var(--commons-divider-width) var(--commons-divider-style) var(--palettes-brand-200);border-radius:var(--pr-t-border-radius-default);background-color:var(--palettes-brand-50)}.plgPush .link{--commons-text-link-color: var(--palettes-brand-700);--commons-text-link-hover: var(--palettes-brand-800);display:inline-block}.plgPush-icons{position:relative;display:flex;flex-shrink:0;align-items:center;justify-content:center;block-size:var(--components-plgPush-icon-size);inline-size:var(--components-plgPush-icon-size)}.plgPush-icons-front{color:var(--palettes-brand-600);z-index:1}.plgPush-icons-back{position:absolute;z-index:0;inset:0}.plgPush-content{display:flex;flex-direction:column;gap:var(--pr-t-spacings-50);padding-block:var(--pr-t-spacings-75)}.plgPush-content-title{font-weight:var(--pr-t-font-fontWeight-semibold)}.plgPush-content-link{display:flex;align-items:center;gap:var(--pr-t-spacings-25);padding:var(--pr-t-spacings-0)}.plgPush-close{margin-inline-start:auto}}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "lu-icon", inputs: ["icon", "alt", "size", "color", "AI"] }, { kind: "component", type: ButtonComponent, selector: "button[luButton],a[luButton]", inputs: ["size", "block", "critical", "delete", "disclosure", "palette", "state", "luButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
54
51
  }
55
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.2", ngImport: i0, type: PLGPushComponent, decorators: [{
56
53
  type: Component,
57
- args: [{ selector: 'lu-plg-push', imports: [IconComponent, ButtonComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"plgPush\">\n\t<div class=\"plgPush-icons\">\n\t\t<lu-icon class=\"plgPush-icons-front\" icon=\"transportRocket\" size=\"S\" />\n\t\t<img class=\"plgPush-icons-back\" alt=\"\" src=\"https://cdn.lucca.fr/transverse/prisme/visuals/plg-push/shape.svg\" />\n\t</div>\n\t<div class=\"plgPush-content\">\n\t\t@if (heading) {\n\t\t\t<div class=\"plgPush-content-title\">{{ heading }}</div>\n\t\t}\n\t\t<div class=\"plgPush-content-description\">\n\t\t\t<ng-content />\n\t\t</div>\n\t</div>\n\t@if (removable) {\n\t\t<button class=\"plgPush-close\" type=\"button\" luButton=\"ghost\" size=\"S\" (click)=\"removed.set(true)\">\n\t\t\t<lu-icon icon=\"signClose\" [alt]=\"intl.close\" />\n\t\t</button>\n\t}\n</div>\n", styles: ["@layer components{.plgPush{--components-plgPush-icon-size: 2rem;display:flex;align-items:flex-start;gap:var(--pr-t-spacings-100);padding:var(--pr-t-spacings-100);font:var(--pr-t-font-body-S);border:var(--commons-divider-width) var(--commons-divider-style) var(--palettes-brand-200);border-radius:var(--pr-t-border-radius-default);background-color:var(--palettes-brand-50)}.plgPush .link{--commons-text-link-color: var(--palettes-brand-700);--commons-text-link-hover: var(--palettes-brand-800);display:inline-block}.plgPush-icons{position:relative;display:flex;flex-shrink:0;align-items:center;justify-content:center;block-size:var(--components-plgPush-icon-size);inline-size:var(--components-plgPush-icon-size)}.plgPush-icons-front{color:var(--palettes-brand-600);z-index:1}.plgPush-icons-back{position:absolute;z-index:0;inset:0}.plgPush-content{display:flex;flex-direction:column;gap:var(--pr-t-spacings-50);padding-block:var(--pr-t-spacings-75)}.plgPush-content-title{font-weight:var(--pr-t-font-fontWeight-semibold)}.plgPush-content-link{display:flex;align-items:center;gap:var(--pr-t-spacings-25);padding:var(--pr-t-spacings-0)}.plgPush-close{margin-inline-start:auto}}\n"] }]
58
- }], propDecorators: { heading: [{
59
- type: Input
60
- }], removable: [{
61
- type: Input,
62
- args: [{ transform: booleanAttribute }]
63
- }], hiddenAttr: [{
64
- type: HostBinding,
65
- args: ['attr.hidden']
66
- }] } });
54
+ args: [{ selector: 'lu-plg-push', imports: [IconComponent, ButtonComponent], host: {
55
+ '[attr.hidden]': 'removed() ? "hidden" : null',
56
+ }, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"plgPush\">\n\t<div class=\"plgPush-icons\">\n\t\t<lu-icon class=\"plgPush-icons-front\" icon=\"transportRocket\" size=\"S\" />\n\t\t<img class=\"plgPush-icons-back\" alt=\"\" src=\"https://cdn.lucca.fr/transverse/prisme/visuals/plg-push/shape.svg\" />\n\t</div>\n\t<div class=\"plgPush-content\">\n\t\t@if (heading()) {\n\t\t\t<div class=\"plgPush-content-title\">{{ heading() }}</div>\n\t\t}\n\t\t<div class=\"plgPush-content-description\">\n\t\t\t<ng-content />\n\t\t</div>\n\t</div>\n\t@if (removable()) {\n\t\t<button class=\"plgPush-close\" type=\"button\" luButton=\"ghost\" size=\"S\" (click)=\"removed.set(true)\">\n\t\t\t<lu-icon icon=\"signClose\" [alt]=\"intl.close\" />\n\t\t</button>\n\t}\n</div>\n", styles: ["@layer components{.plgPush{--components-plgPush-icon-size: 2rem;display:flex;align-items:flex-start;gap:var(--pr-t-spacings-100);padding:var(--pr-t-spacings-100);font:var(--pr-t-font-body-S);border:var(--commons-divider-width) var(--commons-divider-style) var(--palettes-brand-200);border-radius:var(--pr-t-border-radius-default);background-color:var(--palettes-brand-50)}.plgPush .link{--commons-text-link-color: var(--palettes-brand-700);--commons-text-link-hover: var(--palettes-brand-800);display:inline-block}.plgPush-icons{position:relative;display:flex;flex-shrink:0;align-items:center;justify-content:center;block-size:var(--components-plgPush-icon-size);inline-size:var(--components-plgPush-icon-size)}.plgPush-icons-front{color:var(--palettes-brand-600);z-index:1}.plgPush-icons-back{position:absolute;z-index:0;inset:0}.plgPush-content{display:flex;flex-direction:column;gap:var(--pr-t-spacings-50);padding-block:var(--pr-t-spacings-75)}.plgPush-content-title{font-weight:var(--pr-t-font-fontWeight-semibold)}.plgPush-content-link{display:flex;align-items:center;gap:var(--pr-t-spacings-25);padding:var(--pr-t-spacings-0)}.plgPush-close{margin-inline-start:auto}}\n"] }]
57
+ }] });
67
58
 
68
59
  /**
69
60
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-plg-push.mjs","sources":["../../../packages/ng/plg-push/translations.ts","../../../packages/ng/plg-push/plg-push.translate.ts","../../../packages/ng/plg-push/plg-push.component.ts","../../../packages/ng/plg-push/plg-push.component.html","../../../packages/ng/plg-push/lucca-front-ng-plg-push.ts"],"sourcesContent":["export const Translations = {\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\ten: {\n\t\tclose: 'Close',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_PLG_PUSH_TRANSLATIONS = new InjectionToken('LuPlgPushTranslations', {\n\tfactory: () => LuPlgPushTranslations,\n});\n\nexport interface LuPlgPushLabel {\n\tclose: string;\n}\n\nexport const LuPlgPushTranslations: LuTranslation<LuPlgPushLabel> = Translations;\n","import { booleanAttribute, ChangeDetectionStrategy, Component, HostBinding, Input, model, ViewEncapsulation } from '@angular/core';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LU_PLG_PUSH_TRANSLATIONS } from './plg-push.translate';\n\n@Component({\n\tselector: 'lu-plg-push',\n\timports: [IconComponent, ButtonComponent],\n\ttemplateUrl: './plg-push.component.html',\n\tstyleUrl: './plg-push.component.scss',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class PLGPushComponent {\n\tprotected intl = getIntl(LU_PLG_PUSH_TRANSLATIONS);\n\n\t@Input() public heading = '';\n\n\t@Input({ transform: booleanAttribute })\n\tremovable = false;\n\n\t/**\n\t * Is the callout removed? Works with two way binding too.\n\t */\n\tremoved = model(false);\n\n\t@HostBinding('attr.hidden')\n\tget hiddenAttr(): 'hidden' | null {\n\t\treturn this.removed() ? 'hidden' : null;\n\t}\n}\n","<div class=\"plgPush\">\n\t<div class=\"plgPush-icons\">\n\t\t<lu-icon class=\"plgPush-icons-front\" icon=\"transportRocket\" size=\"S\" />\n\t\t<img class=\"plgPush-icons-back\" alt=\"\" src=\"https://cdn.lucca.fr/transverse/prisme/visuals/plg-push/shape.svg\" />\n\t</div>\n\t<div class=\"plgPush-content\">\n\t\t@if (heading) {\n\t\t\t<div class=\"plgPush-content-title\">{{ heading }}</div>\n\t\t}\n\t\t<div class=\"plgPush-content-description\">\n\t\t\t<ng-content />\n\t\t</div>\n\t</div>\n\t@if (removable) {\n\t\t<button class=\"plgPush-close\" type=\"button\" luButton=\"ghost\" size=\"S\" (click)=\"removed.set(true)\">\n\t\t\t<lu-icon icon=\"signClose\" [alt]=\"intl.close\" />\n\t\t</button>\n\t}\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-plg-push.mjs","sources":["../../../packages/ng/plg-push/translations.ts","../../../packages/ng/plg-push/plg-push.translate.ts","../../../packages/ng/plg-push/plg-push.component.ts","../../../packages/ng/plg-push/plg-push.component.html","../../../packages/ng/plg-push/lucca-front-ng-plg-push.ts"],"sourcesContent":["export const Translations = {\n\t'nl-BE': {\n\t\tclose: 'Sluiten',\n\t},\n\tfr: {\n\t\tclose: 'Fermer',\n\t},\n\tde: {\n\t\tclose: 'Schließen',\n\t},\n\ten: {\n\t\tclose: 'Close',\n\t},\n\tes: {\n\t\tclose: 'Cerrar',\n\t},\n\tit: {\n\t\tclose: 'Chiudere',\n\t},\n\tnl: {\n\t\tclose: 'Sluiten',\n\t},\n\tpt: {\n\t\tclose: 'Fechar',\n\t},\n};\n","import { InjectionToken } from '@angular/core';\nimport { LuTranslation } from '@lucca-front/ng/core';\nimport { Translations } from './translations';\n\nexport const LU_PLG_PUSH_TRANSLATIONS = new InjectionToken('LuPlgPushTranslations', {\n\tfactory: () => LuPlgPushTranslations,\n});\n\nexport interface LuPlgPushLabel {\n\tclose: string;\n}\n\nexport const LuPlgPushTranslations: LuTranslation<LuPlgPushLabel> = Translations;\n","import { booleanAttribute, ChangeDetectionStrategy, Component, input, model, ViewEncapsulation } from '@angular/core';\nimport { ButtonComponent } from '@lucca-front/ng/button';\nimport { getIntl } from '@lucca-front/ng/core';\nimport { IconComponent } from '@lucca-front/ng/icon';\nimport { LU_PLG_PUSH_TRANSLATIONS } from './plg-push.translate';\n\n@Component({\n\tselector: 'lu-plg-push',\n\timports: [IconComponent, ButtonComponent],\n\ttemplateUrl: './plg-push.component.html',\n\tstyleUrl: './plg-push.component.scss',\n\thost: {\n\t\t'[attr.hidden]': 'removed() ? \"hidden\" : null',\n\t},\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\tencapsulation: ViewEncapsulation.None,\n})\nexport class PLGPushComponent {\n\tprotected intl = getIntl(LU_PLG_PUSH_TRANSLATIONS);\n\n\treadonly heading = input<string>('');\n\n\treadonly removable = input(false, { transform: booleanAttribute });\n\n\t/**\n\t * Is the callout removed? Works with two way binding too.\n\t */\n\treadonly removed = model(false);\n}\n","<div class=\"plgPush\">\n\t<div class=\"plgPush-icons\">\n\t\t<lu-icon class=\"plgPush-icons-front\" icon=\"transportRocket\" size=\"S\" />\n\t\t<img class=\"plgPush-icons-back\" alt=\"\" src=\"https://cdn.lucca.fr/transverse/prisme/visuals/plg-push/shape.svg\" />\n\t</div>\n\t<div class=\"plgPush-content\">\n\t\t@if (heading()) {\n\t\t\t<div class=\"plgPush-content-title\">{{ heading() }}</div>\n\t\t}\n\t\t<div class=\"plgPush-content-description\">\n\t\t\t<ng-content />\n\t\t</div>\n\t</div>\n\t@if (removable()) {\n\t\t<button class=\"plgPush-close\" type=\"button\" luButton=\"ghost\" size=\"S\" (click)=\"removed.set(true)\">\n\t\t\t<lu-icon icon=\"signClose\" [alt]=\"intl.close\" />\n\t\t</button>\n\t}\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, HostListener, Output, Input, Directive, NgModule } from '@angular/core';
2
+ import { input, output, Directive, NgModule } from '@angular/core';
3
3
  import { Subject } from 'rxjs';
4
4
  import { debounceTime } from 'rxjs/operators';
5
5
 
@@ -8,11 +8,13 @@ import { debounceTime } from 'rxjs/operators';
8
8
  * emits on scroll events
9
9
  */
10
10
  class LuScrollDirective {
11
- _scroll($event) {
12
- this.scrollSubject.next($event);
11
+ #scrollSubject;
12
+ #scroll$;
13
+ scroll(event) {
14
+ this.#scrollSubject.next(event);
13
15
  }
14
16
  ngOnInit() {
15
- this.scroll$.subscribe((scrollEvent) => this.emitScrollEvents(scrollEvent));
17
+ this.#scroll$.subscribe((scrollEvent) => this.emitScrollEvents(scrollEvent));
16
18
  }
17
19
  emitScrollEvents($event) {
18
20
  this.onScroll.emit($event);
@@ -40,40 +42,28 @@ class LuScrollDirective {
40
42
  }
41
43
  constructor(_elementRef) {
42
44
  this._elementRef = _elementRef;
43
- this.debounceTime = 100;
44
- this.onScroll = new EventEmitter();
45
- this.onScrollTop = new EventEmitter();
46
- this.onScrollBottom = new EventEmitter();
47
- this.onScrollLeft = new EventEmitter();
48
- this.onScrollRight = new EventEmitter();
49
- this.scrollSubject = new Subject();
50
- this.scroll$ = this.scrollSubject.asObservable().pipe(debounceTime(this.debounceTime));
45
+ this.debounceTime = input(100);
46
+ this.onScroll = output();
47
+ this.onScrollTop = output();
48
+ this.onScrollBottom = output();
49
+ this.onScrollLeft = output();
50
+ this.onScrollRight = output();
51
+ this.#scrollSubject = new Subject();
52
+ this.#scroll$ = this.#scrollSubject.asObservable().pipe(debounceTime(this.debounceTime()));
51
53
  }
52
54
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.2", ngImport: i0, type: LuScrollDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
53
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.0.2", type: LuScrollDirective, isStandalone: true, selector: "[luScroll]", inputs: { debounceTime: "debounceTime" }, outputs: { onScroll: "onScroll", onScrollTop: "onScrollTop", onScrollBottom: "onScrollBottom", onScrollLeft: "onScrollLeft", onScrollRight: "onScrollRight" }, host: { listeners: { "scroll": "_scroll($event)" } }, exportAs: ["luScroll"], ngImport: i0 }); }
55
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.2", type: LuScrollDirective, isStandalone: true, selector: "[luScroll]", inputs: { debounceTime: { classPropertyName: "debounceTime", publicName: "debounceTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onScroll: "onScroll", onScrollTop: "onScrollTop", onScrollBottom: "onScrollBottom", onScrollLeft: "onScrollLeft", onScrollRight: "onScrollRight" }, host: { listeners: { "scroll": "scroll($event)" } }, exportAs: ["luScroll"], ngImport: i0 }); }
54
56
  }
55
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.2", ngImport: i0, type: LuScrollDirective, decorators: [{
56
58
  type: Directive,
57
59
  args: [{
58
60
  selector: '[luScroll]',
59
61
  exportAs: 'luScroll',
62
+ host: {
63
+ '(scroll)': 'scroll($event)',
64
+ },
60
65
  }]
61
- }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { debounceTime: [{
62
- type: Input
63
- }], onScroll: [{
64
- type: Output
65
- }], onScrollTop: [{
66
- type: Output
67
- }], onScrollBottom: [{
68
- type: Output
69
- }], onScrollLeft: [{
70
- type: Output
71
- }], onScrollRight: [{
72
- type: Output
73
- }], _scroll: [{
74
- type: HostListener,
75
- args: ['scroll', ['$event']]
76
- }] } });
66
+ }], ctorParameters: () => [{ type: i0.ElementRef }] });
77
67
 
78
68
  /**
79
69
  * @deprecated use `LuScrollDirective` instead
@@ -1 +1 @@
1
- {"version":3,"file":"lucca-front-ng-scroll.mjs","sources":["../../../packages/ng/scroll/scroll.directive.ts","../../../packages/ng/scroll/scroll.module.ts","../../../packages/ng/scroll/lucca-front-ng-scroll.ts"],"sourcesContent":["/* eslint-disable @angular-eslint/no-output-on-prefix */\nimport { Directive, ElementRef, EventEmitter, HostListener, Input, OnInit, Output } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { ILuScrollable } from './scroll.model';\n\n/**\n * emits on scroll events\n */\n@Directive({\n\tselector: '[luScroll]',\n\texportAs: 'luScroll',\n})\nexport class LuScrollDirective implements ILuScrollable, OnInit {\n\t@Input() debounceTime = 100;\n\t@Output() onScroll = new EventEmitter<Event>();\n\t@Output() onScrollTop = new EventEmitter<Event>();\n\t@Output() onScrollBottom = new EventEmitter<Event>();\n\t@Output() onScrollLeft = new EventEmitter<Event>();\n\t@Output() onScrollRight = new EventEmitter<Event>();\n\tprivate scrollSubject = new Subject<Event>();\n\tprivate scroll$ = this.scrollSubject.asObservable().pipe(debounceTime(this.debounceTime));\n\t@HostListener('scroll', ['$event'])\n\t_scroll($event: Event) {\n\t\tthis.scrollSubject.next($event);\n\t}\n\n\tngOnInit(): void {\n\t\tthis.scroll$.subscribe((scrollEvent) => this.emitScrollEvents(scrollEvent));\n\t}\n\tprivate emitScrollEvents($event: Event) {\n\t\tthis.onScroll.emit($event);\n\n\t\tconst target = $event.target;\n\t\tif (target instanceof Element) {\n\t\t\tconst scrollLeft = target.scrollLeft;\n\t\t\tconst scrollTop = target.scrollTop;\n\t\t\tif (scrollLeft === 0) {\n\t\t\t\tthis.onScrollLeft.emit($event);\n\t\t\t}\n\t\t\tif (scrollTop === 0) {\n\t\t\t\tthis.onScrollTop.emit($event);\n\t\t\t}\n\t\t\tconst scrollWidth = target.scrollWidth;\n\t\t\tconst scrollHeight = target.scrollHeight;\n\t\t\tconst eltHeight = this._elementRef.nativeElement.clientHeight;\n\t\t\tconst eltWidth = this._elementRef.nativeElement.clientWidth;\n\t\t\tif (scrollWidth - scrollLeft - eltWidth < 10) {\n\t\t\t\tthis.onScrollRight.emit($event);\n\t\t\t}\n\t\t\tif (scrollHeight - scrollTop - eltHeight < 10) {\n\t\t\t\tthis.onScrollBottom.emit($event);\n\t\t\t}\n\t\t}\n\t}\n\tconstructor(protected _elementRef: ElementRef<HTMLElement>) {}\n}\n","import { NgModule } from '@angular/core';\nimport { LuScrollDirective } from './scroll.directive';\n\n/**\n * @deprecated use `LuScrollDirective` instead\n */\n@NgModule({\n\timports: [LuScrollDirective],\n\texports: [LuScrollDirective],\n})\nexport class LuScrollModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucca-front-ng-scroll.mjs","sources":["../../../packages/ng/scroll/scroll.directive.ts","../../../packages/ng/scroll/scroll.module.ts","../../../packages/ng/scroll/lucca-front-ng-scroll.ts"],"sourcesContent":["/* eslint-disable @angular-eslint/no-output-on-prefix */\nimport { Directive, ElementRef, input, OnInit, output } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\nimport { ILuScrollable } from './scroll.model';\n\n/**\n * emits on scroll events\n */\n@Directive({\n\tselector: '[luScroll]',\n\texportAs: 'luScroll',\n\thost: {\n\t\t'(scroll)': 'scroll($event)',\n\t},\n})\nexport class LuScrollDirective implements ILuScrollable, OnInit {\n\treadonly debounceTime = input<number>(100);\n\treadonly onScroll = output<Event>();\n\treadonly onScrollTop = output<Event>();\n\treadonly onScrollBottom = output<Event>();\n\treadonly onScrollLeft = output<Event>();\n\treadonly onScrollRight = output<Event>();\n\n\t#scrollSubject = new Subject<Event>();\n\t#scroll$ = this.#scrollSubject.asObservable().pipe(debounceTime(this.debounceTime()));\n\n\tscroll(event: Event) {\n\t\tthis.#scrollSubject.next(event);\n\t}\n\n\tngOnInit(): void {\n\t\tthis.#scroll$.subscribe((scrollEvent) => this.emitScrollEvents(scrollEvent));\n\t}\n\tprivate emitScrollEvents($event: Event) {\n\t\tthis.onScroll.emit($event);\n\n\t\tconst target = $event.target;\n\t\tif (target instanceof Element) {\n\t\t\tconst scrollLeft = target.scrollLeft;\n\t\t\tconst scrollTop = target.scrollTop;\n\t\t\tif (scrollLeft === 0) {\n\t\t\t\tthis.onScrollLeft.emit($event);\n\t\t\t}\n\t\t\tif (scrollTop === 0) {\n\t\t\t\tthis.onScrollTop.emit($event);\n\t\t\t}\n\t\t\tconst scrollWidth = target.scrollWidth;\n\t\t\tconst scrollHeight = target.scrollHeight;\n\t\t\tconst eltHeight = this._elementRef.nativeElement.clientHeight;\n\t\t\tconst eltWidth = this._elementRef.nativeElement.clientWidth;\n\t\t\tif (scrollWidth - scrollLeft - eltWidth < 10) {\n\t\t\t\tthis.onScrollRight.emit($event);\n\t\t\t}\n\t\t\tif (scrollHeight - scrollTop - eltHeight < 10) {\n\t\t\t\tthis.onScrollBottom.emit($event);\n\t\t\t}\n\t\t}\n\t}\n\tconstructor(protected _elementRef: ElementRef<HTMLElement>) {}\n}\n","import { NgModule } from '@angular/core';\nimport { LuScrollDirective } from './scroll.directive';\n\n/**\n * @deprecated use `LuScrollDirective` instead\n */\n@NgModule({\n\timports: [LuScrollDirective],\n\texports: [LuScrollDirective],\n})\nexport class LuScrollModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -149,7 +149,7 @@ class LuSelectPanelComponent {
149
149
  options$: this.options$,
150
150
  optionComparer: this.optionComparer,
151
151
  activeOptionIdChanged$: this.panelRef.activeOptionIdChanged,
152
- clueChange$: this.selectInput.searchable ? this.selectInput.clueChange : EMPTY,
152
+ clueChange$: this.selectInput.searchable ? this.selectInput.clueChange$ : EMPTY,
153
153
  });
154
154
  if (this.initialValue && !this.selectInput.clue) {
155
155
  this.keyManager.highlightOption(this.initialValue);