@yoobic/yobi 8.2.0-27 → 8.2.0-28

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 (55) hide show
  1. package/dist/cjs/design-system.cjs.js +1 -1
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/yoo-flip-card.cjs.entry.js +3 -0
  4. package/dist/cjs/yoo-form-creator-block-expandable.cjs.entry.js +3 -3
  5. package/dist/cjs/yoo-form-date-time.cjs.entry.js +1 -1
  6. package/dist/cjs/yoo-form-dynamic.cjs.entry.js +6 -2
  7. package/dist/cjs/yoo-form-input-container.cjs.entry.js +1 -1
  8. package/dist/cjs/yoo-form-text-editor.cjs.entry.js +4 -0
  9. package/dist/cjs/yoo-kpi-external.cjs.entry.js +1 -1
  10. package/dist/cjs/yoo-reveal.cjs.entry.js +6 -1
  11. package/dist/cjs/yoo-text-sequence.cjs.entry.js +1 -4
  12. package/dist/cjs/yoo-videoplayer-videojs.cjs.entry.js +9 -7
  13. package/dist/collection/components/1.atoms/flip-card/flip-card.js +19 -0
  14. package/dist/collection/components/2.molecules/reveal/reveal.css +9 -1
  15. package/dist/collection/components/2.molecules/reveal/reveal.js +24 -0
  16. package/dist/collection/components/2.molecules/text-sequence/text-sequence.js +1 -4
  17. package/dist/collection/components/3.organisms/video-player/videoplayer-videojs/videoplayer-videojs.js +9 -7
  18. package/dist/collection/components/form/form-date-time/form-date-time.js +1 -1
  19. package/dist/collection/components/form/form-dynamic/form-dynamic.css +0 -2
  20. package/dist/collection/components/form/form-dynamic/form-dynamic.js +5 -1
  21. package/dist/collection/components/form/form-input-container/form-input-container.css +1 -1
  22. package/dist/collection/components/form/form-text-editor/form-text-editor.js +23 -0
  23. package/dist/collection/components/form-creator/form-creator-block-expandable/form-creator-block-expandable.js +3 -3
  24. package/dist/collection/feature-platform/insight/kpi-external/kpi-external.js +1 -1
  25. package/dist/design-system/design-system.esm.js +1 -1
  26. package/dist/design-system/yoo-flip-card.entry.js +3 -0
  27. package/dist/design-system/yoo-form-creator-block-expandable.entry.js +3 -3
  28. package/dist/design-system/yoo-form-date-time.entry.js +1 -1
  29. package/dist/design-system/yoo-form-dynamic.entry.js +6 -2
  30. package/dist/design-system/yoo-form-input-container.entry.js +1 -1
  31. package/dist/design-system/yoo-form-text-editor.entry.js +4 -0
  32. package/dist/design-system/yoo-kpi-external.entry.js +1 -1
  33. package/dist/design-system/yoo-reveal.entry.js +6 -1
  34. package/dist/design-system/yoo-text-sequence.entry.js +1 -4
  35. package/dist/design-system/yoo-videoplayer-videojs.entry.js +9 -7
  36. package/dist/esm/design-system.js +1 -1
  37. package/dist/esm/loader.js +1 -1
  38. package/dist/esm/yoo-flip-card.entry.js +3 -0
  39. package/dist/esm/yoo-form-creator-block-expandable.entry.js +3 -3
  40. package/dist/esm/yoo-form-date-time.entry.js +1 -1
  41. package/dist/esm/yoo-form-dynamic.entry.js +6 -2
  42. package/dist/esm/yoo-form-input-container.entry.js +1 -1
  43. package/dist/esm/yoo-form-text-editor.entry.js +4 -0
  44. package/dist/esm/yoo-kpi-external.entry.js +1 -1
  45. package/dist/esm/yoo-reveal.entry.js +6 -1
  46. package/dist/esm/yoo-text-sequence.entry.js +1 -4
  47. package/dist/esm/yoo-videoplayer-videojs.entry.js +9 -7
  48. package/dist/types/components/1.atoms/flip-card/flip-card.d.ts +1 -0
  49. package/dist/types/components/2.molecules/reveal/reveal.d.ts +2 -0
  50. package/dist/types/components/2.molecules/text-sequence/text-sequence.d.ts +0 -1
  51. package/dist/types/components/form/form-text-editor/form-text-editor.d.ts +1 -0
  52. package/dist/types/components.d.ts +4 -0
  53. package/dist/types/home/runner/work/yoobic-ng-6/yoobic-ng-6/design-system/stencil/.stencil/shared/interfaces/src/entities/mission/mission.interface.d.ts +1 -2
  54. package/package.json +1 -1
  55. package/dist/types/components/form/image-cropper-dialog/pintura/pintura.d.ts +0 -1070
