@eric-emg/symphiq-components 1.2.333 → 1.2.334

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.
@@ -86780,7 +86780,7 @@ class BillingPeriodToggleComponent {
86780
86780
  : 'text-slate-600';
86781
86781
  }
86782
86782
  static { this.ɵfac = function BillingPeriodToggleComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || BillingPeriodToggleComponent)(); }; }
86783
- static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BillingPeriodToggleComponent, selectors: [["symphiq-billing-period-toggle"]], inputs: { viewMode: [1, "viewMode"], selectedPeriodUnit: [1, "selectedPeriodUnit"], isLoading: [1, "isLoading"] }, outputs: { periodUnitChanged: "periodUnitChanged" }, decls: 15, vars: 10, consts: [[1, "flex", "flex-col", "items-center", "gap-4", "mb-8"], [1, "flex", "items-center", "gap-3"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "inline-flex", "rounded-xl", "p-1", "transition-all", "duration-200", 3, "ngClass"], ["type", "button", 1, "relative", "px-6", "py-3", "rounded-lg", "font-semibold", "text-sm", "transition-all", "duration-200", "disabled:cursor-not-allowed", 3, "click", "disabled", "ngClass"], [1, "relative", "z-10"], [1, "absolute", "inset-0", "rounded-lg", "shadow-lg", "opacity-20"], [1, "text-sm", 3, "ngClass"]], template: function BillingPeriodToggleComponent_Template(rf, ctx) { if (rf & 1) {
86783
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BillingPeriodToggleComponent, selectors: [["symphiq-billing-period-toggle"]], inputs: { viewMode: [1, "viewMode"], selectedPeriodUnit: [1, "selectedPeriodUnit"], isLoading: [1, "isLoading"] }, outputs: { periodUnitChanged: "periodUnitChanged" }, decls: 15, vars: 10, consts: [[1, "flex", "flex-col", "items-center", "gap-4", "mb-8"], [1, "flex", "items-center", "gap-3"], ["fill", "none", "stroke", "currentColor", "viewBox", "0 0 24 24", 1, "w-5", "h-5", 3, "ngClass"], ["stroke-linecap", "round", "stroke-linejoin", "round", "stroke-width", "2", "d", "M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"], [1, "inline-flex", "gap-2", "rounded-xl", "p-1.5", "transition-all", "duration-200", 3, "ngClass"], ["type", "button", 1, "relative", "px-6", "py-3", "rounded-lg", "font-semibold", "text-sm", "transition-all", "duration-200", "disabled:cursor-not-allowed", 3, "click", "disabled", "ngClass"], [1, "relative", "z-10"], [1, "absolute", "inset-0", "rounded-lg", "shadow-lg", "opacity-20"], [1, "text-sm", 3, "ngClass"]], template: function BillingPeriodToggleComponent_Template(rf, ctx) { if (rf & 1) {
86784
86784
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
86785
86785
  i0.ɵɵnamespaceSVG();
86786
86786
  i0.ɵɵelementStart(2, "svg", 2);
@@ -86830,41 +86830,41 @@ class BillingPeriodToggleComponent {
86830
86830
  standalone: true,
86831
86831
  imports: [CommonModule],
86832
86832
  changeDetection: ChangeDetectionStrategy.OnPush,
86833
- template: `
86834
- <div class="flex flex-col items-center gap-4 mb-8">
86835
- <div class="flex items-center gap-3">
86836
- <svg [ngClass]="iconClasses()" class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
86837
- <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"></path>
86838
- </svg>
86839
- <div [ngClass]="toggleContainerClasses()" class="inline-flex rounded-xl p-1 transition-all duration-200">
86840
- <button
86841
- type="button"
86842
- [disabled]="isLoading()"
86843
- (click)="selectPeriod(periodUnitEnum.YEAR)"
86844
- [ngClass]="getButtonClasses(periodUnitEnum.YEAR)"
86845
- class="relative px-6 py-3 rounded-lg font-semibold text-sm transition-all duration-200 disabled:cursor-not-allowed">
86846
- <span class="relative z-10">Annual contract</span>
86847
- @if (selectedPeriodUnit() === periodUnitEnum.YEAR) {
86848
- <div class="absolute inset-0 rounded-lg shadow-lg opacity-20"></div>
86849
- }
86850
- </button>
86851
- <button
86852
- type="button"
86853
- [disabled]="isLoading()"
86854
- (click)="selectPeriod(periodUnitEnum.MONTH)"
86855
- [ngClass]="getButtonClasses(periodUnitEnum.MONTH)"
86856
- class="relative px-6 py-3 rounded-lg font-semibold text-sm transition-all duration-200 disabled:cursor-not-allowed">
86857
- <span class="relative z-10">Monthly contract</span>
86858
- @if (selectedPeriodUnit() === periodUnitEnum.MONTH) {
86859
- <div class="absolute inset-0 rounded-lg shadow-lg opacity-20"></div>
86860
- }
86861
- </button>
86862
- </div>
86863
- </div>
86864
- <p [ngClass]="subtitleClasses()" class="text-sm">
86865
- {{ getSubtitle() }}
86866
- </p>
86867
- </div>
86833
+ template: `
86834
+ <div class="flex flex-col items-center gap-4 mb-8">
86835
+ <div class="flex items-center gap-3">
86836
+ <svg [ngClass]="iconClasses()" class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
86837
+ <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"></path>
86838
+ </svg>
86839
+ <div [ngClass]="toggleContainerClasses()" class="inline-flex gap-2 rounded-xl p-1.5 transition-all duration-200">
86840
+ <button
86841
+ type="button"
86842
+ [disabled]="isLoading()"
86843
+ (click)="selectPeriod(periodUnitEnum.YEAR)"
86844
+ [ngClass]="getButtonClasses(periodUnitEnum.YEAR)"
86845
+ class="relative px-6 py-3 rounded-lg font-semibold text-sm transition-all duration-200 disabled:cursor-not-allowed">
86846
+ <span class="relative z-10">Annual contract</span>
86847
+ @if (selectedPeriodUnit() === periodUnitEnum.YEAR) {
86848
+ <div class="absolute inset-0 rounded-lg shadow-lg opacity-20"></div>
86849
+ }
86850
+ </button>
86851
+ <button
86852
+ type="button"
86853
+ [disabled]="isLoading()"
86854
+ (click)="selectPeriod(periodUnitEnum.MONTH)"
86855
+ [ngClass]="getButtonClasses(periodUnitEnum.MONTH)"
86856
+ class="relative px-6 py-3 rounded-lg font-semibold text-sm transition-all duration-200 disabled:cursor-not-allowed">
86857
+ <span class="relative z-10">Monthly contract</span>
86858
+ @if (selectedPeriodUnit() === periodUnitEnum.MONTH) {
86859
+ <div class="absolute inset-0 rounded-lg shadow-lg opacity-20"></div>
86860
+ }
86861
+ </button>
86862
+ </div>
86863
+ </div>
86864
+ <p [ngClass]="subtitleClasses()" class="text-sm">
86865
+ {{ getSubtitle() }}
86866
+ </p>
86867
+ </div>
86868
86868
  `
86869
86869
  }]
86870
86870
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], selectedPeriodUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedPeriodUnit", required: false }] }], isLoading: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLoading", required: false }] }], periodUnitChanged: [{ type: i0.Output, args: ["periodUnitChanged"] }] }); })();
@@ -86922,7 +86922,7 @@ class PlanCardComponent {
86922
86922
  this.selectedPeriodUnit = input(ChargebeeItemPricePeriodUnitEnum.YEAR, ...(ngDevMode ? [{ debugName: "selectedPeriodUnit" }] : []));
86923
86923
  this.planSelected = output();
86924
86924
  this.showBestValueBadge = computed(() => {
86925
- return this.planInfo().periodUnit === ChargebeeItemPricePeriodUnitEnum.YEAR;
86925
+ return this.planInfo().bestValue === true;
86926
86926
  }, ...(ngDevMode ? [{ debugName: "showBestValueBadge" }] : []));
86927
86927
  }
86928
86928
  handleCardClick() {
@@ -86930,8 +86930,7 @@ class PlanCardComponent {
86930
86930
  }
86931
86931
  getPlanTitle() {
86932
86932
  const info = this.planInfo();
86933
- const periodLabel = info.periodUnit === ChargebeeItemPricePeriodUnitEnum.YEAR ? 'Pay Annually' : 'Pay Monthly';
86934
- return `${info.planItem.name} - ${periodLabel}`;
86933
+ return info.planItem.externalName || info.planItem.name || 'Plan';
86935
86934
  }
86936
86935
  formatPrice() {
86937
86936
  const info = this.planInfo();
@@ -87229,112 +87228,112 @@ class PlanCardComponent {
87229
87228
  standalone: true,
87230
87229
  imports: [CommonModule],
87231
87230
  changeDetection: ChangeDetectionStrategy.OnPush,
87232
- template: `
87233
- <div
87234
- (click)="handleCardClick()"
87235
- [ngClass]="cardContainerClasses()"
87236
- class="relative rounded-2xl border-2 p-6 transition-all duration-200 cursor-pointer hover:scale-[1.02]">
87237
-
87238
- @if (showBestValueBadge()) {
87239
- <div [ngClass]="badgeClasses()" class="absolute -top-3 left-1/2 transform -translate-x-1/2 px-4 py-1 rounded-full text-xs font-bold">
87240
- Best value
87241
- </div>
87242
- }
87243
-
87244
- <div class="flex items-start justify-between mb-6">
87245
- <div class="flex-1">
87246
- <h3 [ngClass]="planTitleClasses()" class="text-xl font-bold mb-2">
87247
- {{ getPlanTitle() }}
87248
- </h3>
87249
- <div class="flex items-baseline gap-2">
87250
- <span [ngClass]="priceClasses()" class="text-4xl font-bold">
87251
- {{ formatPrice() }}
87252
- </span>
87253
- <span [ngClass]="pricePeriodClasses()" class="text-base">
87254
- {{ getPricePeriod() }}
87255
- </span>
87256
- </div>
87257
- </div>
87258
- <div class="flex-shrink-0 ml-4">
87259
- <div [ngClass]="radioClasses()" class="w-6 h-6 rounded-full border-2 flex items-center justify-center transition-all duration-200">
87260
- @if (isSelected()) {
87261
- <div [ngClass]="radioInnerClasses()" class="w-3 h-3 rounded-full"></div>
87262
- }
87263
- </div>
87264
- </div>
87265
- </div>
87266
-
87267
- <div [ngClass]="sectionClasses()" class="space-y-4">
87268
- <div [ngClass]="featureRowClasses()" class="flex justify-between items-center py-3 border-b">
87269
- <div class="flex items-center gap-2">
87270
- <span [ngClass]="labelClasses()" class="text-sm font-medium">AI usage</span>
87271
- @if (hasTooltip('aiUsage')) {
87272
- <button [ngClass]="tooltipButtonClasses()" class="w-4 h-4 rounded-full flex items-center justify-center">
87273
- <svg class="w-3 h-3" fill="currentColor" viewBox="0 0 20 20">
87274
- <path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z" clip-rule="evenodd"></path>
87275
- </svg>
87276
- </button>
87277
- }
87278
- </div>
87279
- <span [ngClass]="valueClasses()" class="text-sm font-semibold">
87280
- charged monthly based on your actual usage
87281
- </span>
87282
- </div>
87283
-
87284
- <div [ngClass]="featureRowClasses()" class="flex justify-between items-center py-3 border-b">
87285
- <div class="flex items-center gap-2">
87286
- <span [ngClass]="labelClasses()" class="text-sm font-medium">Shops</span>
87287
- @if (hasTooltip('shops')) {
87288
- <button [ngClass]="tooltipButtonClasses()" class="w-4 h-4 rounded-full flex items-center justify-center">
87289
- <svg class="w-3 h-3" fill="currentColor" viewBox="0 0 20 20">
87290
- <path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z" clip-rule="evenodd"></path>
87291
- </svg>
87292
- </button>
87293
- }
87294
- </div>
87295
- <div class="text-right">
87296
- <div [ngClass]="valueClasses()" class="text-sm font-semibold">
87297
- {{ getShopsQuantity() }}
87298
- </div>
87299
- @if (getAdditionalShopsPrice()) {
87300
- <div [ngClass]="subValueClasses()" class="text-xs mt-1">
87301
- {{ getAdditionalShopsPrice() }}
87302
- </div>
87303
- }
87304
- </div>
87305
- </div>
87306
-
87307
- <div [ngClass]="featureRowClasses()" class="flex justify-between items-center py-3 border-b">
87308
- <span [ngClass]="labelClasses()" class="text-sm font-medium">Unlimited recommendations</span>
87309
- <svg [ngClass]="checkIconClasses()" class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
87310
- <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
87311
- </svg>
87312
- </div>
87313
-
87314
- <div [ngClass]="featureRowClasses()" class="flex justify-between items-center py-3 border-b">
87315
- <span [ngClass]="labelClasses()" class="text-sm font-medium">Unlimited seats</span>
87316
- <svg [ngClass]="checkIconClasses()" class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
87317
- <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
87318
- </svg>
87319
- </div>
87320
-
87321
- <div [ngClass]="featureRowClasses()" class="flex justify-between items-center py-3 border-b">
87322
- <span [ngClass]="labelClasses()" class="text-sm font-medium">Google Analytics integration</span>
87323
- <svg [ngClass]="checkIconClasses()" class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
87324
- <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
87325
- </svg>
87326
- </div>
87327
-
87328
- <div [ngClass]="contractTermsClasses()" class="pt-4">
87329
- <h4 [ngClass]="contractTermsLabelClasses()" class="text-xs font-semibold uppercase tracking-wider mb-2">
87330
- Contract terms
87331
- </h4>
87332
- <p [ngClass]="contractTermsTextClasses()" class="text-sm leading-relaxed">
87333
- {{ getContractTerms() }}
87334
- </p>
87335
- </div>
87336
- </div>
87337
- </div>
87231
+ template: `
87232
+ <div
87233
+ (click)="handleCardClick()"
87234
+ [ngClass]="cardContainerClasses()"
87235
+ class="relative rounded-2xl border-2 p-6 transition-all duration-200 cursor-pointer hover:scale-[1.02]">
87236
+
87237
+ @if (showBestValueBadge()) {
87238
+ <div [ngClass]="badgeClasses()" class="absolute -top-3 left-1/2 transform -translate-x-1/2 px-4 py-1 rounded-full text-xs font-bold">
87239
+ Best value
87240
+ </div>
87241
+ }
87242
+
87243
+ <div class="flex items-start justify-between mb-6">
87244
+ <div class="flex-1">
87245
+ <h3 [ngClass]="planTitleClasses()" class="text-xl font-bold mb-2">
87246
+ {{ getPlanTitle() }}
87247
+ </h3>
87248
+ <div class="flex items-baseline gap-2">
87249
+ <span [ngClass]="priceClasses()" class="text-4xl font-bold">
87250
+ {{ formatPrice() }}
87251
+ </span>
87252
+ <span [ngClass]="pricePeriodClasses()" class="text-base">
87253
+ {{ getPricePeriod() }}
87254
+ </span>
87255
+ </div>
87256
+ </div>
87257
+ <div class="flex-shrink-0 ml-4">
87258
+ <div [ngClass]="radioClasses()" class="w-6 h-6 rounded-full border-2 flex items-center justify-center transition-all duration-200">
87259
+ @if (isSelected()) {
87260
+ <div [ngClass]="radioInnerClasses()" class="w-3 h-3 rounded-full"></div>
87261
+ }
87262
+ </div>
87263
+ </div>
87264
+ </div>
87265
+
87266
+ <div [ngClass]="sectionClasses()" class="space-y-4">
87267
+ <div [ngClass]="featureRowClasses()" class="flex justify-between items-center py-3 border-b">
87268
+ <div class="flex items-center gap-2">
87269
+ <span [ngClass]="labelClasses()" class="text-sm font-medium">AI usage</span>
87270
+ @if (hasTooltip('aiUsage')) {
87271
+ <button [ngClass]="tooltipButtonClasses()" class="w-4 h-4 rounded-full flex items-center justify-center">
87272
+ <svg class="w-3 h-3" fill="currentColor" viewBox="0 0 20 20">
87273
+ <path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z" clip-rule="evenodd"></path>
87274
+ </svg>
87275
+ </button>
87276
+ }
87277
+ </div>
87278
+ <span [ngClass]="valueClasses()" class="text-sm font-semibold">
87279
+ charged monthly based on your actual usage
87280
+ </span>
87281
+ </div>
87282
+
87283
+ <div [ngClass]="featureRowClasses()" class="flex justify-between items-center py-3 border-b">
87284
+ <div class="flex items-center gap-2">
87285
+ <span [ngClass]="labelClasses()" class="text-sm font-medium">Shops</span>
87286
+ @if (hasTooltip('shops')) {
87287
+ <button [ngClass]="tooltipButtonClasses()" class="w-4 h-4 rounded-full flex items-center justify-center">
87288
+ <svg class="w-3 h-3" fill="currentColor" viewBox="0 0 20 20">
87289
+ <path fill-rule="evenodd" d="M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z" clip-rule="evenodd"></path>
87290
+ </svg>
87291
+ </button>
87292
+ }
87293
+ </div>
87294
+ <div class="text-right">
87295
+ <div [ngClass]="valueClasses()" class="text-sm font-semibold">
87296
+ {{ getShopsQuantity() }}
87297
+ </div>
87298
+ @if (getAdditionalShopsPrice()) {
87299
+ <div [ngClass]="subValueClasses()" class="text-xs mt-1">
87300
+ {{ getAdditionalShopsPrice() }}
87301
+ </div>
87302
+ }
87303
+ </div>
87304
+ </div>
87305
+
87306
+ <div [ngClass]="featureRowClasses()" class="flex justify-between items-center py-3 border-b">
87307
+ <span [ngClass]="labelClasses()" class="text-sm font-medium">Unlimited recommendations</span>
87308
+ <svg [ngClass]="checkIconClasses()" class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
87309
+ <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
87310
+ </svg>
87311
+ </div>
87312
+
87313
+ <div [ngClass]="featureRowClasses()" class="flex justify-between items-center py-3 border-b">
87314
+ <span [ngClass]="labelClasses()" class="text-sm font-medium">Unlimited seats</span>
87315
+ <svg [ngClass]="checkIconClasses()" class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
87316
+ <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
87317
+ </svg>
87318
+ </div>
87319
+
87320
+ <div [ngClass]="featureRowClasses()" class="flex justify-between items-center py-3 border-b">
87321
+ <span [ngClass]="labelClasses()" class="text-sm font-medium">Google Analytics integration</span>
87322
+ <svg [ngClass]="checkIconClasses()" class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
87323
+ <path fill-rule="evenodd" d="M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z" clip-rule="evenodd"></path>
87324
+ </svg>
87325
+ </div>
87326
+
87327
+ <div [ngClass]="contractTermsClasses()" class="pt-4">
87328
+ <h4 [ngClass]="contractTermsLabelClasses()" class="text-xs font-semibold uppercase tracking-wider mb-2">
87329
+ Contract terms
87330
+ </h4>
87331
+ <p [ngClass]="contractTermsTextClasses()" class="text-sm leading-relaxed">
87332
+ {{ getContractTerms() }}
87333
+ </p>
87334
+ </div>
87335
+ </div>
87336
+ </div>
87338
87337
  `
87339
87338
  }]
87340
87339
  }], null, { viewMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "viewMode", required: false }] }], planInfo: [{ type: i0.Input, args: [{ isSignal: true, alias: "planInfo", required: true }] }], isSelected: [{ type: i0.Input, args: [{ isSignal: true, alias: "isSelected", required: false }] }], selectedPeriodUnit: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectedPeriodUnit", required: false }] }], planSelected: [{ type: i0.Output, args: ["planSelected"] }] }); })();
