@the-liberators/ngx-scrumteamsurvey-tools 2.3.115 → 2.3.116

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.
@@ -4004,6 +4004,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImpor
4004
4004
  args: [{ providedIn: 'root' }]
4005
4005
  }], ctorParameters: () => [] });
4006
4006
 
4007
+ // Source byu Samuel Berthe - https://github.com/samber/ngx-domarrow
4007
4008
  class ArrowComponent {
4008
4009
  constructor(elem, arrowUpdateService) {
4009
4010
  this.elem = elem;
@@ -4015,12 +4016,12 @@ class ArrowComponent {
4015
4016
  this.text = null;
4016
4017
  this.toolTip = null;
4017
4018
  this.color = null;
4018
- this.width = 1;
4019
+ this.width = null;
4019
4020
  this.onlyVisible = false;
4020
- this.fromX = 0.5;
4021
- this.fromY = 0.5;
4022
- this.toX = 0.5;
4023
- this.toY = 0.5;
4021
+ this.fromX = null;
4022
+ this.fromY = null;
4023
+ this.toX = null;
4024
+ this.toY = null;
4024
4025
  this.arrowIndices = [];
4025
4026
  this.styleLine = [];
4026
4027
  this.styleArrowFw = [];
@@ -4028,58 +4029,71 @@ class ArrowComponent {
4028
4029
  this.needSwap = [];
4029
4030
  this.elementPositionBackup = '';
4030
4031
  }
4031
- getNumberOrDefault(val, def) {
4032
+ getNumberOrDef(val, def) {
4032
4033
  return typeof val === 'number' && !isNaN(val) ? val : def;
4033
4034
  }
4034
4035
  isVisible(element) {
4035
4036
  return element && element.style.visibility !== 'hidden';
4036
4037
  }
4037
- inside(minX, minY, maxX, maxY, x, y) {
4038
- return minX <= x && x <= maxX && minY <= y && y <= maxY;
4038
+ inside(minX, minY, maxX, maxY, x1, y1) {
4039
+ return minX <= x1 && x1 <= maxX && minY <= y1 && y1 <= maxY;
4039
4040
  }
4040
4041
  intersectionPoint(x1, y1, x2, y2, minX, minY, maxX, maxY) {
4041
4042
  const min = Math.min;
4042
4043
  const max = Math.max;
4043
4044
  const good = this.inside.bind(null, min(x1, x2), min(y1, y2), max(x1, x2), max(y1, y2));
4044
- if ((x1 <= minX && x2 <= minX) || (y1 <= minY && y2 <= minY) ||
4045
- (x1 >= maxX && x2 >= maxX) || (y1 >= maxY && y2 >= maxY) ||
4046
- (this.inside(minX, minY, maxX, maxY, x1, y1) && this.inside(minX, minY, maxX, maxY, x2, y2))) {
4045
+ if ((x1 <= minX && x2 <= minX)
4046
+ || (y1 <= minY && y2 <= minY)
4047
+ || (x1 >= maxX && x2 >= maxX)
4048
+ || (y1 >= maxY && y2 >= maxY)
4049
+ || (this.inside(minX, minY, maxX, maxY, x1, y1) && this.inside(minX, minY, maxX, maxY, x2, y2)))
4047
4050
  return null;
4048
- }
4049
4051
  const m = (y2 - y1) / (x2 - x1);
4050
4052
  let y = m * (minX - x1) + y1;
4051
4053
  if (minY < y && y < maxY && good(minX, y))
4052
- return { x: minX, y };
4054
+ return {
4055
+ x: minX,
4056
+ y: y
4057
+ };
4053
4058
  y = m * (maxX - x1) + y1;
4054
4059
  if (minY < y && y < maxY && good(maxX, y))
4055
- return { x: maxX, y };
4060
+ return {
4061
+ x: maxX,
4062
+ y: y
4063
+ };
4056
4064
  let x = (minY - y1) / m + x1;
4057
4065
  if (minX < x && x < maxX && good(x, minY))
4058
- return { x, y: minY };
4066
+ return {
4067
+ x: x,
4068
+ y: minY
4069
+ };
4059
4070
  x = (maxY - y1) / m + x1;
4060
4071
  if (minX < x && x < maxX && good(x, maxY))
4061
- return { x, y: maxY };
4072
+ return {
4073
+ x: x,
4074
+ y: maxY
4075
+ };
4062
4076
  return null;
4063
4077
  }
4064
4078
  adjustLine(nth, from, to) {
4065
- if (!from || !to)
4079
+ if (to == null || from == null)
4066
4080
  return;
4067
4081
  const color = this.color || '808080';
4068
- const W = this.getNumberOrDefault(this.width, 1);
4082
+ const W = this.width || 1;
4069
4083
  const fromB = parseFloat(from.style.top) ? null : from.getBoundingClientRect();
4070
4084
  const toB = parseFloat(to.style.top) ? null : to.getBoundingClientRect();
4071
- const fromLeft = fromB ? window.scrollX + fromB.left : parseFloat(from.style.left);
4072
- const fromTop = fromB ? window.scrollY + fromB.top : parseFloat(from.style.top);
4073
- const toLeft = toB ? window.scrollX + toB.left : parseFloat(to.style.left);
4074
- const toTop = toB ? window.scrollY + toB.top : parseFloat(to.style.top);
4075
- const fromWidth = fromB ? fromB.width : parseFloat(from.style.width) || from.offsetWidth;
4076
- const fromHeight = fromB ? fromB.height : parseFloat(from.style.height) || from.offsetHeight;
4077
- const toWidth = toB ? toB.width : parseFloat(to.style.width) || to.offsetWidth;
4078
- const toHeight = toB ? toB.height : parseFloat(to.style.height) || to.offsetHeight;
4079
- let fT = fromTop + fromHeight * this.getNumberOrDefault(this.fromY, 0.5);
4080
- let tT = toTop + toHeight * this.getNumberOrDefault(this.toY, 0.5);
4081
- let fL = fromLeft + fromWidth * this.getNumberOrDefault(this.fromX, 0.5);
4082
- let tL = toLeft + toWidth * this.getNumberOrDefault(this.toX, 0.5);
4085
+ const fromBStartY = (fromB ? window.scrollY + fromB.top : parseFloat(from.style.top));
4086
+ const fromBStartX = (fromB ? window.scrollX + fromB.left : parseFloat(from.style.left));
4087
+ const toBStartY = (toB ? window.scrollY + toB.top : parseFloat(to.style.top));
4088
+ const toBStartX = (toB ? window.scrollX + toB.left : parseFloat(to.style.left));
4089
+ const fromBWidth = (fromB ? fromB.width : parseFloat(from.style.width) || from.offsetWidth);
4090
+ const fromBHeight = (fromB ? fromB.height : parseFloat(from.style.height) || from.offsetHeight);
4091
+ const toBWidth = (toB ? toB.width : parseFloat(to.style.width) || to.offsetWidth);
4092
+ const toBHeight = (toB ? toB.height : parseFloat(to.style.height) || to.offsetHeight);
4093
+ let fT = fromBStartY + fromBHeight * this.getNumberOrDef(this.fromY, 0.5);
4094
+ let tT = toBStartY + toBHeight * this.getNumberOrDef(this.toY, 0.5);
4095
+ let fL = fromBStartX + fromBWidth * this.getNumberOrDef(this.fromX, 0.5);
4096
+ let tL = toBStartX + toBWidth * this.getNumberOrDef(this.toX, 0.5);
4083
4097
  let CA = Math.abs(tT - fT);
4084
4098
  let CO = Math.abs(tL - fL);
4085
4099
  let H = Math.sqrt(CA * CA + CO * CO);
@@ -4087,8 +4101,8 @@ class ArrowComponent {
4087
4101
  if ((fT >= tT || fL >= tL) && (tT >= fT || tL >= fL))
4088
4102
  ANG *= -1;
4089
4103
  if (this.onlyVisible) {
4090
- const arrangeFrom = this.intersectionPoint(fL, fT, tL, tT, fromLeft, fromTop, fromLeft + fromWidth, fromTop + fromHeight);
4091
- const arrangeTo = this.intersectionPoint(fL, fT, tL, tT, toLeft, toTop, toLeft + toWidth, toTop + toHeight);
4104
+ const arrangeFrom = this.intersectionPoint(fL, fT, tL, tT, fromBStartX, fromBStartY, fromBStartX + fromBWidth, fromBStartY + fromBHeight);
4105
+ const arrangeTo = this.intersectionPoint(fL, fT, tL, tT, toBStartX, toBStartY, toBStartX + toBWidth, toBStartY + toBHeight);
4092
4106
  if (arrangeFrom) {
4093
4107
  fL = arrangeFrom.x;
4094
4108
  fT = arrangeFrom.y;
@@ -4101,55 +4115,62 @@ class ArrowComponent {
4101
4115
  CO = Math.abs(tL - fL);
4102
4116
  H = Math.sqrt(CA * CA + CO * CO);
4103
4117
  }
4104
- const topPos = (tT + fT) / 2 - W / 2;
4105
- const leftPos = (tL + fL) / 2 - H / 2;
4106
- const arrows = this.elem.nativeElement.querySelectorAll(`.line-${nth} .arrow`);
4118
+ const top = (tT + fT) / 2 - W / 2;
4119
+ const left = (tL + fL) / 2 - H / 2;
4120
+ const arrows = this.elem.nativeElement.querySelectorAll('.line-' + nth + ' .arrow');
4107
4121
  this.needSwap[nth] = (fL > tL || (fL === tL && fT < tT));
4108
- const arrowFw = this.needSwap[nth] ? this.isVisible(arrows[0]) && arrows[0] : !this.needSwap[nth] ? this.isVisible(arrows[1]) && arrows[1] : null;
4109
- const arrowBw = !this.needSwap[nth] ? this.isVisible(arrows[0]) && arrows[0] : this.needSwap[nth] ? this.isVisible(arrows[1]) && arrows[1] : null;
4110
- this.styleArrowFw[nth] = { top: `${W / 2 - 6}px` };
4111
- this.styleArrowBw[nth] = { top: `${W / 2 - 6}px` };
4112
- this.styleLine[nth] = {
4113
- display: 'initial',
4114
- top: `${topPos}px`,
4115
- left: `${leftPos}px`,
4116
- width: `${H}px`,
4117
- height: `${W}px`,
4118
- background: `linear-gradient(to right, ${arrowFw ? 'transparent' : color} 11px, ${color} 11px ${H - 11}px, ${arrowBw ? 'transparent' : color} ${H - 11}px 100%)`,
4119
- transform: `rotate(${ANG}deg)`,
4120
- '-webkit-transform': `rotate(${ANG}deg)`,
4121
- '-moz-transform': `rotate(${ANG}deg)`,
4122
- '-ms-transform': `rotate(${ANG}deg)`,
4123
- '-o-transform': `rotate(${ANG}deg)`
4124
- };
4122
+ const arrowFw = this.needSwap[nth] && this.isVisible(arrows[0]) && arrows[0] || !this.needSwap[nth] && this.isVisible(arrows[1]) && arrows[1];
4123
+ const arrowBw = !this.needSwap[nth] && this.isVisible(arrows[0]) && arrows[0] || this.needSwap[nth] && this.isVisible(arrows[1]) && arrows[1];
4124
+ this.styleArrowFw[nth] = {};
4125
+ this.styleArrowBw[nth] = {};
4126
+ this.styleLine[nth] = {};
4127
+ this.styleArrowFw[nth]['top'] = W / 2 - 6 + 'px';
4128
+ this.styleArrowBw[nth]['top'] = W / 2 - 6 + 'px';
4129
+ this.styleLine[nth]['display'] = 'none';
4130
+ this.styleLine[nth]['-webkit-transform'] = 'rotate(' + ANG + 'deg)';
4131
+ this.styleLine[nth]['-moz-transform'] = 'rotate(' + ANG + 'deg)';
4132
+ this.styleLine[nth]['-ms-transform'] = 'rotate(' + ANG + 'deg)';
4133
+ this.styleLine[nth]['-o-transform'] = 'rotate(' + ANG + 'deg)';
4134
+ this.styleLine[nth]['-transform'] = 'rotate(' + ANG + 'deg)';
4135
+ this.styleLine[nth]['top'] = top + 'px';
4136
+ this.styleLine[nth]['left'] = left + 'px';
4137
+ this.styleLine[nth]['width'] = H + 'px';
4138
+ this.styleLine[nth]['height'] = W + 'px';
4139
+ this.styleLine[nth]['background'] = 'linear-gradient(to right, ' +
4140
+ (arrowFw ? 'transparent' : color) + ' 11px, ' +
4141
+ color + ' 11px ' + (H - 11) + 'px, ' +
4142
+ (arrowBw ? 'transparent' : color) + ' ' + (H - 11) + 'px 100%)';
4143
+ this.styleLine[nth]['display'] = 'initial';
4125
4144
  }
4126
4145
  adjustLines() {
4127
4146
  const pairs = this.getFromToPairs();
4128
- const length = pairs.length;
4129
- this.needSwap = new Array(length).fill(false);
4130
- this.styleLine = new Array(length).fill(null);
4131
- this.styleArrowBw = new Array(length).fill(null);
4132
- this.styleArrowFw = new Array(length).fill(null);
4133
- this.arrowIndices = Array.from({ length }, (_, i) => i);
4134
- pairs.forEach(([from, to], i) => {
4135
- this.adjustLine(i, from, to);
4147
+ // init values
4148
+ this.needSwap = Array(pairs.length).fill(false);
4149
+ this.styleLine = Array(pairs.length).fill([]);
4150
+ this.styleArrowBw = Array(pairs.length).fill({});
4151
+ this.styleArrowFw = Array(pairs.length).fill({});
4152
+ this.arrowIndices = Array(pairs.length)
4153
+ .fill(null).map((_, i) => i);
4154
+ pairs.map((pair, i) => {
4155
+ this.adjustLine(i, pair[0], pair[1]);
4136
4156
  });
4137
4157
  }
4138
4158
  getFromToPairs() {
4139
4159
  const froms = Array.from(document.querySelectorAll(this.from));
4140
4160
  const tos = Array.from(document.querySelectorAll(this.to));
4141
- const pairs = [];
4142
- froms.forEach(fromEl => {
4143
- tos.forEach(toEl => {
4144
- if (fromEl && toEl)
4145
- pairs.push([fromEl, toEl]);
4146
- });
4147
- });
4148
- return pairs;
4161
+ return froms.reduce((acc1, cur1) => {
4162
+ return tos.reduce((acc2, cur2) => {
4163
+ acc2.push([cur1, cur2]);
4164
+ return acc2;
4165
+ }, acc1);
4166
+ }, []).filter((pair) => !!pair[0] && !!pair[1]);
4149
4167
  }
4150
4168
  trackPositionChange() {
4151
4169
  const pairs = this.getFromToPairs();
4152
- const currentPos = pairs.map(([from, to]) => JSON.stringify(from.getBoundingClientRect()) + JSON.stringify(to.getBoundingClientRect())).join(',');
4170
+ const currentPos = pairs.map((pair) => {
4171
+ return JSON.stringify(pair[0].getBoundingClientRect()) + JSON.stringify(pair[1].getBoundingClientRect());
4172
+ ;
4173
+ }).join(',');
4153
4174
  if (currentPos !== this.elementPositionBackup) {
4154
4175
  this.elementPositionBackup = currentPos;
4155
4176
  this.adjustLines();
@@ -4160,8 +4181,10 @@ class ArrowComponent {
4160
4181
  timer(10).subscribe(() => this.adjustLines());
4161
4182
  });
4162
4183
  this.adjustLines();
4163
- window.addEventListener('scroll', () => {
4164
- if (new Date().getTime() % 5 === 0) {
4184
+ window.addEventListener("scroll", () => {
4185
+ if (new Date().getTime() % 5 == 0) {
4186
+ // don't 🔥 the CPU
4187
+ // @TODO: better hack with setTimeout overriden at each event ?
4165
4188
  this.trackPositionChange();
4166
4189
  }
4167
4190
  });
@@ -4173,11 +4196,11 @@ class ArrowComponent {
4173
4196
  this.subscription.unsubscribe();
4174
4197
  }
4175
4198
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: ArrowComponent, deps: [{ token: i0.ElementRef }, { token: ArrowUpdateService }], target: i0.ɵɵFactoryTarget.Component }); }
4176
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.3", type: ArrowComponent, isStandalone: false, selector: "arrow", inputs: { from: "from", to: "to", head: "head", tail: "tail", text: "text", toolTip: "toolTip", color: "color", width: "width", onlyVisible: "onlyVisible", fromX: "fromX", fromY: "fromY", toX: "toX", toY: "toY" }, ngImport: i0, template: "@for (index of arrowIndices; track index) {\n <div class=\"line line-{{ index }}\" [ngStyle]=\"styleLine[index]\" [matTooltip]=\"toolTip\">\n @if (head == true) {\n <div class=\"arrow head {{ needSwap[index] ? 'arrow-bw' : 'arrow-fw' }}\"\n [ngStyle]=\"needSwap[index] ? styleArrowBw[index] : styleArrowFw[index]\"></div>\n }\n @if (tail == true) {\n <div class=\"arrow tail {{ needSwap[index] ? 'arrow-fw' : 'arrow-bw' }}\"\n [ngStyle]=\"needSwap[index] ? styleArrowFw[index] : styleArrowBw[index]\"></div>\n }\n @if (!!text && text.length > 0) {\n <div class=\"text\">{{ text }}</div>\n }\n </div>\n}\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.line{position:absolute;height:2px;background-color:#bdbdbd}.line .arrow{position:absolute;top:-5px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;background-clip:border-box}.line .arrow-fw{border-right:12px solid #bdbdbd}.line .arrow-bw{left:100%;border-left:12px solid #bdbdbd;transform:translate(-8px)}.line .text{position:absolute;top:100%;left:50%;transform:translate(-50%,-100%);font-size:20px;font-weight:600;padding-bottom:5px;color:#f0f0f0}\n"], dependencies: [{ kind: "directive", type: i1$4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
4199
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.3", type: ArrowComponent, isStandalone: false, selector: "arrow", inputs: { from: "from", to: "to", head: "head", tail: "tail", text: "text", toolTip: "toolTip", color: "color", width: "width", onlyVisible: "onlyVisible", fromX: "fromX", fromY: "fromY", toX: "toX", toY: "toY" }, ngImport: i0, template: "@for (index of arrowIndices; track index) {\n<div class=\"line line-{{ index }}\" [ngStyle]=\"styleLine[index]\" [matTooltip]=\"toolTip\">\n @if (head == true) {\n <div class=\"arrow head {{ needSwap[index] ? 'arrow-bw' : 'arrow-fw' }}\"\n [ngStyle]=\"needSwap[index] ? styleArrowBw[index] : styleArrowFw[index]\"></div>\n }\n @if (tail == true) {\n <div class=\"arrow tail {{ needSwap[index] ? 'arrow-fw' : 'arrow-bw' }}\"\n [ngStyle]=\"needSwap[index] ? styleArrowFw[index] : styleArrowBw[index]\"></div>\n }\n @if (!!text && text.length > 0) {\n <div class=\"text\">{{ text }}</div>\n }\n</div>\n}\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.line .arrow{top:-5px;height:0px;width:0px;position:absolute;border-bottom:6px solid transparent;border-top:6px solid transparent;background-clip:border-box}.line .arrow-fw{border-right:12px solid #bdbdbd}.line .arrow-bw{left:100%;border-left:12px solid #bdbdbd;transform:translate(-8px)}.line .text{position:absolute;top:100%;left:50%;transform:translate(-50%,-100%);font-size:20px;color:#bdbdbd;font-weight:600;padding-bottom:5px}.line{position:absolute;height:2px;background-color:#bdbdbd}\n"], dependencies: [{ kind: "directive", type: i1$4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1$6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
4177
4200
  }
4178
4201
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.3", ngImport: i0, type: ArrowComponent, decorators: [{
4179
4202
  type: Component,
4180
- args: [{ selector: 'arrow', standalone: false, template: "@for (index of arrowIndices; track index) {\n <div class=\"line line-{{ index }}\" [ngStyle]=\"styleLine[index]\" [matTooltip]=\"toolTip\">\n @if (head == true) {\n <div class=\"arrow head {{ needSwap[index] ? 'arrow-bw' : 'arrow-fw' }}\"\n [ngStyle]=\"needSwap[index] ? styleArrowBw[index] : styleArrowFw[index]\"></div>\n }\n @if (tail == true) {\n <div class=\"arrow tail {{ needSwap[index] ? 'arrow-fw' : 'arrow-bw' }}\"\n [ngStyle]=\"needSwap[index] ? styleArrowFw[index] : styleArrowBw[index]\"></div>\n }\n @if (!!text && text.length > 0) {\n <div class=\"text\">{{ text }}</div>\n }\n </div>\n}\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.line{position:absolute;height:2px;background-color:#bdbdbd}.line .arrow{position:absolute;top:-5px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;background-clip:border-box}.line .arrow-fw{border-right:12px solid #bdbdbd}.line .arrow-bw{left:100%;border-left:12px solid #bdbdbd;transform:translate(-8px)}.line .text{position:absolute;top:100%;left:50%;transform:translate(-50%,-100%);font-size:20px;font-weight:600;padding-bottom:5px;color:#f0f0f0}\n"] }]
4203
+ args: [{ selector: 'arrow', standalone: false, template: "@for (index of arrowIndices; track index) {\n<div class=\"line line-{{ index }}\" [ngStyle]=\"styleLine[index]\" [matTooltip]=\"toolTip\">\n @if (head == true) {\n <div class=\"arrow head {{ needSwap[index] ? 'arrow-bw' : 'arrow-fw' }}\"\n [ngStyle]=\"needSwap[index] ? styleArrowBw[index] : styleArrowFw[index]\"></div>\n }\n @if (tail == true) {\n <div class=\"arrow tail {{ needSwap[index] ? 'arrow-fw' : 'arrow-bw' }}\"\n [ngStyle]=\"needSwap[index] ? styleArrowFw[index] : styleArrowBw[index]\"></div>\n }\n @if (!!text && text.length > 0) {\n <div class=\"text\">{{ text }}</div>\n }\n</div>\n}\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.line .arrow{top:-5px;height:0px;width:0px;position:absolute;border-bottom:6px solid transparent;border-top:6px solid transparent;background-clip:border-box}.line .arrow-fw{border-right:12px solid #bdbdbd}.line .arrow-bw{left:100%;border-left:12px solid #bdbdbd;transform:translate(-8px)}.line .text{position:absolute;top:100%;left:50%;transform:translate(-50%,-100%);font-size:20px;color:#bdbdbd;font-weight:600;padding-bottom:5px}.line{position:absolute;height:2px;background-color:#bdbdbd}\n"] }]
4181
4204
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: ArrowUpdateService }], propDecorators: { from: [{
4182
4205
  type: Input
4183
4206
  }], to: [{