@yoobic/yobi 8.5.0-46 → 8.5.0-47

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 (46) 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-form-capture.cjs.entry.js +71 -92
  4. package/dist/cjs/yoo-form-date-time.cjs.entry.js +1 -1
  5. package/dist/cjs/yoo-form-dynamic.cjs.entry.js +1 -1
  6. package/dist/cjs/yoo-grid-calendar.cjs.entry.js +2 -2
  7. package/dist/cjs/yoo-image-cropper-dialog.cjs.entry.js +25 -19
  8. package/dist/cjs/yoo-mission-details.cjs.entry.js +1 -1
  9. package/dist/cjs/yoo-mission-heading.cjs.entry.js +1 -1
  10. package/dist/cjs/yoo-text-sequence.cjs.entry.js +5 -2
  11. package/dist/collection/components/2.molecules/text-sequence/text-sequence.js +5 -2
  12. package/dist/collection/components/form/form-capture/form-capture-helper.js +20 -0
  13. package/dist/collection/components/form/form-capture/form-capture.js +59 -96
  14. package/dist/collection/components/form/form-date-time/form-date-time.js +1 -1
  15. package/dist/collection/components/form/form-dynamic/form-dynamic.js +1 -1
  16. package/dist/collection/components/form/image-cropper-dialog/image-cropper-dialog.css +4 -0
  17. package/dist/collection/components/form/image-cropper-dialog/image-cropper-dialog.js +27 -21
  18. package/dist/collection/components/grid/grid-calendar/grid-calendar.js +19 -2
  19. package/dist/collection/feature-operate/mission/mission-details/mission-details.js +1 -1
  20. package/dist/collection/feature-operate/mission/mission-heading/mission-heading.js +1 -1
  21. package/dist/design-system/design-system.esm.js +1 -1
  22. package/dist/design-system/yoo-form-capture.entry.js +72 -93
  23. package/dist/design-system/yoo-form-date-time.entry.js +1 -1
  24. package/dist/design-system/yoo-form-dynamic.entry.js +1 -1
  25. package/dist/design-system/yoo-grid-calendar.entry.js +2 -2
  26. package/dist/design-system/yoo-image-cropper-dialog.entry.js +27 -21
  27. package/dist/design-system/yoo-mission-details.entry.js +1 -1
  28. package/dist/design-system/yoo-mission-heading.entry.js +1 -1
  29. package/dist/design-system/yoo-text-sequence.entry.js +5 -2
  30. package/dist/esm/design-system.js +1 -1
  31. package/dist/esm/loader.js +1 -1
  32. package/dist/esm/yoo-form-capture.entry.js +72 -93
  33. package/dist/esm/yoo-form-date-time.entry.js +1 -1
  34. package/dist/esm/yoo-form-dynamic.entry.js +1 -1
  35. package/dist/esm/yoo-grid-calendar.entry.js +2 -2
  36. package/dist/esm/yoo-image-cropper-dialog.entry.js +27 -21
  37. package/dist/esm/yoo-mission-details.entry.js +1 -1
  38. package/dist/esm/yoo-mission-heading.entry.js +1 -1
  39. package/dist/esm/yoo-text-sequence.entry.js +5 -2
  40. package/dist/types/components/2.molecules/text-sequence/text-sequence.d.ts +1 -0
  41. package/dist/types/components/form/form-capture/form-capture-helper.d.ts +1 -0
  42. package/dist/types/components/form/form-capture/form-capture.d.ts +6 -6
  43. package/dist/types/components/form/image-cropper-dialog/image-cropper-dialog.d.ts +2 -2
  44. package/dist/types/components/grid/grid-calendar/grid-calendar.d.ts +1 -0
  45. package/dist/types/components.d.ts +5 -3
  46. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, i as createEvent, h, j as Build, e as Host, g as getElement } from './index-0a59e2a1.js';
2
2
  import { P as PictureSourceType, M as MediaType, i as importMultipleFromLibrary, g as getPicture, b as getVideo, s as showAudioRecorder, c as MediaCapture, a as getVideoDevices } from './camera-helpers-3e2eccbc.js';
3
- import { t as translate, b9 as showToast, dQ as getFormCapturedFileSize, aj as showAlert, av as pipes, k as isNullOrUndefined, am as isImage, al as isGif, dL as isUnsplashUrl, H as isWeb, ak as isVideo, dK as isAudio, o as isNativeMobile, aZ as isImageUrl, cr as addFilePrefix, p as isAndroid, cu as moveToImageDirectory, a8 as getSession, G as showModal, N as isIOS, M as isIphoneX, c3 as StatusBar, dR as isLenovo, co as showActionSheet, dS as updatePathSessionId, bW as isSafari, W as getAsyncExtraData, dC as asyncWaterfall, cs as read, Z as isNativeFilePath, an as downloadFile, ar as isFile, dT as getMimeType, br as isOffline, dU as hasLargeFile, a3 as translateMulti, aH as showContextMenu, aC as isPhotoEdited, dz as images, dV as audios, dA as videos, aD as changeExtension, az as isCloudinaryLink } from './overlays-0cc9a656.js';
3
+ import { cm as isBase64, aZ as isImageUrl, cr as addFilePrefix, p as isAndroid, cu as moveToImageDirectory, t as translate, b9 as showToast, dQ as getFormCapturedFileSize, aj as showAlert, av as pipes, k as isNullOrUndefined, H as isWeb, am as isImage, al as isGif, dL as isUnsplashUrl, ak as isVideo, dK as isAudio, o as isNativeMobile, G as showModal, N as isIOS, M as isIphoneX, c3 as StatusBar, a8 as getSession, dR as isLenovo, co as showActionSheet, dC as asyncWaterfall, dS as updatePathSessionId, bW as isSafari, W as getAsyncExtraData, cs as read, Z as isNativeFilePath, an as downloadFile, ar as isFile, dT as getMimeType, br as isOffline, dU as hasLargeFile, a3 as translateMulti, aH as showContextMenu, aC as isPhotoEdited, dz as images, dV as audios, dA as videos, aD as changeExtension, az as isCloudinaryLink } from './overlays-0cc9a656.js';
4
4
  import './index-d375d097.js';