@@ -54,9 +54,6 @@ const YooTextSequence = class {
54
54
  componentDidLoad() {
55
55
  this.initSequenceHeight();
56
56
  }
57
- componentDidRender() {
58
- this.initSequenceHeight();
59
- }
60
57
  initSequenceHeight() {
61
58
  var _a;
62
59
  if (((_a = this.sequenceElements) === null || _a === void 0 ? void 0 : _a.length) && this.maxSequenceHeight) {
@@ -82,7 +79,7 @@ const YooTextSequence = class {
82
79
  const textsHeight = this.sequenceElements.map((e, i) => Math.round(e.offsetHeight * (i <= this.currentIndex ? 1 : .9)));
83
80
  this.host.style.setProperty('--max-sequence-height', `${this.maxSequenceHeight}px`);
84
81
  this.translateY = 0 - ((textsHeight.slice(0, this.currentIndex).reduce((acc, a) => acc + a, 0) + GAP_INTER_SEQUENCES * this.currentIndex));
85
- this.initSequenceHeight();
82
+ this.validity = this.currentIndex === this.sequenceElements.length - 1;
86
83
  }
87
84
  };
88
85
  return index.h("yoo-button", { size: "large", ...{ placement }, hidden: (isUp && !this.currentIndex) || (!isUp && this.currentIndex === ((_a = this.sequenceValues) === null || _a === void 0 ? void 0 : _a.length) - 1), onClick: () => clickArrow() }, index.h("yoo-icon", { name: `big-arrow-${isUp ? 'up' : 'down'}` }));
@@ -67784,13 +67784,15 @@ const YooVideoPlayerVideojsComponent = class {
67784
67784
  }, 100);
67785
67785
  }
67786
67786
  onCustomizeFullscreenButton() {
67787
- const Button = videojs.getComponent('Button');
67788
- const fullscreenToggle = new Button(this.player);
67789
- fullscreenToggle.el().classList.add('vjs-fullscreen-control');
67790
- fullscreenToggle.el().classList.add('custom');
67791
- fullscreenToggle.el().addEventListener('click', () => this.onTriggerFullscreen());
67792
- fullscreenToggle.el().addEventListener('touchend', () => this.onTriggerFullscreen());
67793
- this.player.controlBar.addChild(fullscreenToggle);
67787
+ if (this.player) {
67788
+ const Button = videojs.getComponent('Button');
67789
+ const fullscreenToggle = new Button(this.player);
67790
+ fullscreenToggle.el().classList.add('vjs-fullscreen-control');
67791
+ fullscreenToggle.el().classList.add('custom');
67792
+ fullscreenToggle.el().addEventListener('click', () => this.onTriggerFullscreen());
67793
+ fullscreenToggle.el().addEventListener('touchend', () => this.onTriggerFullscreen());
67794
+ this.player.controlBar.addChild(fullscreenToggle);
67795
+ }
67794
67796
  }
67795
67797
  renderVideoElement() {
67796
67798
  var _a;
@@ -19,6 +19,9 @@ export class YooFlipCardComponent {
19
19
  !isCardLayout && Object.assign(cardInnerElement.style, { width: `${slotContents[0].clientWidth}px` });
20
20
  }
21
21
  }