@@ -88935,7 +88934,7 @@ class SymphiqProfileAnalysisDashboardComponent {
88935
88934
  this.isEditingCurrency = signal(false, ...(ngDevMode ? [{ debugName: "isEditingCurrency" }] : []));
88936
88935
  this.editingCurrencySelection = signal(null, ...(ngDevMode ? [{ debugName: "editingCurrencySelection" }] : []));
88937
88936
  this.selectedPeriodUnit = computed(() => {
88938
- return this.account()?.onboardingPeriodUnit || ChargebeeItemPricePeriodUnitEnum.YEAR;
88937
+ return this.account()?.chargebeeItemPricePeriodUnit || ChargebeeItemPricePeriodUnitEnum.YEAR;
88939
88938
  }, ...(ngDevMode ? [{ debugName: "selectedPeriodUnit" }] : []));
88940
88939
  this.showPlanSelection = computed(() => {
88941
88940
  return this.hasBillingCurrency() && this.planCardInfos() && this.planCardInfos().length > 0;
@@ -88974,7 +88973,9 @@ class SymphiqProfileAnalysisDashboardComponent {
88974
88973
  }, ...(ngDevMode ? [{ debugName: "currencySelectionEffect" }] : []));
88975
88974
  this.planLoadingEffect = effect(() => {
88976
88975
  const planCardInfos = this.planCardInfos();
88976
+ console.log('[planLoadingEffect] triggered', { planCardInfos: planCardInfos?.length, isPlanLoading: this.isPlanLoading() });
88977
88977
  if (planCardInfos && this.isPlanLoading()) {
88978
+ console.log('[planLoadingEffect] resetting isPlanLoading to false');
88978
88979
  this.isPlanLoading.set(false);
88979
88980
  }
88980
88981
  }, ...(ngDevMode ? [{ debugName: "planLoadingEffect" }] : []));
@@ -89698,7 +89699,9 @@ class SymphiqProfileAnalysisDashboardComponent {
89698
89699
  }
89699
89700
  }
89700
89701
  handlePeriodUnitChange(periodUnit) {
89702
+ console.log('[handlePeriodUnitChange] setting isPlanLoading to true', { periodUnit });
89701
89703
  this.isPlanLoading.set(true);
89704
+ console.log('[handlePeriodUnitChange] isPlanLoading is now:', this.isPlanLoading());
89702
89705
  this.periodUnitChanged.emit(periodUnit);
89703
89706
  }
89704
89707
  handlePlanSelection(plan) {