5
5
  import { k as keys, z as intersection, a as isNumber, i as isArray, a5 as assignInWith, s as assign, n as compact, t as clone, E as isUndefined } from './lodash-777f91de.js';
6
6
  import { c as querySelectorAllDeep, q as querySelectorDeep, i as showImageCropper, e as showPhotoEditor, a as showSlidesMedia, g as getAppContext } from './common-helpers-c2933562.js';
@@ -15,6 +15,25 @@ function shouldUseLowPerformanceCamera(user, isNativeMobile, useLibrary) {
15
15
  return !!(enableLowPerformanceCamera ||
16
16
  (enableLowPerformanceCamera === undefined && isLowEndDevice)) && isNativeMobile && !useLibrary;
17
17
  }
18
+ async function processMediaPath(mediaPath) {
19
+ if (isBase64(mediaPath)) {
20
+ return mediaPath;
21
+ }
22
+ else if (mediaPath === null || mediaPath === void 0 ? void 0 : mediaPath.includes('?')) {
23
+ return mediaPath.substring(0, mediaPath.indexOf('?'));
24
+ }
25
+ else if (!isImageUrl(mediaPath)) {
26
+ return addFilePrefix(mediaPath);
27
+ }
28
+ else if (!isAndroid() && ['cache', 'tmp'].includes(mediaPath)) {
29
+ try {
30
+ return await moveToImageDirectory(addFilePrefix(mediaPath));
31
+ }
32
+ catch (err) {
33
+ throw new Error(err);
34
+ }
35
+ }
36
+ }
18
37
 