22
+ async loadCard() {
23
+ this.cardLoaded = true;
24
+ }
22
25
  componentDidLoad() {
23
26
  this.initCardSize();
24
27
  }
@@ -138,6 +141,22 @@ export class YooFlipCardComponent {
138
141
  "text": "",
139
142
  "tags": []
140
143
  }
144
+ },
145
+ "loadCard": {
146
+ "complexType": {
147
+ "signature": "() => Promise<void>",
148
+ "parameters": [],
149
+ "references": {
150
+ "Promise": {
151
+ "location": "global"
152
+ }
153
+ },
154
+ "return": "Promise<void>"
155
+ },
156
+ "docs": {
157
+ "text": "",
158
+ "tags": []
159
+ }
141
160
  }
142
161
  }; }
143
162
  static get elementRef() { return "host"; }
@@ -205,6 +205,14 @@ null: CSS defaults to use the ltr css, and adds [dir=rtl] selectors to override
205
205
  display: flex;
206
206
  flex-direction: column;
207
207
  gap: var(--spacing-16, 1rem);
208
- padding: var(--spacing-16, 1rem);
209
208
  background-color: var(--stable-light, #f1f1f1);
209
+ }
210
+ :host yoo-flip-card {
211
+ margin: 0 var(--spacing-16, 1rem);
212
+ }
213
+ :host yoo-flip-card:first-of-type {
214
+ padding-top: var(--spacing-16, 1rem);
215
+ }
216
+ :host yoo-flip-card:last-of-type {
217
+ padding-bottom: var(--spacing-16, 1rem);
210
218
  }
@@ -5,6 +5,10 @@ export class YooRevealComponent {
5
5
  this.validity = false;
6
6
  this.cardElements = [];
7
7
  }
8
+ onVisibleChanged() {
9
+ var _a;
10
+ this.isVisible && ((_a = this.cardElements) === null || _a === void 0 ? void 0 : _a.forEach(e => e === null || e === void 0 ? void 0 : e.loadCard()));
11
+ }
8
12
  onValidityChanged() {
9
13
  this.validityChanged.emit(this.validity);
10
14
  }
@@ -57,6 +61,23 @@ export class YooRevealComponent {
57
61
  "text": ""
58
62
  }
59
63
  },
64
+ "isVisible": {
65
+ "type": "boolean",
66
+ "mutable": false,
67
+ "complexType": {
68
+ "original": "boolean",
69
+ "resolved": "boolean",
70
+ "references": {}
71
+ },
72
+ "required": false,
73
+ "optional": true,
74
+ "docs": {
75
+ "tags": [],
76
+ "text": ""
77
+ },
78
+ "attribute": "is-visible",
79
+ "reflect": false
80
+ },
60
81
  "validity": {
61
82
  "type": "boolean",
62
83
  "mutable": true,
@@ -94,6 +115,9 @@ export class YooRevealComponent {
94
115
  }]; }
95
116
  static get elementRef() { return "host"; }
96
117
  static get watchers() { return [{
118
+ "propName": "isVisible",
119
+ "methodName": "onVisibleChanged"
120
+ }, {
97
121
  "propName": "validity",
98
122
  "methodName": "onValidityChanged"
99
123
  }]; }