19
38
  const formCaptureCss = "svg:not(:root){overflow:hidden}:host{--width-readonly-preview:100%;--height-readonly-preview:250px;--play-icon-size:var(--font-size-54, 3.375rem);--camera-selector-container-size:98px;--camera-container-height:98px;--edit-icon-bottom-pos:var(--spacing-16, 1rem)}:host .url-capture-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .url-capture-container yoo-form-input{padding-left:var(--spacing-08, 0.5rem)}:host .distance{display:-ms-flexbox;display:flex;width:100%;margin-top:0.8rem}:host .distance .inner-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:var(--spacing-04, 0.25rem) var(--spacing-08, 0.5rem);font-size:var(--font-size-12, 0.75rem);background-color:var(--light, #ffffff);border:solid 1px var(--stable-light, #f1f1f1);border-radius:var(--border-radius-16, 1rem)}:host .distance .inner-container span{padding-left:var(--spacing-04, 0.25rem)}:host .outer-container{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}:host .outer-container.uploading{padding-bottom:var(--spacing-16, 1rem);opacity:0.6}:host .outer-container .upload-overlay{position:absolute;z-index:999;width:100%;height:100%;background:transparent}:host .outer-container .progressbar-wrapper{bottom:0;width:100%}:host .outer-container .progressbar-wrapper yoo-progress-bar.photo-progress{margin-bottom:-10px}:host .outer-container .progressbar-wrapper .main-wrapper{height:var(--spacing-32, 2rem)}:host .outer-container .progressbar-wrapper .main-wrapper yoo-progress-bar{--progress-bar-color:var(--app-color, #5a30f4)}:host .outer-container .camera-container{position:relative;width:var(--camera-container-height, 6.125rem);height:var(--camera-container-height, 6.125rem);border:var(--border-width-01, 0.0625rem) solid var(--stable-40, rgba(173, 173, 173, 0.4));border-radius:0.5rem;cursor:pointer;-webkit-box-sizing:initial;box-sizing:initial;min-width:var(--camera-container-height, 6.125rem);overflow:visible;background-color:var(--app-color-10, rgba(90, 48, 244, 0.1));border:none}:host .outer-container .camera-container .required{position:absolute;top:auto;right:auto;bottom:auto;left:0.625rem;color:var(--success, #3aa76d);font-size:var(--font-size-14, 0.875rem)}:host .outer-container .camera-container yoo-icon{position:absolute;top:50%;left:50%;font-size:var(--camera-container-size, 1.875rem);-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}:host .outer-container .camera-container yoo-icon.light{color:var(--light, #ffffff)}:host .outer-container .camera-container yoo-icon.success{color:var(--success, #3aa76d)}:host .outer-container .camera-container .preview,:host .outer-container .camera-container .edit,:host .outer-container .camera-container .overlay{position:absolute;top:0;right:auto;bottom:auto;left:auto;width:var(--camera-container-height, 6.125rem);height:var(--camera-container-height, 6.125rem);border-radius:0.5rem}:host .outer-container .camera-container .preview.edit,:host .outer-container .camera-container .edit.edit,:host .outer-container .camera-container .overlay.edit{position:absolute;top:0;right:auto;bottom:auto;left:0;z-index:0}:host .outer-container .camera-container .overlay{background:var(--dark-60, rgba(0, 0, 0, 0.6));opacity:0.5}:host .outer-container .camera-container input[type=file]{position:absolute;top:0;right:auto;bottom:auto;left:50%;display:block;width:var(--camera-container-height, 6.125rem);min-width:var(--camera-container-height, 6.125rem);height:var(--camera-container-height, 6.125rem);margin-left:-50px;text-align:right;background:var(--light, #ffffff);border-radius:50%;outline:none;cursor:inherit;opacity:0;filter:alpha(opacity=0);pointer-events:none}:host .outer-container .camera-container.rotate{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host .outer-container .camera-container.rotate .progressbar-wrapper{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host .outer-container .camera-container .tag-icon-container{position:absolute;right:5px;bottom:5px}:host .outer-container .camera-container .edit-icon-container{position:absolute;bottom:var(--spacing-04, 0.25rem);left:var(--spacing-04, 0.25rem)}:host .outer-container .camera-container .progressbar-wrapper{position:absolute}:host .outer-container .multiple{position:relative;width:100%;margin-bottom:-0.75rem}:host .outer-container .multiple.selector-mode{margin-bottom:0}:host .outer-container .multiple .capture-status{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;font-size:var(--font-size-14, 0.875rem)}:host .outer-container .multiple .capture-status.image-reco{padding-bottom:var(--spacing-08, 0.5rem)}:host .outer-container .multiple .capture-status .action{padding-left:var(--spacing-16, 1rem);color:var(--app-color, #5a30f4);text-align:right;cursor:pointer}:host .outer-container .multiple .capture-status .status{width:100%;padding-right:var(--spacing-16, 1rem);color:var(--stable, #adadad);white-space:nowrap;text-align:start}:host .outer-container .multiple .capture-status .status.max-reached{color:var(--dark, #000000)}:host .outer-container .multiple .camera-containers{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:var(--spacing-08, 0.5rem);-ms-flex-align:center;align-items:center;margin-bottom:var(--spacing-08, 0.5rem)}:host .outer-container .multiple .camera-containers:not(.no-padding){padding-top:var(--spacing-08, 0.5rem)}:host .outer-container .multiple .camera-containers .camera-container yoo-img{--border-radius:var(--border-radius-08, 0.5rem)}:host .outer-container .multiple .camera-selector-container{position:relative;display:inline-block;width:var(--camera-selector-container-size);min-width:var(--camera-selector-container-size);height:var(--camera-selector-container-size);margin-right:var(--spacing-16, 1rem)}:host .outer-container .multiple .camera-selector-container .preview{--border-radius:var(--border-radius-04, 0.25rem);width:100%;height:100%}:host .outer-container .multiple .camera-selector-container yoo-icon{position:absolute;top:5px;right:5px;min-width:initial}:host .outer-container .multiple .camera-selector-container yoo-icon.circle{z-index:2}:host .outer-container .multiple .camera-selector-container yoo-icon.check{z-index:3;color:var(--app-color, #5a30f4)}:host .outer-container .multiple .camera-selector-container .media-overlay{position:absolute;width:100%;height:100%;background-color:var(--dark-20, rgba(0, 0, 0, 0.2));border-radius:var(--border-radius-04, 0.25rem)}:host .outer-container .multiple .camera-selector-container .media-overlay yoo-icon{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}:host .outer-container .multiple .camera-selector-container .media-overlay yoo-icon.rtl{top:50%;right:50%;-webkit-transform:translate(50%, -50%);transform:translate(50%, -50%)}:host .outer-container .multiple .camera-selector-container.rotate{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host .outer-container .multiple .camera-selector-container.rotate yoo-icon{right:0;left:5px;-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host .outer-container .multiple .bottom-action-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;height:45px;margin-top:var(--spacing-16, 1rem);color:var(--stable, #adadad);background:var(--stable-light, #f1f1f1);border:solid var(--border-width-01, 0.0625rem) var(--stable-light, #f1f1f1);border-radius:var(--border-radius-04, 0.25rem);-webkit-transition:all 0.3s ease-out;transition:all 0.3s ease-out}:host .outer-container .multiple .bottom-action-container.active{color:var(--dark, #000000);background-color:var(--light, #ffffff);border:solid var(--border-width-01, 0.0625rem) var(--dark, #000000)}:host .outer-container .multiple .top-action-container{display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;padding-bottom:var(--spacing-16, 1rem);font-size:var(--font-size-14, 0.875rem)}:host .outer-container .multiple .top-action-container .left-action,:host .outer-container .multiple .top-action-container .right-action{width:100%;color:var(--app-color, #5a30f4);cursor:pointer}:host .outer-container .multiple .top-action-container .left-action{text-align:left}:host .outer-container .multiple .top-action-container .right-action{text-align:right}:host .outer-container .single{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;width:100%}:host .outer-container .single .button-containers{-ms-flex-align:center;align-items:center;margin-bottom:0;margin-left:1rem}:host .outer-container .single .button-containers.kpi{display:grid;grid-template-columns:99%;padding-left:var(--spacing-16, 1rem)}:host .outer-container .button-containers{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:distribute;justify-content:space-around;width:100%;margin-bottom:1rem}:host .outer-container .button-containers.kpi{display:grid;grid-gap:var(--spacing-08, 0.5rem);grid-template-columns:49% 49%}:host .outer-container .button-containers .button-container{display:block;width:100%}:host .outer-container .button-containers .button-container yoo-button{display:block}:host .outer-container .tags{width:100%;margin-top:0.5rem}:host .readonly{padding:0.5rem 0rem}:host .readonly .inner-ssr-container{display:-ms-flexbox;display:flex}:host .readonly .inner-ssr-container .readonly-container{padding-right:var(--spacing-16, 1rem)}:host .readonly .readonly-container{position:relative}:host .readonly .readonly-container.multiple:not(:last-child){margin-bottom:var(--spacing-08, 0.5rem)}:host .readonly .readonly-container .preview{--border-radius:var(--border-radius-04, 0.25rem);position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:var(--width-readonly-preview);height:var(--height-readonly-preview);margin-right:auto;margin-bottom:1rem;margin-left:auto}:host .readonly .readonly-container .overlay{position:absolute;top:0;width:100%;height:100%;background-color:var(--dark-40, rgba(0, 0, 0, 0.4))}:host .readonly .readonly-container .overlay .control-container{position:relative;position:absolute;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:100%;height:100%;background:transparent}:host .readonly .readonly-container .overlay .control-container yoo-icon{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}:host .readonly .readonly-container .edit-icon-container{position:absolute;bottom:var(--edit-icon-bottom-pos);left:var(--spacing-16, 1rem)}:host .readonly .button-container{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-direction:row;flex-direction:row;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0.5rem}:host(.disabled) .outer-container .camera-container{background-color:var(--stable-light, #f1f1f1);pointer-events:none}:host([size=medium]){--camera-container-height:var(--spacing-48, 3rem);--camera-selector-container-size:var(--spacing-48, 3rem);--camera-container-size:var(--spacing-24, 1.5rem)}:host([size=medium]) .readonly .readonly-container yoo-img{width:100%;max-width:100px;height:auto !important;max-height:100px;margin-bottom:0;margin-left:0}:host([size=small]){--camera-container-height:var(--spacing-32, 2rem);--camera-selector-container-size:var(--spacing-32, 2rem);--camera-container-size:var(--spacing-16, 1rem)}:host([size=small]) .readonly .readonly-container yoo-img{width:auto;max-width:100px;height:auto !important;max-height:100px;margin-bottom:0;margin-left:0}:host([size=small]) .outer-container .multiple .capture-status .action{padding-left:0}:host([size=small]) .outer-container .multiple .bottom-action-container{height:initial;font-size:var(--font-size-12, 0.75rem)}:host([size=small]) .outer-container .multiple .top-action-container{padding-bottom:0}:host([size=extra-small]){--camera-container-height:var(--spacing-24, 1.5rem);--camera-selector-container-size:var(--spacing-24, 1.5rem);--camera-container-size:var(--spacing-08, 0.5rem)}:host([size=extra-small]) .readonly{padding:var(--spacing-08, 0.5rem) 0 0 0}:host([size=extra-small]) .readonly .readonly-container yoo-img{width:var(--spacing-48, 3rem);max-width:var(--spacing-48, 3rem);height:var(--spacing-48, 3rem) !important;max-height:var(--spacing-48, 3rem);margin-bottom:0;margin-left:0}:host([size=extra-small]) .outer-container .multiple .capture-status .action{padding-left:0}:host([size=extra-small]) .outer-container .multiple .bottom-action-container{height:initial;font-size:var(--font-size-12, 0.75rem)}:host([size=extra-small]) .outer-container .multiple .top-action-container{padding-bottom:0}:host(.audio) .readonly .readonly-container{width:100%}:host(.no-padding) .readonly,:host(.no-padding) .readonly .readonly-container,:host(.no-padding) .readonly .readonly-container .preview{height:100%;margin:0;padding:0}:host(.history) .readonly{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:0 !important}:host(.history) .readonly .readonly-container .preview{--border-radius:var(--border-radius-02, 0.125rem) !important;margin:0 !important}:host(.history) .readonly .readonly-container.multiple{width:initial;min-width:initial;padding-right:0.3125rem;padding-bottom:0.3125rem}:host(.history) .readonly .preview .overlay{background-color:unset}:host(.history) .readonly.truncate{max-height:1.875rem;overflow:hidden}:host(.history) .more-button{display:-ms-flexbox;display:flex;float:right;margin-left:auto;color:var(--stable, #adadad)}:host(.forcedhistory) .readonly.truncate{max-height:8.125rem}:host(.truncate) .readonly{max-height:70px;overflow:hidden}:host(.has-distance){--edit-icon-bottom-pos:var(--spacing-64, 4rem)}:host(.no-radius) .readonly .readonly-container .preview{border-radius:0}:host(.video.web) .readonly .readonly-container{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}:host(.detail-view){--detail-view-container-width:100%;width:100%}:host(.detail-view) .readonly{padding:0}:host(.detail-view) .title-wrapper{padding-bottom:var(--spacing-16, 1rem)}:host(.detail-view) .detail-view-container{width:var(--detail-view-container-width);padding-top:var(--spacing-16, 1rem);page-break-inside:auto}:host(.detail-view) .detail-view-container.multiple.pdf{display:block;padding-top:0}:host(.detail-view) .detail-view-container.multiple.pdf .pdf-photo-container{display:block;page-break-after:auto;page-break-before:auto;page-break-inside:avoid}:host(.detail-view) .detail-view-container.multiple.pdf .pdf-photo-container .wrapper{display:-ms-flexbox;display:flex}:host(.detail-view) .detail-view-container.multiple.pdf .pdf-photo-container yoo-items{display:inline-block;margin-right:0.5rem;margin-bottom:0.5rem;padding-bottom:0}:host(.detail-view) .detail-view-container.multiple.pdf .distance{margin-top:var(--spacing-04, 0.25rem);margin-bottom:0}:host(.detail-view) .detail-view-container.multiple .description-outer-container:not(:last-child){margin-bottom:var(--spacing-16, 1rem);padding-bottom:var(--spacing-16, 1rem)}:host(.detail-view) .detail-view-container.multiple .description-outer-container{border-bottom:var(--border-width-01, 0.0625rem) solid var(--stable-light, #f1f1f1)}:host(.detail-view) .detail-view-container.multiple .distance{margin-top:0;margin-bottom:var(--spacing-16, 1rem)}:host(.detail-view) .detail-view-container:not(.appendix) .image-container yoo-img{height:100%}:host(.detail-view) .detail-view-container.summary:not(.appendix) .image-container{width:min(21.4375rem, 100%)}:host(.detail-view) .detail-view-container.pdf:not(.appendix) .image-container{width:18.5625rem}:host(.detail-view) .detail-view-container.summary.appendix{--detail-view-container-width:21.4375rem}:host(.detail-view) .detail-view-container.pdf.appendix{--detail-view-container-width:29.1875rem}:host(.detail-view) .detail-view-container.appendix.max-width.summary{--detail-view-container-width:100%}:host(.detail-view) .detail-view-container.summary.multiple .description-outer-container{margin-bottom:0;border-bottom:none}:host(.detail-view) .detail-view-container .description-outer-container{grid-auto-columns:initial}:host(.detail-view) .detail-view-container .description-outer-container .image-container{position:relative}:host(.detail-view) .detail-view-container .description-outer-container .image-container .tags{position:absolute;z-index:2}:host(.detail-view) .detail-view-container .description-outer-container .image-container .tags.right{top:var(--spacing-16, 1rem);right:var(--spacing-16, 1rem)}:host(.detail-view) .detail-view-container .description-outer-container .image-container .tags.left{bottom:var(--spacing-16, 1rem);left:var(--spacing-08, 0.5rem)}:host(.detail-view) .detail-view-container .description-outer-container .image-container yoo-photo-editor{--editor-background:transparent;display:block}:host(.detail-view) .detail-view-container .description-outer-container .description-heading{color:var(--stable, #adadad);font-size:var(--font-size-14, 0.875rem)}:host(.detail-view) .detail-view-container .description-outer-container .annotation-container{grid-auto-columns:initial}:host(.detail-view) .detail-view-container .description-outer-container .annotation-container .annotation{display:-ms-flexbox;display:flex;width:100%}:host(.detail-view) .detail-view-container .description-outer-container .annotation-container .annotation yoo-badge{margin-top:var(--spacing-04, 0.25rem);margin-right:var(--spacing-08, 0.5rem)}@media only screen and (max-width: 360px){:host{--camera-selector-container-size:93px !important;--camera-container-height:93px !important}:host .outer-container .camera-container{position:relative;width:var(--camera-container-height-medium-screen, 5.8125rem);height:var(--camera-container-height-medium-screen, 5.8125rem);border:var(--border-width-01, 0.0625rem) solid var(--stable-40, rgba(173, 173, 173, 0.4));border-radius:0.5rem;cursor:pointer}:host .outer-container .camera-container .required{position:absolute;top:auto;right:auto;bottom:auto;left:0.625rem;color:var(--success, #3aa76d);font-size:var(--font-size-14, 0.875rem)}:host .outer-container .camera-container yoo-icon{position:absolute;top:50%;left:50%;font-size:var(--camera-container-size, 1.875rem);-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}:host .outer-container .camera-container yoo-icon.light{color:var(--light, #ffffff)}:host .outer-container .camera-container yoo-icon.success{color:var(--success, #3aa76d)}:host .outer-container .camera-container .preview,:host .outer-container .camera-container .edit,:host .outer-container .camera-container .overlay{position:absolute;top:0;right:auto;bottom:auto;left:auto;width:var(--camera-container-height-medium-screen, 5.8125rem);height:var(--camera-container-height-medium-screen, 5.8125rem);border-radius:0.5rem}:host .outer-container .camera-container .preview.edit,:host .outer-container .camera-container .edit.edit,:host .outer-container .camera-container .overlay.edit{position:absolute;top:0;right:auto;bottom:auto;left:0;z-index:0}:host .outer-container .camera-container .overlay{background:var(--dark-60, rgba(0, 0, 0, 0.6));opacity:0.5}}@media only screen and (max-width: 320px){:host{--camera-selector-container-size:60px !important;--camera-container-height:70px !important}:host .outer-container .camera-container{position:relative;width:var(--camera-container-height-small-screen, 4.375rem);height:var(--camera-container-height-small-screen, 4.375rem);border:var(--border-width-01, 0.0625rem) solid var(--stable-40, rgba(173, 173, 173, 0.4));border-radius:0.5rem;cursor:pointer}:host .outer-container .camera-container .required{position:absolute;top:auto;right:auto;bottom:auto;left:0.625rem;color:var(--success, #3aa76d);font-size:var(--font-size-14, 0.875rem)}:host .outer-container .camera-container yoo-icon{position:absolute;top:50%;left:50%;font-size:var(--camera-container-size, 1.875rem);-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}:host .outer-container .camera-container yoo-icon.light{color:var(--light, #ffffff)}:host .outer-container .camera-container yoo-icon.success{color:var(--success, #3aa76d)}:host .outer-container .camera-container .preview,:host .outer-container .camera-container .edit,:host .outer-container .camera-container .overlay{position:absolute;top:0;right:auto;bottom:auto;left:auto;width:var(--camera-container-height-small-screen, 4.375rem);height:var(--camera-container-height-small-screen, 4.375rem);border-radius:0.5rem}:host .outer-container .camera-container .preview.edit,:host .outer-container .camera-container .edit.edit,:host .outer-container .camera-container .overlay.edit{position:absolute;top:0;right:auto;bottom:auto;left:0;z-index:0}:host .outer-container .camera-container .overlay{background:var(--dark-60, rgba(0, 0, 0, 0.6));opacity:0.5}:host .outer-container .single .button-containers.kpi{width:190px}}@media print{:host{page-break-before:avoid !important;page-break-inside:auto !important}:host .pdf-photo-container,:host .description-outer-container,:host .inner-ssr-container{page-break-after:auto;page-break-before:avoid;page-break-inside:avoid}:host .tags{display:none}}:host(.rtl) .outer-container .multiple .capture-status .status{padding-right:0;padding-left:var(--spacing-16, 1rem)}";
20
39
 
@@ -58,9 +77,15 @@ const YooFormCaptureComponent = class {
58
77
  this.updateExtraData(extraData);
59
78
  }
60
79
  /** If there is index, the field is a multiphoto */
61
- async setFieldValue(data) {
62
- this.multiple ? this.value.push(data) : this.value = data;
63
- setValueAndValidateInput(this.value, this);
80
+ async setFieldValue(index, data) {
81
+ if (index === undefined) {
82
+ setValueAndValidateInput(data, this);
83
+ }
84
+ else {
85
+ const newValue = this.value ? [...this.value] : [];
86
+ newValue[index] = data;
87
+ setValueAndValidateInput(newValue, this);
88
+ }
64
89
  }
65
90
  async stopImageRecognitionProcess(isCancelled = false) {
66
91
  this.imageRecoCancelled = isCancelled;
@@ -250,9 +275,9 @@ const YooFormCaptureComponent = class {
250
275
  this.fileInputs = querySelectorDeep(this.host, '.camera-input');
251
276
  }
252
277
  }
253
- allowCrop(file) {
278
+ allowCrop(data) {
254
279
  var _a;
255
- return (((_a = this.cropperOptions) === null || _a === void 0 ? void 0 : _a.cropRatio) > 0 || this.showCropper) && isImage(file) && !isGif(file) && (!(typeof file === 'string' && isUnsplashUrl(file)) || isWeb(this.host));
280
+ return isWeb(this.host) && (((_a = this.cropperOptions) === null || _a === void 0 ? void 0 : _a.cropRatio) > 0 || this.showCropper) && (isImage(data) || isBase64(data)) && !isGif(data) && (!(typeof data === 'string' && isUnsplashUrl(data)) || isWeb(this.host));
256
281
  }
257
282
  removeAllCapture() {
258
283
  this.value = [];
@@ -312,33 +337,19 @@ const YooFormCaptureComponent = class {
312
337
  }
313
338
  }
314
339
  async processMediaData(mediaData, index) {
315
- if (mediaData === null || mediaData === void 0 ? void 0 : mediaData.includes('?')) {
316
- mediaData = mediaData.substring(0, mediaData.indexOf('?'));
317
- }
318
- else if (mediaData && !isImageUrl(mediaData)) {
319
- mediaData = addFilePrefix(mediaData);
320
- if (!isAndroid() && ['cache', 'tmp'].includes(mediaData)) {
321
- try {
322
- mediaData = await moveToImageDirectory(mediaData, getSession().user ? getSession().user.disablePhotoOrientationAutoFix : false);
323
- }
324
- catch (err) {
325
- throw new Error(err);
326
- }
327
- }
328
- }
329
340
  try {
341
+ !isImageUrl(mediaData) && (mediaData = await processMediaPath(mediaData));
330
342
  if (this.shouldTagImage()) {
331
343
  const tag = await this.showPhotoTagDialog(mediaData);
332
344
  (tag === null || tag === void 0 ? void 0 : tag.data) && this.updateTagData(tag, index);
333
345
  }
334
- await this.setFieldValue(mediaData);
346
+ await this.setFieldValue(index, mediaData);
335
347
  this.clearPhotoEdit(index);
336
348
  this.saveGeoloc && this.captureGeoloc(index);
337
349
  }
338
350
  catch (err) {
339
351
  throw new Error(err);
340
352
  }
341
- return mediaData;
342
353
  }
343
354
  showPhotoTagDialog(imageSrc, value) {
344
355
  const imageTag = document.createElement('yoo-form-capture-tag-dialog');
@@ -400,7 +411,7 @@ const YooFormCaptureComponent = class {
400
411
  });
401
412
  }
402
413
  async capturePhoto(useLibrary, index) {
403
- var _a, _b, _c;
414
+ var _a, _b, _c, _d, _e;
404
415
  const quality = this.isImageRecognition ? 100 : 70;
405
416
  const sourceType = useLibrary ? PictureSourceType.PHOTOLIBRARY : PictureSourceType.CAMERA;
406
417
  const mediaType = this.type === 'video' ? MediaType.VIDEO : MediaType.PICTURE;
@@ -470,26 +481,22 @@ const YooFormCaptureComponent = class {
470
481
  if (!res && this.showImageLoader) {
471
482
  this.showImageLoader = false;
472
483
  }
484
+ const newIndex = index < 0 ? ((_e = (_d = this.value) === null || _d === void 0 ? void 0 : _d.length) !== null && _e !== void 0 ? _e : 0) : index;
473
485
  const imagesData = Array.isArray(res) ? res : [res];
474
486
  const hasUnsplash = imagesData.some(d => isUnsplashUrl(d));
475
- const processImage = async (imageData, index) => {
476
- var _a;
487
+ const processImage = async (imageData, i) => {
477
488
  try {
478
- let extractedData = (imageData === null || imageData === void 0 ? void 0 : imageData['data']) || (imageData === null || imageData === void 0 ? void 0 : imageData['path']) || (imageData === null || imageData === void 0 ? void 0 : imageData['fullPath']) || imageData;
479
- if (!this.shouldTagImage()) {
480
- const shouldOpenCropper = !hasUnsplash && imagesData.length === 1 && this.allowCrop(imageData);
481
- const newIndex = Array.isArray(this.value) ? (_a = this.value) === null || _a === void 0 ? void 0 : _a.length : index;
482
- if (shouldOpenCropper) {
483
- extractedData = await this.onOpenCropper(imageData);
484
- }
485
- await this.processMediaData(extractedData, newIndex);
486
- }
489
+ let extractedData = await processMediaPath((imageData === null || imageData === void 0 ? void 0 : imageData['data']) || (imageData === null || imageData === void 0 ? void 0 : imageData['path']) || (imageData === null || imageData === void 0 ? void 0 : imageData['fullPath']) || imageData);
490
+ const shouldOpenCropper = !hasUnsplash && imagesData.length === 1 && this.allowCrop(extractedData);
491
+ shouldOpenCropper && (extractedData = await this.onOpenCropper(imageData));
492
+ const updatingIndex = this.multiple ? newIndex + i : undefined;
493
+ await this.processMediaData(extractedData, updatingIndex);
487
494
  }
488
495
  catch (err) {
489
496
  this.showImageLoader = false;
490
497
  }
491
498
  };
492
- await Promise.all(imagesData.map((data, index) => processImage(data, index)));
499
+ await asyncWaterfall(imagesData.map((data, i) => processImage(data, i)));
493
500
  this.showImageLoader = false;
494
501
  }
495
502
  catch (err) {
@@ -497,30 +504,26 @@ const YooFormCaptureComponent = class {
497
504
  throw new Error(err);
498
505
  }
499
506
  }
500
- captureVideo(index) {
501
- const options = { limit: 1, duration: this.duration || 60, saveToPhotoAlbum: true };
502
- return getVideo(options).then((files) => {
503
- this.processMediaData(this.fixPathAndGetValue(files), index);
504
- });
507
+ async captureVideo(index) {
508
+ const files = await getVideo({ limit: 1, duration: this.duration || 60, saveToPhotoAlbum: true });
509
+ await Promise.all(files === null || files === void 0 ? void 0 : files.map(file => this.processMediaData(this.fixPathAndGetValue(file), index)));
505
510
  }
506
511
  async captureAudio(index) {
507
- if (isAndroid()) {
508
- const ret = await showAudioRecorder(this.host);
509
- if (ret && ret.data) {
510
- return this.processMediaData(ret.data, index);
512
+ try {
513
+ if (isAndroid()) {
514
+ const { data } = await showAudioRecorder(this.host);
515
+ this.processMediaData(data, index);
516
+ }
517
+ else {
518
+ const files = await MediaCapture.captureAudio({ limit: 1, duration: this.duration || 60 });
519
+ await Promise.all(files === null || files === void 0 ? void 0 : files.map(file => this.processMediaData(this.fixPathAndGetValue(file), index)));
511
520
  }
512
521
  }
513
- else {
514
- const options = { limit: 1, duration: this.duration || 60 };
515
- return MediaCapture.captureAudio(options)
516
- .then((files) => {
517
- this.processMediaData(this.fixPathAndGetValue(files), index);
518
- })
519
- .catch((err) => {
520
- if (err.code !== 3) {
521
- this.noAudio();
522
- }
523
- });
522
+ catch (err) {
523
+ if (err.code !== 3) {
524
+ showAlert(translate('AUDIO'), [translate('YOOBICOK')], translate('NOAUDIO'));
525
+ }
526
+ throw new Error(err);
524
527
  }
525
528
  }
526
529
  noAudio() {
@@ -548,39 +551,14 @@ const YooFormCaptureComponent = class {
548
551
  }
549
552
  }
550
553
  }
551
- fixPathAndGetValue(files) {
552
- if ((files === null || files === void 0 ? void 0 : files.length) > 0) {
553
- return addFilePrefix(files[0].fullPath);
554
- }
555
- return '';
554
+ fixPathAndGetValue(file) {
555
+ return addFilePrefix(file === null || file === void 0 ? void 0 : file.fullPath) || '';
556
556
  }
557
- captureFromWebcam(device, index) {
558
- let webcam = document.createElement('yoo-form-capture-webcam-dialog');
559
- webcam.device = device;
560
- showModal(webcam, null, !isWeb(this.host) ? '' : 'fullscreen', 'fadeEnterAnimation', 'fadeLeaveAnimation').then((ret) => {
561
- if (ret === null || ret === void 0 ? void 0 : ret.data) {
562
- if (this.shouldTagImage()) {
563
- this.showPhotoTagDialog(ret.data).then((tag) => {
564
- if (!isNullOrUndefined(tag === null || tag === void 0 ? void 0 : tag.data)) {
565
- this.updateTagData(tag, index);
566
- this.setFieldValue(ret.data);
567
- this.clearPhotoEdit(index);
568
- if (this.saveGeoloc) {
569
- this.captureGeoloc();
570
- }
571
- }
572
- });
573
- }
574
- else {
575
- this.setFieldValue(ret.data);
576
- this.clearPhotoEdit(index);
577
- if (this.saveGeoloc) {
578
- this.captureGeoloc();
579
- }
580
- }
581
- }
582
- webcam = null;
583
- });
557
+ async captureFromWebcam(device, index) {
558
+ var _a;
559
+ const mediaData = (_a = (await showModal(Object.assign(document.createElement('yoo-form-capture-webcam-dialog'), { device }), null, !isWeb(this.host) ? '' : 'fullscreen', 'fadeEnterAnimation', 'fadeLeaveAnimation'))) === null || _a === void 0 ? void 0 : _a.data;
560
+ // this.allowCrop(mediaData) && (mediaData = await this.onOpenCropper(mediaData));
561
+ mediaData && await this.processMediaData(mediaData, index);
584
562
  }
585
563
  captureFromDisk(index) {
586
564
  const targetElement = index && index < 0 ? this.getAddFileInput() : this.getTargetElement(index);
@@ -672,7 +650,7 @@ const YooFormCaptureComponent = class {
672
650
  }
673
651
  else {
674
652
  if (this.multiple && (newImages === null || newImages === void 0 ? void 0 : newImages.length) > 0) {
675
- this.setFieldValue(newImages);
653
+ this.setFieldValue(index, newImages);
676
654
  }
677
655
  else if (newImages === null || newImages === void 0 ? void 0 : newImages.length) {
678
656
  this.value = newImages[0];
@@ -735,24 +713,24 @@ const YooFormCaptureComponent = class {
735
713
  const tag = await this.showPhotoTagDialog(data);
736
714
  if (!isNullOrUndefined(tag === null || tag === void 0 ? void 0 : tag.data)) {
737
715
  this.updateTagData(tag, index);
738
- this.setFieldValue(data);
716
+ this.setFieldValue(index, data);
739
717
  this.clearPhotoEdit(index);
740
718
  }
741
719
  }
742
720
  else {
743
- this.setFieldValue(data);
721
+ this.setFieldValue(index, data);
744
722
  this.clearPhotoEdit(index);
745
723
  }
746
724
  }
747
725
  else {
748
- this.setFieldValue(f);
726
+ this.setFieldValue(index, f);
749
727
  this.clearPhotoEdit(index);
750
728
  }
751
729
  targetElement.value = null;
752
730
  }
753
731
  async onOpenCropper(file) {
754
732
  var _a;
755
- return (_a = (await showImageCropper(this.host, { file, upload: true, maintainQuality: true, ...this.cropperOptions || {} }))) === null || _a === void 0 ? void 0 : _a.data;
733
+ return (_a = (await showImageCropper(this.host, { file, maintainQuality: true, ...this.cropperOptions || {} }))) === null || _a === void 0 ? void 0 : _a.data;
756
734
  }
757
735
  clearPhotoEdit(index) {
758
736
  var _a, _b;
@@ -1572,7 +1550,8 @@ const YooFormCaptureComponent = class {
1572
1550
  }
1573
1551
  }
1574
1552
  shouldTagImage() {
1575
- return this.tags && this.tags.length > 0;
1553
+ var _a;
1554
+ return ((_a = this.tags) === null || _a === void 0 ? void 0 : _a.length) > 0;
1576
1555
  }
1577
1556
  onCancelImageReco() {
1578
1557
  showAlert('', [translate('YOOBICNO'), translate('YOOBICYES')], translate('STOPIMAGERECO')).then((res) => {
@@ -167,7 +167,7 @@ const YooFormDateTimeComponent = class {
167
167
  if (!this.value) {
168
168
  const value = new Date();
169
169
  const oldMinutes = value.getMinutes();
170
- const newMinutes = getRoundedMinutes(value, this.timeStep);
170
+ const newMinutes = +getRoundedMinutes(value, this.timeStep);
171
171
  value.setMinutes(+newMinutes, 0, 0);
172
172
  if (newMinutes === 0 && oldMinutes !== newMinutes) {
173
173
  value.setHours(value.getHours() + 1);
@@ -491,7 +491,7 @@ const YooFormDynamicComponent = class {
491
491
  const videoValue = fieldData.value;
492
492
  const videoElement = el;
493
493
  if (videoValue) {
494
- videoElement.setFieldValue(videoValue);
494
+ videoElement.setFieldValue(undefined, videoValue);
495
495
  }
496
496
  break;
497
497
  }
@@ -586,11 +586,11 @@ const YooGridCalendarComponent = class {
586
586
  var _a, _b;
587
587
  return (h("div", { class: { 'left-container': isWeb(this.host), hidden: !isWeb(this.host) && !this.showMobileCalendar } }, (isWeb(this.host)) && (h("yoo-calendar", { class: { 'no-border': true, 'no-margin-top': !isWeb(this.host) }, isDatePicker: true, size: "small", markers: this.markers, displayMode: "month", onDateChanged: (ev) => this.onLeftCalendarDateChanged(ev) })), isWeb(this.host) && ((_a = this.types) === null || _a === void 0 ? void 0 : _a.length) > 0 && !this.hideFilters && h("div", { class: "types" }, h("yoo-collapsible", { class: "bold", collapsed: false, header: translate('YOOBICTYPE') }, this.types.map((t) => {
588
588
  var _a;
589
- return h("yoo-form-checkbox", { class: getEventTypeColor(t), iconColor: getEventTypeColor(t), onClick: () => this.onToggleType(t), value: !(((_a = this.hiddenTypes) === null || _a === void 0 ? void 0 : _a.indexOf(t)) > 0), header: translate(CALENDAR_TRANSLATIONS[t]) });
589
+ return h("yoo-form-checkbox", { animated: this.animated, class: getEventTypeColor(t), iconColor: getEventTypeColor(t), onClick: () => this.onToggleType(t), value: !(((_a = this.hiddenTypes) === null || _a === void 0 ? void 0 : _a.indexOf(t)) > 0), header: translate(CALENDAR_TRANSLATIONS[t]) });
590
590
  })), h("slot", { name: "filters" }), ((_b = this.eventStatuses) === null || _b === void 0 ? void 0 : _b.length) > 0 &&
591
591
  h("yoo-collapsible", { class: "bold margin-top", collapsed: false, header: translate('EVENTATTENDANCE') }, this.eventStatuses.map((t) => {
592
592
  var _a;
593
- return h("yoo-form-checkbox", { class: "app-color", onClick: () => this.onToggleAttendance(t), value: !(((_a = this.hiddenStatuses) === null || _a === void 0 ? void 0 : _a.indexOf(t)) > 0), header: translate(ATTENDANCE_TRANSLATIONS[t]) });
593
+ return h("yoo-form-checkbox", { animated: this.animated, class: "app-color", onClick: () => this.onToggleAttendance(t), value: !(((_a = this.hiddenStatuses) === null || _a === void 0 ? void 0 : _a.indexOf(t)) > 0), header: translate(ATTENDANCE_TRANSLATIONS[t]) });
594
594
  })), h("slot", { name: "more-filters" }))));
595
595
  }
596
596
  renderHeader(calendar, type) {