@@ -43,9 +43,6 @@ export class YooTextSequence {
43
43
  componentDidLoad() {
44
44
  this.initSequenceHeight();
45
45
  }
46
- componentDidRender() {
47
- this.initSequenceHeight();
48
- }
49
46
  initSequenceHeight() {
50
47
  var _a;
51
48
  if (((_a = this.sequenceElements) === null || _a === void 0 ? void 0 : _a.length) && this.maxSequenceHeight) {
@@ -72,7 +69,7 @@ export class YooTextSequence {
72
69
  const textsHeight = this.sequenceElements.map((e, i) => Math.round(e.offsetHeight * (i <= this.currentIndex ? 1 : .9)));
73
70
  this.host.style.setProperty('--max-sequence-height', `${this.maxSequenceHeight}px`);
74
71
  this.translateY = 0 - ((textsHeight.slice(0, this.currentIndex).reduce((acc, a) => acc + a, 0) + GAP_INTER_SEQUENCES * this.currentIndex));
75
- this.initSequenceHeight();
72
+ this.validity = this.currentIndex === this.sequenceElements.length - 1;
76
73
  }
77
74
  };
78
75
  return h("yoo-button", { size: "large", ...{ placement }, hidden: (isUp && !this.currentIndex) || (!isUp && this.currentIndex === ((_a = this.sequenceValues) === null || _a === void 0 ? void 0 : _a.length) - 1), onClick: () => clickArrow() },
@@ -423,13 +423,15 @@ export class YooVideoPlayerVideojsComponent {
423
423
  }, 100);
424
424
  }
425
425
  onCustomizeFullscreenButton() {
426
- const Button = videojs.getComponent('Button');
427
- const fullscreenToggle = new Button(this.player);
428
- fullscreenToggle.el().classList.add('vjs-fullscreen-control');
429
- fullscreenToggle.el().classList.add('custom');
430
- fullscreenToggle.el().addEventListener('click', () => this.onTriggerFullscreen());
431
- fullscreenToggle.el().addEventListener('touchend', () => this.onTriggerFullscreen());
432
- this.player.controlBar.addChild(fullscreenToggle);
426
+ if (this.player) {
427
+ const Button = videojs.getComponent('Button');
428
+ const fullscreenToggle = new Button(this.player);
429
+ fullscreenToggle.el().classList.add('vjs-fullscreen-control');
430
+ fullscreenToggle.el().classList.add('custom');
431
+ fullscreenToggle.el().addEventListener('click', () => this.onTriggerFullscreen());
432
+ fullscreenToggle.el().addEventListener('touchend', () => this.onTriggerFullscreen());
433
+ this.player.controlBar.addChild(fullscreenToggle);
434
+ }
433
435
  }
434
436
  renderVideoElement() {
435
437
  var _a;
@@ -158,7 +158,7 @@ export class YooFormDateTimeComponent {
158
158
  if (newMinutes === 0 && prevMinutes !== newMinutes) {
159
159
  defaultValue.setHours(defaultValue.getHours() + 1);
160
160
  }
161
- this.value = this.value || defaultValue;
161
+ this.value = this.value || (this.isRange ? [defaultValue] : defaultValue);
162
162
  this.onToggle(ev);
163
163
  }
164
164
  onClearClicked(event) {
@@ -1061,8 +1061,6 @@ span.fr-img-caption.fr-view {
1061
1061
  :host .slide-container.no-shadow yoo-ion-scroll {
1062
1062
  margin-bottom: 0;
1063
1063
  padding: 0;
1064
- padding-top: 0rem;
1065
- padding-bottom: 2rem;
1066
1064
  border-radius: 0;
1067
1065
  box-shadow: none;
1068
1066
  }
@@ -541,6 +541,9 @@ export class YooFormDynamicComponent {
541
541
  if (field.updateValidation) {
542
542
  field.updateValidation(value);
543
543
  }
544
+ else if (field.forceUpdateValue) {
545
+ field.forceUpdateValue(value);
546
+ }
544
547
  else if (resetValidity) {
545
548
  setValueAndResetInputValidity(value, field);
546
549
  }
@@ -4387,7 +4390,8 @@ export class YooFormDynamicComponent {
4387
4390
  case FormFieldType.reveal:
4388
4391
  TagType = 'yoo-reveal';
4389
4392
  extraAttrs = {
4390
- values: field.values
4393
+ values: field.values,
4394
+ isVisible: slideIndex === this.activeIndex
4391
4395
  };
4392
4396
  break;
4393
4397
  case FormFieldType.imagecollection:
@@ -1065,6 +1065,7 @@ span.fr-img-caption.fr-view {
1065
1065
  }
1066
1066
 
1067
1067
  :host(.lesson) {
1068
+ --content-padding-bottom: var(--spacing-16, 1rem);
1068
1069
  --font-size-title-name: var(--font-size-28, 1.75rem);
1069
1070
  --font-weight-title-name: var(--font-weight-700, 700);
1070
1071
  --text-tranform-title-name: none;
@@ -1074,7 +1075,6 @@ span.fr-img-caption.fr-view {
1074
1075
  }
1075
1076
  :host(.lesson) .top-container .content-container {
1076
1077
  height: fit-content;
1077
- padding: 0;
1078
1078
  }
1079
1079
  :host(.lesson) .top-container .description {
1080
1080
  margin-bottom: var(--spacing-08, 0.5rem);
@@ -109,6 +109,10 @@ export class YooFormTextEditorComponent {
109
109
  onTranslationsChange() {
110
110
  this.setLocalValue(true);
111
111
  }
112
+ async forceUpdateValue(value) {
113
+ setValueAndValidateInput(value, this.host);
114
+ this.editor.html.set(value);
115
+ }
112
116
  async updateSizing() {
113
117
  var _a;
114
118
  if ((_a = this === null || this === void 0 ? void 0 : this.editor) === null || _a === void 0 ? void 0 : _a.size) {
@@ -1260,6 +1264,25 @@ export class YooFormTextEditorComponent {
1260
1264
  }
1261
1265
  }]; }
1262
1266
  static get methods() { return {
1267
+ "forceUpdateValue": {
1268
+ "complexType": {
1269
+ "signature": "(value: string) => Promise<void>",
1270
+ "parameters": [{
1271
+ "tags": [],
1272
+ "text": ""
1273
+ }],
1274
+ "references": {
1275
+ "Promise": {
1276
+ "location": "global"
1277
+ }
1278
+ },
1279
+ "return": "Promise<void>"
1280
+ },
1281
+ "docs": {
1282
+ "text": "",
1283
+ "tags": []
1284
+ }
1285
+ },
1263
1286
  "updateSizing": {
1264
1287
  "complexType": {
1265
1288
  "signature": "() => Promise<void>",
@@ -308,8 +308,6 @@ export class YooFormCreatorBlockExpandableComponent {
308
308
  overflow: 'hidden',
309
309
  onComplete: () => {
310
310
  this.isAnimating = false;
311
- this.isExpanded = shouldExpand;
312
- this.blockExpanded.emit({ expanded: shouldExpand, name: this.formField.name });
313
311
  if (slotContent) {
314
312
  slotContent.style.display = 'block';
315
313
  gsapTo(slotContent, 0.35, { opacity: 1 });
@@ -324,7 +322,9 @@ export class YooFormCreatorBlockExpandableComponent {
324
322
  },
325
323
  ease: Power3.easeIn
326
324
  };
327
- const animationDelay = this.isExpanded ? 0.35 : 0.75;
325
+ const animationDelay = 0.5;
326
+ this.isExpanded = shouldExpand;
327
+ this.blockExpanded.emit({ expanded: shouldExpand, name: this.formField.name });
328
328
  gsapFromTo(contentBlock, animationDelay, from, to);
329
329
  }
330
330
  }
@@ -60,7 +60,7 @@ export class YooKpiExternalComponent {
60
60
  const props = {
61
61
  // sandboxed iframes without allow-top-navigation, allow-top-navigation-by-user-activation or allow-popups flags
62
62
  // will prevent them to navigate away from main webview
63
- sandbox: `allow-scripts allow-same-origin allow-forms ${isWeb(this.host) ? 'allow-top-navigation-by-user-activation allow-downloads' : ''}`,
63
+ sandbox: `allow-scripts allow-same-origin allow-forms ${isWeb(this.host) ? 'allow-top-navigation-by-user-activation allow-downloads allow-popups' : ''}`,
64
64
  ...(isProviderTableau ? { srcDoc } : { src: this.config.url }),
65
65
  frameBorder: 0
66
66
  };