@3deye-toolkit/react-event-list 0.0.8 → 0.0.10
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.
- package/dist/react-event-list.css +1 -1
- package/dist/react-event-list.d.ts +107 -8
- package/dist/react-event-list.js +1 -1
- package/dist/tsdoc-metadata.json +1 -1
- package/package.json +11 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
.event-grid-datepicker{display:flex;&>div{flex:1;display:flex}& .date-button{flex-direction:column;justify-content:center;padding:4px 8px;display:flex;& label{opacity:.5;font-size:.75em}}}.color-selector{z-index:1;justify-content:space-between;align-items:center;padding:5px 0 5px 8px;display:flex}.color-selector__items{align-items:center;display:flex}.color-selector__item{color:currentColor;border:none;border-radius:20px;width:20px;height:20px;margin:4px;padding:0;transition:box-shadow .2s ease-in;box-shadow:0 0 0 1.5px}.color-selector__item:focus{box-shadow:0 0 0 1.5px currentColor,0 0 0 5px rgba(var(--surface-highlight-rgb),.2)}.color-selector__item:focus:active{box-shadow:0 0 0 1.5px}.color-selector__item .icon{opacity:0;transition:opacity .2s ease-in}.color-selector__item.selected .icon{opacity:1}.color-selector__clear{border-radius:50%;padding:6px}.x-3deye-button{color:inherit;user-select:none;letter-spacing:.0107143em;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;height:32px;padding:0 8px;font-weight:500;display:inline-flex;position:relative}.x-3deye-button sup{position:relative;top:-.5em;left:.25em}.x-3deye-button.x-3deye-button--fullwidth{width:100%}.x-3deye-button:focus,.x-3deye-button.x-3deye-button:not(:disabled):hover{background-color:rgba(var(--surface-highlight-rgb),.1)}.x-3deye-button--icon{border-radius:16px;justify-content:center;align-items:center;width:32px;height:32px;padding:4px;display:inline-flex}.x-3deye-button--action .icon{opacity:.5}.x-3deye-button--action:hover .icon{opacity:1}.x-3deye-button:disabled{opacity:.4}.x-3deye-button:not(:disabled){cursor:pointer}.x-3deye-button.x-3deye-button--filled,.x-3deye-button.x-3deye-button--text{text-transform:capitalize;border-radius:.25rem;min-width:80px;padding:0 1rem;font-family:Roboto,sans-serif;font-size:.875rem;font-weight:500}.x-3deye-button.x-3deye-button--filled{color:#fff;background-color:#27b9a1}.x-3deye-button.x-3deye-button--filled:not(:disabled):hover{background-color:#22a38e}.x-3deye-button.x-3deye-button--filled:focus{transition:box-shadow .2s cubic-bezier(.215,.61,.355,1);box-shadow:0 0 0 2px #27b9a154}.x-3deye-button canvas{color:rgb(var(--surface-highlight-rgb))}.x-3deye-button--overlay{pointer-events:auto;color:#fff;background:#00000080;border:2px solid #ffffff40}.x-3deye-button.x-3deye-button--overlay:focus,.x-3deye-button.x-3deye-button--overlay:not(:disabled):hover{background:#00000080;border:2px solid #ffffff80}.x-3deye-button.x-3deye-button--overlay.x-3deye-button--overlay-danger:not(:disabled),.x-3deye-button.x-3deye-button--overlay.x-3deye-button--overlay-danger:not(:disabled):hover{background-color:#9c333180}.preloader-container{flex:1;justify-content:center;align-items:center;display:flex}.x-3deye-datetimepicker{width:max-content}.x-3deye-button.button-date{text-transform:none;font-family:Roboto Mono,monospace}.x-3deye-button.button-date:hover{text-decoration:underline}.x-3deye-timepicker{height:260px;overflow:hidden}.x-3deye-timepicker__column{text-align:center;flex:1;width:60px;font-size:.85rem;overflow:hidden}.x-3deye-timepicker--alt .x-3deye-timepicker__column{white-space:nowrap;width:max-content;height:100%;overflow-y:scroll}.x-3deye-timepicker--alt .x-3deye-timepicker__column>div{width:max-content}.x-3deye-timepicker__column:hover{overflow-y:scroll}.x-3deye-timepicker__value{border-radius:.25rem;height:30px;padding:0 10px;line-height:30px}.x-3deye-datepicker__day{border-radius:.25rem;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;font-weight:500;display:flex}.x-3deye-datepicker__day:not(.x-3deye-datepicker__day--selected):not(.x-3deye-datepicker__day--disabled):hover{color:currentColor;background-color:#0000000d}.x-3deye-datepicker__day--next-month,.x-3deye-datepicker__day--previous-month{color:oklch(.7 0 0)}.x-3deye-datepicker__day--disabled{color:oklch(.9 0 0)}.x-3deye-datepicker__day--selected{color:#fff;background-color:#0067ac}.x-3deye-datepicker__day--today{border:2px solid #0067ac66;font-weight:700}.x-3deye-timepicker__column>div{width:60px;height:40px;padding:5px 10px;&:hover .x-3deye-timepicker__value{background-color:#0000000d}&.selected .x-3deye-timepicker__value{color:#fff;background-color:#0067ac}}.x-3deye-datepicker__button--previous-month,.x-3deye-datepicker__button--next-month{opacity:.3;padding:0;&:disabled{opacity:.1}&:hover:not(:disabled){opacity:1}}.x-3deye-popover-container{color:#fff;text-align:left;background:#222;border-radius:6px;padding:8px;animation:.15s ease-in slide-in;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a,inset 0 0 0 1px #ffffff0d}@media (prefers-reduced-motion:reduce){.x-3deye-popover-container{animation:none}}.x-3deye-popover-container .tip{--tip-background:#222;--tip-border:#ffffff0d}.segmented-control-wrapper{background-color:var(--surface-inverse);border-radius:6px;display:inline-grid}.segmented-control{--indicator-offset:0%;grid-auto-columns:1fr;grid-auto-flow:column;margin:2px;display:grid;position:relative}.segmented-control-indicator{pointer-events:none;transform:translateX(var(--indicator-offset));height:100%;transition:all .2s ease-in-out;position:absolute}.segmented-control-indicator-inner{background:#fff;border-radius:6px;transition:all .2s;position:absolute;inset:0;transform:scale(1);box-shadow:0 0 5px #00000029}.segmented-control-indicator.active .segmented-control-indicator-inner{transform:scale(.95)}.segmented-control-button{color:currentColor;user-select:none;text-overflow:ellipsis;z-index:1;background:0 0;border:none;min-height:24px;margin:2px;font-family:inherit;overflow:hidden}.segmented-control-button:not(.current):hover{opacity:.6}.segmented-control-button.current{color:#000}#x-3deye-floating-ui-root{z-index:calc(infinity);width:100%;position:absolute}.x-3deye-select-container{background-color:#00000080;border-radius:.5rem;display:flex;& *{box-sizing:border-box}& .x-3deye-select-body{padding:.375rem .5rem;display:grid;&>*{grid-area:1/1}}& .x-3deye-multi-select-body{flex-wrap:wrap;gap:4px;padding:.375rem .5rem;display:flex}& .x-3deye-select-value{color:#333;background-color:var(--color,#e6e6e6);border-radius:2px;align-items:center;gap:4px;min-height:24px;padding-left:6px;font-size:.75rem;display:inline-flex;&>.icon{flex-shrink:0}& .close-button{background-color:var(--color,#e6e6e6);color:inherit;border:none;border-top-right-radius:2px;border-bottom-right-radius:2px;justify-content:center;align-items:center;width:24px;min-width:24px;height:100%;margin:0 0 0 3px;padding:0;display:flex;&:hover,&:focus{background-color:var(--background-color,#ffbdad);color:var(--color,#de350b)}}}}.x-3deye-select-indicators{color:#ccc;&:hover{color:#e6e6e6}}.x-3deye-select-container--open,.x-3deye-select-container:has(.x-3deye-select input:focus){background-color:#fff;& .x-3deye-select-indicators{color:#747474;&:hover{color:#747474}}& .x-3deye-select-single-value{color:#000}}.x-3deye-select{line-height:0;display:inline-grid}.x-3deye-select-placeholder{color:#b3b3b3;pointer-events:none;grid-area:1/1;align-items:center;gap:4px;display:flex}.x-3deye-select-single-value{color:#fff;grid-area:1/1;align-content:center;padding:.25em .25em .25em 0}.x-3deye-select:after,.x-3deye-select input{font:inherit;resize:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;border:none;grid-area:1/1;min-width:1em;margin:0;padding:.25em .25em .25em 0}.x-3deye-select input{height:24px;&:focus{outline:none}}.x-3deye-select:after{content:attr(data-value)" ";visibility:hidden;white-space:pre-wrap}.x-3deye-select-menu{background:#fff;border-radius:.25rem;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a,inset 0 0 0 1px #6666660d}.x-3deye-select-option{cursor:default;align-items:center;padding:8px;font-size:.875rem;display:flex}.x-3deye-select-option--selected{color:#fff;background-color:#2196f3!important}.event-list-item{user-select:none;color:#ffffffbf;--license-plate-color:#00e5ff;background-color:#ffffff1a;font-size:12px;position:absolute;inset:0;overflow:hidden}.event-list-item .x-3deye-button--icon:hover,.event-list-item .x-3deye-button--icon:focus{background-color:#0003}.event-list-item .acknowledged-overlay{pointer-events:none;color:#fff;text-transform:uppercase;background-color:#0006;place-items:center;font-weight:700;display:grid;position:absolute;inset:0}.event-list-item .no-preview-overlay{pointer-events:none;background-color:#808080cc;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAABaCAYAAABzAJLvAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIDBB8ysGG6bgAAAy1JREFUeNrtnD1oFFEUhc8s6Y0gCDHrT64/EE0UCVEQxB9ioSgWFoqNRgQFG0EQUlhYCXYRBSFuIogkTSKCoNhY2FpYiDYHEYJYiRYuiOhY5EVWFyNxNzvv3T1ftc2+eXO/uWd29s0MIIQQQgghhBBCCCGEEEIIIYQQQgghxILkea4ieIWkqQrNpRTZfF6QnEytk0n2k/xGco8EL8w2AEdIVrIsi1ry/NxIbgXwEsBtM3umzPh3N3SR/EGyksBcyyRzkqMyt3jJ1ZjjmuRAkDsiY/9XwLVBciUWyTWxPBjkXtcvf2dxTXJDkHtNhpzFNcldQe5FmXES1zWxvDvIvapYdhbX4To3J3lFJpzFNcn9Qe55GXAS1zWxPBTkXlYsO4trkjuD3EuquLO4JnkoyD2tSjuJ65pYPhzkXlAsO4trkvuC3HOqrLO4JnksyD3hqTaZI8n9mFu2mwAwBaBjEV8vA7gFYNjMxvM8R5Zlv6J7/rMEFyv4HoCTjYxhZtkfY54xszsp16UEP3Q2+YA5CmAs9aJ4Epw3Ue5BADMeiuJJcDM795GX/ZHgernTnvapQ1p/Y8bbDqmDnSPBEtxWvJVgx5hZjzfJElxPH4BXEuyXKoAdXjpZl0n1MZ0D+AKgh+RndXA8TDT4/Y9A3VLjJnVwwdQs523H3P/RfWa2qHMoyTKAN+GpxuH5Mc3sgzItAkjeCIv1GxsYI5mnGttN7miQu6UJY0X/VGNbUHOD3M0g15p4wET3VGO7du7dIHf1EoytuC5Y7lij51zFdbyxPB5eeLKqBQeS4rrFnTsdOndlC7epuG5Roe8HuesK2LbieoljeSoUeEWBB1iScZ0l0LlPABwAsNzMPhU8ly4AswAmzGw4BcGlyOU+ADAEoFy0XAAws/cAugEcTyWuSxHLfQhgL4BlZjYby7yC5F4k8ka+LFK5zwEMAug0s2qkc0wirksRFu4xgIEQy9VYC5dKXGeRyX2KuReSdpvZ10Qu39YAeA1gEsBZM/uuDv47vQC6UpEbOvkdgPUATgHYrItbp5DU7U9CCCGEEEIIIYQQQgghhBBCCCGEEEIIIUTK/ASpxrk/iYZ2rgAAAABJRU5ErkJggg==);background-position:50%;background-repeat:no-repeat;display:block;position:absolute;inset:0}.event-list-item-caption{z-index:1;pointer-events:none;background:linear-gradient(#0000 0%,#000000a6 100%);flex-direction:column;justify-content:flex-end;padding-top:8px;padding-bottom:8px;padding-left:8px;font-size:11px;display:flex;position:absolute;bottom:0;left:0;right:0}.event-list-item:hover .event-list-item__time{color:#fff}.event-list-item__time{text-shadow:0 1px 2px #000;order:1;font-size:14px;font-weight:700}.event-list-item__camera-name{white-space:nowrap;text-overflow:ellipsis;font-family:Roboto,sans-serif;font-size:13px;font-weight:700;line-height:24px;overflow:hidden}.event-list-item__duration{opacity:.9;background-color:#000000bf;padding:0 4px;font-size:12px;position:absolute;bottom:32px;right:2px}.event-list-item__temperature{text-shadow:0 1px 2px #000;align-items:center;padding:0 4px;font-size:14px;font-weight:700;display:flex;position:absolute;bottom:4px;right:2px}.event-list-item .frame{--frame-color-hsl:186 100% 50%;border:1px solid hsl(var(--frame-color-hsl)/.2);position:absolute;top:0;left:0;right:0}.event-list-item .preview{opacity:0;pointer-events:none;transition:opacity 0s linear .2s;position:absolute;box-shadow:0 0 4px #000000bf}.event-list-item .trigger:hover~.preview{opacity:1}.event-list-item__license-plate-trigger{outline:2px solid var(--license-plate-color)}.event-list-item__license-plate .plate-number{color:#fff;font-family:Roboto Mono,monospace}.event-list-item__license-plate .plate-number .digit{color:var(--license-plate-color)}.event-list-item__license-plate .plate-number .digit:first-of-type{margin-left:2px}.event-list-item__license-plate-caption{z-index:1;background-color:#000;justify-content:space-between;align-items:center;gap:10px;height:60px;padding-left:10px;display:flex;position:absolute;bottom:0;left:0;right:0}.event-list-item__license-plate-caption .plate-number{color:#fff;letter-spacing:1px;border:2px solid #ffffff80;border-radius:4px;padding:0 8px;font-family:Roboto Mono,monospace;font-size:16px;& .digit{color:var(--license-plate-color)}& :is(.char+.digit),& :is(.digit+.char){margin-left:.25rem}}.event-list-item__detected-object-label{white-space:nowrap;color:#fff;background-color:#00000080;flex-direction:column;min-width:64px;font-family:Roboto Mono,monospace;font-size:13px;font-weight:700;display:flex;position:absolute}.event-list-item__detected-object-label__caption{opacity:.75;color:#000;padding-left:4px;font-size:9px;line-height:14px}.event-list-item__license-plate-label{white-space:nowrap;color:#fff;background-color:#00000080;flex-direction:column;font-family:Roboto Mono,monospace;font-size:14px;display:flex;position:absolute}.event-list-item__license-plate-label .digit{color:var(--license-plate-color)}.event-list-item__license-plate-label .digit:first-of-type{margin-left:2px}.event-list-item__license-plate-label__caption{background-color:var(--license-plate-color);color:#000;opacity:.75;padding-left:4px;font-size:10px}.event-list-item__license-plate .plate-number{background:#000;height:16px;padding-left:2px;padding-right:2px;position:absolute;bottom:0;left:0;right:0}.event-list-item__license-plate .frame{--frame-color-hsl:186 100% 50%}.event-list-item-face .frame{--frame-color-hsl:42 100% 50%;bottom:0}.event-list-item .menu-button{position:absolute;top:0;right:0}.x-3deye-slider{align-items:center;display:flex;position:relative}.x-3deye-slider:focus-visible{outline:none}.x-3deye-slider.horizontal{width:100%;height:20px}.x-3deye-slider.vertical{flex-direction:column;width:20px;height:100%}.x-3deye-slider__track{background:var(--surface-inverse,gainsboro);flex:1;position:relative}.x-3deye-slider__bar{background-color:var(--primary-color,#0067ac);position:absolute}.x-3deye-slider.disabled .x-3deye-slider__bar{background-color:#a5a5a5}.x-3deye-slider.horizontal .x-3deye-slider__bar{top:0;bottom:0;left:0}.x-3deye-slider.vertical .x-3deye-slider__bar{bottom:0;left:0;right:0}.x-3deye-slider.horizontal .x-3deye-slider__track{height:3px}.x-3deye-slider.vertical .x-3deye-slider__track{width:3px}.x-3deye-slider__thumb{will-change:transform box-shadow;background:#fff;border-radius:50%;width:20px;height:20px;transition:box-shadow .15s cubic-bezier(.45,.05,.55,.95);box-shadow:0 0 0 6px #0064ff00,inset 0 0 0 1px #0000001a,1px 1px 2px #00000040}.x-3deye-slider:not(.disabled) .x-3deye-slider__thumb:hover,.x-3deye-slider:focus .x-3deye-slider__thumb{box-shadow:0 0 0 6px rgba(var(--surface-highlight-rgb,0,100,255),.1),0 0 0 1px #0000001a inset,1px 1px 2px 0 #00000040}.x-3deye-slider:focus .x-3deye-slider__thumb.active{box-shadow:0 0 0 6px rgba(var(--surface-highlight-rgb,0,100,255),.2),0 0 0 1px #0000001a inset,1px 1px 2px 0 #00000040}.x-3deye-slider.horizontal .x-3deye-slider__thumb{margin-left:-10px}.x-3deye-slider.vertical .x-3deye-slider__thumb{margin-bottom:-10px}.x-3deye-slider__label{pointer-events:none;touch-action:none;will-change:transform;background:var(--primary-color,#0067ac);color:var(--on-primary-color,white);transform-origin:bottom;border-radius:4px;width:fit-content;min-width:24px;padding:4px 8px;font-size:.75rem;transition:transform .15s cubic-bezier(.45,.05,.55,.95);position:relative;bottom:50%;left:50%;transform:translate(-50%,-100%)scale(0)}.x-3deye-slider__label.open,.x-3deye-slider:not(.disabled) .x-3deye-slider__thumb:hover .x-3deye-slider__label,.x-3deye-slider:focus .x-3deye-slider__label{transform:translate(-50%,-100%)scale(1)}.x-3deye-slider__label:before{content:"";border-left:5px solid #0000;border-right:5px solid #0000;border-top:5px solid var(--primary-color,#0067ac);width:0;height:0;display:block;position:absolute;top:100%;left:calc(50% - 5px)}.x-3deye-tooltip{color:#fff;background:#000000e6;border:1px solid #ffffff26;border-radius:4px;padding:.5em 1em;font-size:12px}.menu-button{background:0 0;border:none}.menu-button[data-open],.menu-button:hover{background-color:rgba(var(--surface-highlight-rgb),.1)}.menu-list{background-color:var(--container);color:var(--on-container);backdrop-filter:blur(10px);border-radius:6px;outline:0;padding:4px;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a,inset 0 0 0 1px #ffffff0d}.menu-item{text-align:left;background:0 0;border:none;border-radius:4px;outline:0;justify-content:space-between;align-items:center;width:100%;min-width:120px;margin:0;display:flex}.menu-item--danger{color:var(--danger-color)}.menu-item.x-3deye-button{text-align:left;letter-spacing:.5px;background:0 0;border:none;width:100%;height:fit-content;padding:8px 16px;font-size:14px}.menu-item:focus,.menu-item[data-focus-inside][data-open]{background-color:rgba(var(--surface-highlight-rgb),.1)}.frame .corner-highlight-tl{background-color:hsl(var(--frame-color-hsl));width:10px;height:2px;position:absolute;top:-1px;left:-1px}.frame .corner-highlight-tl:before{content:"";background-color:hsl(var(--frame-color-hsl));width:2px;height:10px;display:block;position:absolute;top:0;left:0}.frame .corner-highlight-tr{background-color:hsl(var(--frame-color-hsl));width:10px;height:2px;position:absolute;top:-1px;right:-1px}.frame .corner-highlight-tr:before{content:"";background-color:hsl(var(--frame-color-hsl));width:2px;height:10px;display:block;position:absolute;top:0;right:0}.frame .corner-highlight-br{background-color:hsl(var(--frame-color-hsl));width:10px;height:2px;position:absolute;bottom:-1px;right:-1px}.frame .corner-highlight-br:before{content:"";background-color:hsl(var(--frame-color-hsl));width:2px;height:10px;display:block;position:absolute;bottom:0;right:0}.frame .corner-highlight-bl{background-color:hsl(var(--frame-color-hsl));width:10px;height:2px;position:absolute;bottom:-1px;left:-1px}.frame .corner-highlight-bl:before{content:"";background-color:hsl(var(--frame-color-hsl));width:2px;height:10px;display:block;position:absolute;bottom:0;left:0}
|
|
1
|
+
.event-grid-datepicker{display:flex;&>div{flex:1;display:flex}& .date-button{flex-direction:column;justify-content:center;padding:4px 8px;display:flex;& label{opacity:.5;font-size:.75em}}}.color-selector{z-index:1;justify-content:space-between;align-items:center;padding:5px 0 5px 8px;display:flex}.color-selector__items{align-items:center;display:flex}.color-selector__item{color:currentColor;border:none;border-radius:20px;width:20px;height:20px;margin:4px;padding:0;transition:box-shadow .2s ease-in;box-shadow:0 0 0 1.5px}.color-selector__item:focus{box-shadow:0 0 0 1.5px currentColor,0 0 0 5px rgba(var(--surface-highlight-rgb),.2)}.color-selector__item:focus:active{box-shadow:0 0 0 1.5px}.color-selector__item .icon{opacity:0;transition:opacity .2s ease-in}.color-selector__item.selected .icon{opacity:1}.color-selector__clear{border-radius:50%;padding:6px}.x-3deye-button{color:inherit;user-select:none;letter-spacing:.0107143em;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;height:32px;padding:0 8px;font-weight:500;display:inline-flex;position:relative}.x-3deye-button sup{position:relative;top:-.5em;left:.25em}.x-3deye-button.x-3deye-button--fullwidth{width:100%}.x-3deye-button:focus,.x-3deye-button.x-3deye-button:not(:disabled):hover{background-color:color(from var(--surface-highlight)srgb r g b/.1)}.x-3deye-button--icon{border-radius:16px;justify-content:center;align-items:center;width:32px;height:32px;padding:4px;display:inline-flex}.x-3deye-button--action .icon{opacity:.5}.x-3deye-button--action:hover .icon{opacity:1}.x-3deye-button:disabled{opacity:.4}.x-3deye-button:not(:disabled){cursor:pointer}.x-3deye-button.x-3deye-button--filled,.x-3deye-button.x-3deye-button--text{text-transform:capitalize;border-radius:.25rem;min-width:80px;padding:0 1rem;font-family:Roboto,sans-serif;font-size:.875rem;font-weight:500}.x-3deye-button.x-3deye-button--filled{background-color:var(--primary-color);color:var(--on-primary-color);& canvas{color:var(--on-primary-color)}}.x-3deye-button.x-3deye-button--filled:not(:disabled):hover{background-color:color(from var(--primary-color)srgb r g b/.9)}.x-3deye-button.x-3deye-button--filled:focus{box-shadow:0 0 0 2px color(from var(--primary-color)srgb r g b/.33);transition:box-shadow .2s cubic-bezier(.215,.61,.355,1)}.x-3deye-button canvas{color:var(--surface-highlight)}.x-3deye-button--overlay{pointer-events:auto;color:#fff;background:#00000080;border:2px solid #ffffff40}.x-3deye-button.x-3deye-button--overlay:focus,.x-3deye-button.x-3deye-button--overlay:not(:disabled):hover{background:#00000080;border:2px solid #ffffff80}.x-3deye-button.x-3deye-button--overlay.x-3deye-button--overlay-danger:not(:disabled),.x-3deye-button.x-3deye-button--overlay.x-3deye-button--overlay-danger:not(:disabled):hover{background-color:#9c333180}.preloader-container{flex:1;justify-content:center;align-items:center;display:flex}.x-3deye-datetimepicker{width:max-content}.x-3deye-button.button-date{text-transform:none;font-family:Roboto Mono,monospace}.x-3deye-button.button-date:hover{text-decoration:underline}.x-3deye-timepicker{height:260px;overflow:hidden}.x-3deye-timepicker__column{text-align:center;flex:1;width:60px;font-size:.85rem;overflow:hidden}.x-3deye-timepicker--alt .x-3deye-timepicker__column{white-space:nowrap;width:max-content;height:100%;overflow-y:scroll}.x-3deye-timepicker--alt .x-3deye-timepicker__column>div{width:max-content}.x-3deye-timepicker__column:hover{overflow-y:scroll}.x-3deye-timepicker__value{border-radius:.25rem;height:30px;padding:0 10px;line-height:30px}.x-3deye-datepicker__day{border-radius:.25rem;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;font-weight:500;display:flex}.x-3deye-datepicker__day:not(.x-3deye-datepicker__day--selected):not(.x-3deye-datepicker__day--disabled):hover{color:currentColor;background-color:#0000000d}.x-3deye-datepicker__day--next-month,.x-3deye-datepicker__day--previous-month{color:oklch(70% 0 0)}.x-3deye-datepicker__day--disabled{color:oklch(90% 0 0)}.x-3deye-datepicker__day--selected{color:#fff;background-color:#0067ac}.x-3deye-datepicker__day--today{border:2px solid #0067ac66;font-weight:700}.x-3deye-timepicker__column>div{width:60px;height:40px;padding:5px 10px;&:hover .x-3deye-timepicker__value{background-color:#0000000d}&.selected .x-3deye-timepicker__value{color:#fff;background-color:#0067ac}}.x-3deye-datepicker__button--previous-month,.x-3deye-datepicker__button--next-month{opacity:.3;padding:0;&:disabled{opacity:.1}&:hover:not(:disabled){opacity:1}}.x-3deye-popover-container{color:#fff;text-align:left;background:#222;border-radius:6px;padding:8px;animation:.15s ease-in slide-in;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a,inset 0 0 0 1px #ffffff0d}@media (prefers-reduced-motion:reduce){.x-3deye-popover-container{animation:none}}.x-3deye-popover-container .tip{--tip-background:#222;--tip-border:#ffffff0d}.segmented-control-wrapper{background-color:var(--surface-inverse);border-radius:8px;display:inline-grid}.segmented-control{--indicator-offset:0%;grid-auto-columns:1fr;grid-auto-flow:column;margin:2px;display:grid;position:relative}.segmented-control-indicator{pointer-events:none;height:100%;transform:translateX(var(--indicator-offset));transition:all .2s ease-in-out;position:absolute}.segmented-control-indicator-inner{background:#fff;border-radius:6px;transition:all .2s;position:absolute;inset:0;transform:scale(1);box-shadow:0 0 5px #00000029}.segmented-control-indicator.active .segmented-control-indicator-inner{transform:scale(.95)}.segmented-control-button{color:currentColor;user-select:none;text-overflow:ellipsis;z-index:1;background:0 0;border:none;min-height:24px;margin:2px;font-family:inherit;overflow:hidden}.segmented-control-button:not(.current):hover{opacity:.6}.segmented-control-button.current{color:#000}#x-3deye-floating-ui-root{width:100%;z-index:calc(infinity);position:absolute}.x-3deye-select-container{background-color:#00000080;border-radius:.5rem;display:flex;& *{box-sizing:border-box}& .x-3deye-select-body{padding:.375rem .5rem;display:grid;&>*{grid-area:1/1}}& .x-3deye-multi-select-body{flex-wrap:wrap;gap:4px;padding:.375rem .5rem;display:flex}& .x-3deye-select-value{color:#333;background-color:var(--color,#e6e6e6);border-radius:2px;align-items:center;gap:4px;min-height:24px;padding-left:6px;font-size:.75rem;display:inline-flex;&>.icon{flex-shrink:0}& .close-button{background-color:var(--color,#e6e6e6);width:24px;min-width:24px;height:100%;color:inherit;border:none;border-top-right-radius:2px;border-bottom-right-radius:2px;justify-content:center;align-items:center;margin:0 0 0 3px;padding:0;display:flex;&:hover,&:focus{background-color:var(--background-color,#ffbdad);color:var(--color,#de350b)}}}}.x-3deye-select-indicators{color:#ccc;&:hover{color:#e6e6e6}}.x-3deye-select-container--open,.x-3deye-select-container:focus-within{--border-color:color(from var(--primary-color)srgb r g b/.75);box-shadow:0 2px var(--border-color)inset,0 -2px var(--border-color)inset,-2px 0 var(--border-color)inset,2px 0 var(--border-color)inset;background-color:#fff;& .x-3deye-select-indicators{color:#747474;&:hover{color:#747474}}& .x-3deye-select-single-value{color:#000}}.x-3deye-select-container--disabled{opacity:.35}.x-3deye-select{line-height:0;display:inline-grid}.x-3deye-select-placeholder{color:#b3b3b3;pointer-events:none;grid-area:1/1;align-items:center;gap:4px;display:flex}.x-3deye-select-single-value{color:#fff;grid-area:1/1;align-content:center;padding:.25em .25em .25em 0}.x-3deye-select:after,.x-3deye-select input{min-width:1em;font:inherit;resize:none;appearance:none;color:#000;background:0 0;border:none;grid-area:1/1;margin:0;padding:.25em .25em .25em 0}.x-3deye-select input{height:24px;&:focus{outline:none}}.x-3deye-select:after{content:attr(data-value)" ";visibility:hidden;white-space:pre-wrap}.x-3deye-select-menu{color-scheme:light;background:#fff;border-radius:.25rem;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a,inset 0 0 0 1px #6666660d}.x-3deye-select-option{cursor:default;align-items:center;padding:8px;font-size:.875rem;display:flex}.x-3deye-select-option--active{background-color:#d5edff}.x-3deye-select-option--selected{color:#fff;background-color:#2196f3!important}.event-list-item{user-select:none;color:#ffffffbf;--license-plate-color:#00e5ff;background-color:#ffffff1a;font-size:12px;position:absolute;inset:0;overflow:hidden}.event-list-item .x-3deye-button--icon:hover,.event-list-item .x-3deye-button--icon:focus{background-color:#0003}.event-list-item .acknowledged-overlay{pointer-events:none;color:#fff;text-transform:uppercase;background-color:#0006;place-items:center;font-weight:700;display:grid;position:absolute;inset:0}.event-list-item .no-preview-overlay{pointer-events:none;background-color:#808080cc;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAABaCAYAAABzAJLvAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIDBB8ysGG6bgAAAy1JREFUeNrtnD1oFFEUhc8s6Y0gCDHrT64/EE0UCVEQxB9ioSgWFoqNRgQFG0EQUlhYCXYRBSFuIogkTSKCoNhY2FpYiDYHEYJYiRYuiOhY5EVWFyNxNzvv3T1ftc2+eXO/uWd29s0MIIQQQgghhBBCCCGEEEIIIYQQQgghxILkea4ieIWkqQrNpRTZfF6QnEytk0n2k/xGco8EL8w2AEdIVrIsi1ry/NxIbgXwEsBtM3umzPh3N3SR/EGyksBcyyRzkqMyt3jJ1ZjjmuRAkDsiY/9XwLVBciUWyTWxPBjkXtcvf2dxTXJDkHtNhpzFNcldQe5FmXES1zWxvDvIvapYdhbX4To3J3lFJpzFNcn9Qe55GXAS1zWxPBTkXlYsO4trkjuD3EuquLO4JnkoyD2tSjuJ65pYPhzkXlAsO4trkvuC3HOqrLO4JnksyD3hqTaZI8n9mFu2mwAwBaBjEV8vA7gFYNjMxvM8R5Zlv6J7/rMEFyv4HoCTjYxhZtkfY54xszsp16UEP3Q2+YA5CmAs9aJ4Epw3Ue5BADMeiuJJcDM795GX/ZHgernTnvapQ1p/Y8bbDqmDnSPBEtxWvJVgx5hZjzfJElxPH4BXEuyXKoAdXjpZl0n1MZ0D+AKgh+RndXA8TDT4/Y9A3VLjJnVwwdQs523H3P/RfWa2qHMoyTKAN+GpxuH5Mc3sgzItAkjeCIv1GxsYI5mnGttN7miQu6UJY0X/VGNbUHOD3M0g15p4wET3VGO7du7dIHf1EoytuC5Y7lij51zFdbyxPB5eeLKqBQeS4rrFnTsdOndlC7epuG5Roe8HuesK2LbieoljeSoUeEWBB1iScZ0l0LlPABwAsNzMPhU8ly4AswAmzGw4BcGlyOU+ADAEoFy0XAAws/cAugEcTyWuSxHLfQhgL4BlZjYby7yC5F4k8ka+LFK5zwEMAug0s2qkc0wirksRFu4xgIEQy9VYC5dKXGeRyX2KuReSdpvZ10Qu39YAeA1gEsBZM/uuDv47vQC6UpEbOvkdgPUATgHYrItbp5DU7U9CCCGEEEIIIYQQQgghhBBCCCGEEEIIIUTK/ASpxrk/iYZ2rgAAAABJRU5ErkJggg==);background-position:50%;background-repeat:no-repeat;display:block;position:absolute;inset:0}.event-list-item-caption{z-index:1;pointer-events:none;background:linear-gradient(#0000 0%,#000000a6 100%);flex-direction:column;justify-content:flex-end;padding-top:8px;padding-bottom:8px;padding-left:8px;font-size:11px;display:flex;position:absolute;bottom:0;left:0;right:0}.event-list-item:hover .event-list-item__time{color:#fff}.event-list-item__time{text-shadow:0 1px 2px #000;order:1;font-size:14px;font-weight:700}.event-list-item__camera-name{white-space:nowrap;text-overflow:ellipsis;font-family:Roboto,sans-serif;font-size:13px;font-weight:700;line-height:24px;overflow:hidden}.event-list-item__duration{opacity:.9;background-color:#000000bf;padding:0 4px;font-size:12px;position:absolute;bottom:32px;right:2px}.event-list-item__temperature{text-shadow:0 1px 2px #000;align-items:center;padding:0 4px;font-size:14px;font-weight:700;display:flex;position:absolute;bottom:4px;right:2px}.event-list-item .frame{--frame-color-hsl:186 100% 50%;border:1px solid hsl(var(--frame-color-hsl)/.2);position:absolute;top:0;left:0;right:0}.event-list-item .preview{opacity:0;pointer-events:none;transition:opacity 0s linear .2s;position:absolute;box-shadow:0 0 4px #000000bf}.event-list-item .trigger:hover~.preview{opacity:1}.event-list-item__license-plate-trigger{outline:2px solid var(--license-plate-color)}.event-list-item__license-plate .plate-number{color:#fff;font-family:Roboto Mono,monospace}.event-list-item__license-plate .plate-number .digit{color:var(--license-plate-color)}.event-list-item__license-plate .plate-number .digit:first-of-type{margin-left:2px}.event-list-item__license-plate-caption{z-index:1;background-color:#000;justify-content:space-between;align-items:center;gap:10px;height:60px;padding-left:10px;display:flex;position:absolute;bottom:0;left:0;right:0}.event-list-item__license-plate-caption .plate-number{color:#fff;letter-spacing:1px;border:2px solid #ffffff80;border-radius:4px;padding:0 8px;font-family:Roboto Mono,monospace;font-size:16px;& .digit{color:var(--license-plate-color)}& :is(.char+.digit),& :is(.digit+.char){margin-left:.25rem}}.event-list-item__detected-object-label{white-space:nowrap;color:#fff;--label-color:rgb(from var(--detected-object-color)r g b/75%);background-color:#00000080;flex-direction:column;min-width:64px;padding:8px;font-family:Roboto Mono,monospace;font-size:13px;font-weight:700;display:flex;position:absolute}.event-list-item__detected-object-label[data-position=right]{box-shadow:6px 0 0 var(--label-color)inset;padding-left:12px;padding-right:4px}.event-list-item__detected-object-label[data-position=left]{box-shadow:-6px 0 0 var(--label-color)inset;padding-left:4px;padding-right:12px}.event-list-item__detected-object-label[data-position=bottom]{box-shadow:0 6px 0 var(--label-color)inset;padding-top:12px;padding-bottom:4px}.event-list-item__detected-object-label[data-position=top]{box-shadow:0 -6px 0 var(--label-color)inset;padding-top:4px;padding-bottom:12px}.event-list-item__detected-object-label__attrs{grid-template-columns:1fr auto;column-gap:10px;font-size:10px;line-height:14px;display:grid}.event-list-item__license-plate-label{white-space:nowrap;color:#fff;background-color:#00000080;flex-direction:column;font-family:Roboto Mono,monospace;font-size:14px;display:flex;position:absolute}.event-list-item__license-plate-label .digit{color:var(--license-plate-color)}.event-list-item__license-plate-label .digit:first-of-type{margin-left:2px}.event-list-item__license-plate-label__caption{background-color:var(--license-plate-color);color:#000;opacity:.75;padding-left:4px;font-size:10px}.event-list-item__license-plate .plate-number{background:#000;height:16px;padding-left:2px;padding-right:2px;position:absolute;bottom:0;left:0;right:0}.event-list-item__license-plate .frame{--frame-color-hsl:186 100% 50%}.event-list-item-face .frame{--frame-color-hsl:42 100% 50%;bottom:0}.event-list-item .menu-button{position:absolute;top:0;right:0}.x-3deye-slider{align-items:center;display:flex;position:relative}.x-3deye-slider:focus-visible{outline:none}.x-3deye-slider.horizontal{width:100%;height:20px}.x-3deye-slider.vertical{flex-direction:column;width:20px;height:100%}.x-3deye-slider__track{background:var(--surface-inverse,gainsboro);flex:1;position:relative}.x-3deye-slider__bar{background-color:var(--primary-color,#0067ac);position:absolute}.x-3deye-slider.disabled .x-3deye-slider__bar{background-color:#a5a5a5}.x-3deye-slider.horizontal .x-3deye-slider__bar{top:0;bottom:0;left:0}.x-3deye-slider.vertical .x-3deye-slider__bar{bottom:0;left:0;right:0}.x-3deye-slider.horizontal .x-3deye-slider__track{height:3px}.x-3deye-slider.vertical .x-3deye-slider__track{width:3px}.x-3deye-slider__thumb{will-change:transform box-shadow;background:#fff;border-radius:50%;width:20px;height:20px;transition:box-shadow .15s cubic-bezier(.45,.05,.55,.95);box-shadow:0 0 0 6px #0064ff00,inset 0 0 0 1px #0000001a,1px 1px 2px #00000040}.x-3deye-slider:not(.disabled) .x-3deye-slider__thumb:hover,.x-3deye-slider:focus .x-3deye-slider__thumb{box-shadow:0 0 0 6px rgba(var(--surface-highlight-rgb,0,100,255),.1),0 0 0 1px #0000001a inset,1px 1px 2px 0 #00000040}.x-3deye-slider:focus .x-3deye-slider__thumb.active{box-shadow:0 0 0 6px rgba(var(--surface-highlight-rgb,0,100,255),.2),0 0 0 1px #0000001a inset,1px 1px 2px 0 #00000040}.x-3deye-slider.horizontal .x-3deye-slider__thumb{margin-left:-10px}.x-3deye-slider.vertical .x-3deye-slider__thumb{margin-bottom:-10px}.x-3deye-slider__label{pointer-events:none;touch-action:none;will-change:transform;background:var(--primary-color,#0067ac);color:var(--on-primary-color,white);transform-origin:bottom;border-radius:4px;width:fit-content;min-width:24px;padding:4px 8px;font-size:.75rem;transition:transform .15s cubic-bezier(.45,.05,.55,.95);position:relative;bottom:50%;left:50%;transform:translate(-50%,-100%)scale(0)}.x-3deye-slider__label.open,.x-3deye-slider:not(.disabled) .x-3deye-slider__thumb:hover .x-3deye-slider__label,.x-3deye-slider:focus .x-3deye-slider__label{transform:translate(-50%,-100%)scale(1)}.x-3deye-slider__label:before{content:"";border-left:5px solid #0000;border-right:5px solid #0000;border-top:5px solid var(--primary-color,#0067ac);width:0;height:0;display:block;position:absolute;top:100%;left:calc(50% - 5px)}.x-3deye-tooltip{color:#fff;background:#000000e6;border:1px solid #ffffff26;border-radius:4px;padding:.5em 1em;font-size:12px}.menu-button{background:0 0;border:none}.menu-button:disabled{cursor:not-allowed;opacity:.5}.menu-button[data-open],.menu-button:hover:not(:disabled){background-color:rgba(var(--surface-highlight-rgb),.1)}.menu-list{background-color:var(--container);color:var(--on-container);backdrop-filter:blur(10px);border-radius:6px;outline:0;padding:4px;box-shadow:0 12px 28px #0003,0 2px 4px #0000001a,inset 0 0 0 1px #ffffff0d}.menu-item{text-align:left;background:0 0;border:none;border-radius:4px;outline:0;justify-content:space-between;align-items:center;width:100%;min-width:120px;margin:0;display:flex}.menu-item--danger{color:var(--danger-color)}.menu-item.x-3deye-button{text-align:left;letter-spacing:.5px;background:0 0;border:none;width:100%;height:fit-content;padding:8px 16px;font-size:14px}.menu-item:focus,.menu-item[data-focus-inside][data-open]{background-color:rgba(var(--surface-highlight-rgb),.1)}.frame .corner-highlight-tl{background-color:hsl(var(--frame-color-hsl));width:10px;height:2px;position:absolute;top:-1px;left:-1px}.frame .corner-highlight-tl:before{content:"";background-color:hsl(var(--frame-color-hsl));width:2px;height:10px;display:block;position:absolute;top:0;left:0}.frame .corner-highlight-tr{background-color:hsl(var(--frame-color-hsl));width:10px;height:2px;position:absolute;top:-1px;right:-1px}.frame .corner-highlight-tr:before{content:"";background-color:hsl(var(--frame-color-hsl));width:2px;height:10px;display:block;position:absolute;top:0;right:0}.frame .corner-highlight-br{background-color:hsl(var(--frame-color-hsl));width:10px;height:2px;position:absolute;bottom:-1px;right:-1px}.frame .corner-highlight-br:before{content:"";background-color:hsl(var(--frame-color-hsl));width:2px;height:10px;display:block;position:absolute;bottom:0;right:0}.frame .corner-highlight-bl{background-color:hsl(var(--frame-color-hsl));width:10px;height:2px;position:absolute;bottom:-1px;left:-1px}.frame .corner-highlight-bl:before{content:"";background-color:hsl(var(--frame-color-hsl));width:2px;height:10px;display:block;position:absolute;bottom:0;left:0}
|
|
@@ -10,6 +10,7 @@ declare class AllEventsLoaderFilters implements EventsLoaderFilters {
|
|
|
10
10
|
to: Date | null;
|
|
11
11
|
probabilityThreshold: number | null;
|
|
12
12
|
cameras: number[];
|
|
13
|
+
acknowledged: boolean | null;
|
|
13
14
|
detectedObjects: string[];
|
|
14
15
|
colors: Set<string>;
|
|
15
16
|
regions: {
|
|
@@ -113,6 +114,25 @@ declare abstract class ApiStore {
|
|
|
113
114
|
dispose(): void;
|
|
114
115
|
}
|
|
115
116
|
|
|
117
|
+
declare interface ArchiveWithChunks {
|
|
118
|
+
id: number | null;
|
|
119
|
+
isCurrent: boolean;
|
|
120
|
+
recordType: string | null;
|
|
121
|
+
name: string | null;
|
|
122
|
+
description: string | null;
|
|
123
|
+
tagName: string | null;
|
|
124
|
+
cameraId: number;
|
|
125
|
+
startTime: string;
|
|
126
|
+
endTime: string;
|
|
127
|
+
elapsedTimeSec: number | null;
|
|
128
|
+
thumbnailUrl: string | null;
|
|
129
|
+
validTo: string | null;
|
|
130
|
+
timeCreated: string | null;
|
|
131
|
+
timeUpdated: string | null;
|
|
132
|
+
version: string;
|
|
133
|
+
chunks: RawArchiveChunk[];
|
|
134
|
+
}
|
|
135
|
+
|
|
116
136
|
declare class Auth {
|
|
117
137
|
token: Token | null;
|
|
118
138
|
isAuthenticating: boolean;
|
|
@@ -146,7 +166,7 @@ declare interface AuthStoreOptions {
|
|
|
146
166
|
tokenServiceUrl: string;
|
|
147
167
|
storage: Storage_2;
|
|
148
168
|
tokenStorageKey: string;
|
|
149
|
-
deviceInfo:
|
|
169
|
+
deviceInfo: string | null;
|
|
150
170
|
clientId: string;
|
|
151
171
|
}
|
|
152
172
|
|
|
@@ -215,6 +235,8 @@ declare class CameraEvent {
|
|
|
215
235
|
get acknowledged(): boolean;
|
|
216
236
|
update: (raw: RawSensorEvent) => void;
|
|
217
237
|
constructor(raw: RawSensorEvent);
|
|
238
|
+
static fromWebhookEvent: (event: WebhookEvent) => CameraEvent;
|
|
239
|
+
toWebhookEvent: () => WebhookEvent;
|
|
218
240
|
}
|
|
219
241
|
|
|
220
242
|
declare interface CameraOption {
|
|
@@ -264,6 +286,8 @@ declare interface CamgroupItem {
|
|
|
264
286
|
declare interface Car {
|
|
265
287
|
Type: 'Car';
|
|
266
288
|
BodyType?: string;
|
|
289
|
+
Specialization?: string;
|
|
290
|
+
SpecialPurpose?: string;
|
|
267
291
|
Box: BoundingBox;
|
|
268
292
|
Probability: number;
|
|
269
293
|
Colors?: {
|
|
@@ -306,7 +330,7 @@ declare type DeepPartial<T> = {
|
|
|
306
330
|
};
|
|
307
331
|
|
|
308
332
|
declare type DetectedObject = Car | LicensePlate | {
|
|
309
|
-
Type: 'Person' | 'Animal' | 'Bicycle' | 'Luggage' | 'Boat' | 'HardHat' | 'NoHardHat' | 'Fire' | 'Smoke' | 'Face';
|
|
333
|
+
Type: 'Person' | 'Animal' | 'Bicycle' | 'Luggage' | 'Boat' | 'HardHat' | 'NoHardHat' | 'Vest' | 'NoVest' | 'Gun' | 'Fire' | 'Smoke' | 'Face';
|
|
310
334
|
Box: BoundingBox;
|
|
311
335
|
Probability: number;
|
|
312
336
|
Colors?: {
|
|
@@ -356,6 +380,7 @@ declare class EventsLoader extends ApiStore {
|
|
|
356
380
|
error: Error | null;
|
|
357
381
|
private loadingInitiated;
|
|
358
382
|
get isLive(): boolean;
|
|
383
|
+
get hasMore(): boolean;
|
|
359
384
|
constructor(eventsStore: EventsStore, filters: EventsLoaderFilters, fetcher: (api: Api<IApi> & IApi, pageToken?: number) => Observable<ApiPageResult<RawSensorEvent>>, transformData?: (data: CameraEvent) => {
|
|
360
385
|
data: CameraEvent;
|
|
361
386
|
objectIdx: number;
|
|
@@ -435,8 +460,10 @@ declare class EventsStore extends ApiStore {
|
|
|
435
460
|
* @param endTime - end of the period
|
|
436
461
|
*/
|
|
437
462
|
populateEvents(cameraId: number, startTime: Date, endTime: Date): void;
|
|
438
|
-
update: (data: CameraEvent[]) => void;
|
|
439
463
|
add: (data: CameraEvent[]) => void;
|
|
464
|
+
processNewEvents: ({ data }: {
|
|
465
|
+
data: RawSensorEvent[];
|
|
466
|
+
}) => void;
|
|
440
467
|
getEvents({ cameraIds, from, to, detectedObjectTypes, eventTypes, colors, probability }: EventsQuery): CameraEvent[];
|
|
441
468
|
getOverlappedEvents({ cameraId, from, to }: {
|
|
442
469
|
cameraId: number;
|
|
@@ -471,9 +498,6 @@ declare class EventsStore extends ApiStore {
|
|
|
471
498
|
};
|
|
472
499
|
}): CameraEvent;
|
|
473
500
|
protected afterInit(): void;
|
|
474
|
-
processNewEvents: ({ data }: {
|
|
475
|
-
data: RawSensorEvent[];
|
|
476
|
-
}) => void;
|
|
477
501
|
dispose(): void;
|
|
478
502
|
}
|
|
479
503
|
|
|
@@ -511,7 +535,7 @@ declare interface IApi {
|
|
|
511
535
|
cameraId: number;
|
|
512
536
|
endTime: Date;
|
|
513
537
|
startTime: Date;
|
|
514
|
-
}) => Observable<
|
|
538
|
+
}) => Observable<ApiResult<ArchiveWithChunks>>;
|
|
515
539
|
GetArchives: (params: Record<string, never>) => Observable<ApiResult<RawClip>>;
|
|
516
540
|
GetClips: () => Observable<any>;
|
|
517
541
|
UpdateClip: (params: any) => Observable<any>;
|
|
@@ -566,6 +590,8 @@ declare interface IApi {
|
|
|
566
590
|
};
|
|
567
591
|
sound: {
|
|
568
592
|
GetPushSoundServiceUrl: (id: number) => Observable<ApiResult<string>>;
|
|
593
|
+
GenerateSpeech: (text: string) => Observable<ApiResult<string>>;
|
|
594
|
+
SendText: (cameras: number[], text: string) => Observable<ApiResult<string>>;
|
|
569
595
|
};
|
|
570
596
|
thumbnails: {
|
|
571
597
|
GetThumbnailsInfo: (params: {
|
|
@@ -635,6 +661,20 @@ declare interface Props extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
635
661
|
onEventClick: (event: CameraEvent) => void;
|
|
636
662
|
}
|
|
637
663
|
|
|
664
|
+
declare interface RawArchiveChunk {
|
|
665
|
+
id: number;
|
|
666
|
+
tagName: string | null;
|
|
667
|
+
description: string;
|
|
668
|
+
cameraId: number;
|
|
669
|
+
startTime: string;
|
|
670
|
+
endTime: string;
|
|
671
|
+
elapsedTime: number;
|
|
672
|
+
streamUrl: string;
|
|
673
|
+
isDvr: boolean;
|
|
674
|
+
thumbnailUrl: string;
|
|
675
|
+
duration?: number;
|
|
676
|
+
}
|
|
677
|
+
|
|
638
678
|
declare interface RawCamera {
|
|
639
679
|
id: number;
|
|
640
680
|
customerId: number;
|
|
@@ -841,6 +881,7 @@ declare interface SensorEventsRequest {
|
|
|
841
881
|
sensorIds: number[];
|
|
842
882
|
sensorType: string;
|
|
843
883
|
sensorEventTypes: SensorEventType[];
|
|
884
|
+
acknowledged?: boolean | null;
|
|
844
885
|
startTime?: Date;
|
|
845
886
|
endTime?: Date;
|
|
846
887
|
isDescending: boolean;
|
|
@@ -918,7 +959,65 @@ declare class Token {
|
|
|
918
959
|
json: RawToken;
|
|
919
960
|
constructor(raw: RawToken);
|
|
920
961
|
private _exp;
|
|
921
|
-
get accessTokenExpires(): Date;
|
|
962
|
+
get accessTokenExpires(): Date | undefined;
|
|
922
963
|
}
|
|
923
964
|
|
|
965
|
+
declare type WebhookEvent = {
|
|
966
|
+
id: number;
|
|
967
|
+
deviceId: number;
|
|
968
|
+
ackType?: string;
|
|
969
|
+
ackData?: {
|
|
970
|
+
timestampUtc: string;
|
|
971
|
+
message: string;
|
|
972
|
+
translatedMessage?: string;
|
|
973
|
+
editedMessage?: string;
|
|
974
|
+
userId: string;
|
|
975
|
+
};
|
|
976
|
+
} & ({
|
|
977
|
+
type: Exclude<EventType, 'LicensePlate' | 'Analytic'>;
|
|
978
|
+
data: {
|
|
979
|
+
thumbnailUrl: string;
|
|
980
|
+
sharedVideoUrl?: string;
|
|
981
|
+
} & ({
|
|
982
|
+
timestampUtc: string;
|
|
983
|
+
} | {
|
|
984
|
+
startTimeUtc: string;
|
|
985
|
+
endTimeUtc: string;
|
|
986
|
+
});
|
|
987
|
+
} | {
|
|
988
|
+
type: 'Analytic';
|
|
989
|
+
data: {
|
|
990
|
+
objectsFound: {
|
|
991
|
+
type: string;
|
|
992
|
+
box: {
|
|
993
|
+
left: number;
|
|
994
|
+
top: number;
|
|
995
|
+
right: number;
|
|
996
|
+
bottom: number;
|
|
997
|
+
};
|
|
998
|
+
probability: number;
|
|
999
|
+
}[];
|
|
1000
|
+
thumbnailUrl: string;
|
|
1001
|
+
sharedVideoUrl?: string;
|
|
1002
|
+
timestampUtc: string;
|
|
1003
|
+
};
|
|
1004
|
+
} | {
|
|
1005
|
+
type: 'LicensePlateRecognition';
|
|
1006
|
+
data: {
|
|
1007
|
+
platesFound: {
|
|
1008
|
+
box: {
|
|
1009
|
+
left: number;
|
|
1010
|
+
top: number;
|
|
1011
|
+
right: number;
|
|
1012
|
+
bottom: number;
|
|
1013
|
+
};
|
|
1014
|
+
probability: number;
|
|
1015
|
+
plateNumber: string;
|
|
1016
|
+
}[];
|
|
1017
|
+
thumbnailUrl: string;
|
|
1018
|
+
sharedVideoUrl?: string;
|
|
1019
|
+
timestampUtc: string;
|
|
1020
|
+
};
|
|
1021
|
+
});
|
|
1022
|
+
|
|
924
1023
|
export { }
|
package/dist/react-event-list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"i18next";import{of as t,from as r,Observable as n,Subscription as i,mergeMap as o,throwError as a,catchError as l,startWith as s,switchMap as c,map as d,exhaustMap as h,EMPTY as u,Subject as p}from"rxjs";import{jsx as m,jsxs as g,Fragment as f}from"react/jsx-runtime";import v,{forwardRef as y,memo as b,useState as C,useRef as x,useEffect as w,useLayoutEffect as T,createContext as D,Component as k,useCallback as N,useMemo as M,cloneElement as I,Children as _,useContext as L}from"react";import{AppContext as S,app as F}from"@3deye-toolkit/core";import{useElementSize as z}from"@mantine/hooks";import{computed as U,observe as O,makeObservable as P,observable as E,action as H,runInAction as B,reaction as A,when as R}from"mobx";import{observer as j,useLocalObservable as $}from"mobx-react-lite";import V from"clsx";import{useMergeRefs as W,useListItem as Y,useFloatingTree as q,useFloating as Z,offset as G,flip as Q,shift as X,arrow as J,autoUpdate as K,useInteractions as ee,useRole as te,useDismiss as re,FloatingPortal as ne,FloatingFocusManager as ie,useId as oe,size as ae,useListNavigation as le,useHover as se}from"@floating-ui/react";import ce from"react-ink";import de from"@seznam/compose-react-refs";import{differenceInCalendarDays as he,max as ue,min as pe}from"date-fns";import me from"memoize-one";var ge={showEvents_one:"show {{count}} new event",showEvents_other:"show {{count}} new events",noEventsFound:"no events found",eventSearchFilter:{after:"After",before:"Before",recentEvents:"Recent events"},button:{ok:"Ok"},eventTypes:{Normal:"Normal",Suspicious:"Suspicious",Misidentification:"Misidentification",Loitering:"Loitering",Vandalism:"Vandalism",Trespass:"Trespass",Emergency:"Emergency",LifeInDanger:"Life in Danger",ErroneousAlert:"Erroneous Alert",Fire:"Fire",MedicalDuress:"Medical Duress",HoldUp:"Hold Up",CheckIn:"Check In",CheckOut:"Check Out",ClockIn:"Clock In",ClockOut:"Clock Out",ParkingStart:"Parking Start",ParkingEnd:"Parking End",ParkingViolation:"Parking Violation",GateAccess:"Gate Access",DoorAccess:"Door Access",TemperatureCheck:"Temperature Check",IDCheck:"ID Check",PPECheck:"PPE Check",WelfareCheck:"Welfare Check",VehicleBreakIn:"Vehicle Break-In",DrugTrafficking:"Drug Trafficking",Assault:"Assault",PackageDelivery:"Package Delivery",Uncategorized:"Uncategorized"},filter:"Filter",event:{acknowledged:"acknowledged"},color:"color",confidence:"confidence",select:{loading:"Loading...",noOptions:"No options"},duration:{minute:"minute",hour:"hour",day:"day",ss:"{{seconds}}s",mm:"{{minutes}}m",hh:"{{hours}}h",mmss:"{{minutes}}m {{seconds}}s",hhmm:"{{hours}}h {{minutes}}m",hhmmss:"{{hours}}h {{minutes}}m {{seconds}}s"},analytics:{car:"car",person:"person",animal:"animal",bicycle:"bicycle",luggage:"luggage",boat:"boat",hardhat:"hardhat",nohardhat:"no hardhat",licenseplate:"license plate",smoke:"smoke",fire:"fire",vest:"vest",novest:"no vest"}};const fe={detection:{order:["querystring","htmlTag","navigator"],lookupQuerystring:"lang"},fallbackLng:"en",load:"all",interpolation:{escapeValue:!1}},ve=e.createInstance(),ye=v.createContext(null);function be(e,t=!1){const r=U(e);return new n((e=>{const n=O(r,(({newValue:t})=>e.next(t)),t);return()=>n()}))}var Ce;!function(e){e[e.Motion=0]="Motion",e[e.Tampering=1]="Tampering",e[e.PanTiltZoom=2]="PanTiltZoom",e[e.CrossLine=3]="CrossLine",e[e.Intrusion=4]="Intrusion",e[e.LicensePlate=5]="LicensePlate",e[e.FaceDetection=6]="FaceDetection",e[e.Audio=7]="Audio",e[e.Analytic=8]="Analytic",e[e.SpeedDetection=9]="SpeedDetection",e[e.PeopleCounter=10]="PeopleCounter",e[e.Temperature=11]="Temperature",e[e.PoS=12]="PoS",e[e.GPS=13]="GPS",e[e.DigitalInput=14]="DigitalInput",e[e.Normal=15]="Normal",e[e.Suspicious=16]="Suspicious",e[e.Loitering=17]="Loitering",e[e.Vandalism=18]="Vandalism",e[e.Trespass=19]="Trespass",e[e.Emergency=20]="Emergency",e[e.LifeInDanger=21]="LifeInDanger",e[e.ErroneousAlert=22]="ErroneousAlert",e[e.Misidentification=23]="Misidentification",e[e.Fire=24]="Fire",e[e.MedicalDuress=25]="MedicalDuress",e[e.HoldUp=26]="HoldUp",e[e.CheckIn=27]="CheckIn",e[e.CheckOut=28]="CheckOut",e[e.ClockIn=29]="ClockIn",e[e.ClockOut=30]="ClockOut",e[e.ParkingStart=31]="ParkingStart",e[e.ParkingEnd=32]="ParkingEnd",e[e.ParkingViolation=33]="ParkingViolation",e[e.GateAccess=34]="GateAccess",e[e.DoorAccess=35]="DoorAccess",e[e.TemperatureCheck=36]="TemperatureCheck",e[e.IDCheck=37]="IDCheck",e[e.PPECheck=38]="PPECheck",e[e.WelfareCheck=39]="WelfareCheck",e[e.VehicleBreakIn=40]="VehicleBreakIn",e[e.DrugTrafficking=41]="DrugTrafficking",e[e.Assault=42]="Assault",e[e.PackageDelivery=43]="PackageDelivery",e[e.Uncategorized=999]="Uncategorized"}(Ce||(Ce={}));const xe=new Set(["LicensePlate","FaceDetection","Analytic","SpeedDetection","Temperature","PoS","GPS","DigitalInput","Loitering"]);class we{id;cameraId;type;raw;thumbnailUrl;thumbnailWidth=0;thumbnailHeight=0;detectedObjects;faces;instant;get startTime(){return new Date(this.raw.startTime)}get endTime(){return new Date(this.raw.endTime)}get isLive(){return!xe.has(this.type)&&+this.startTime==+this.endTime}get acknowledged(){return"sensorId"in this.raw&&!!this.raw.ackEventType}update=e=>{this.raw=e};constructor(e){if(P(this,{startTime:U,endTime:U,acknowledged:U,isLive:U,raw:E.ref,update:H}),this.raw=e,this.id=e.id,this.type=e.eventType,this.cameraId=e.sensorId,("Analytic"===this.type||"FaceDetection"===this.type||"Loitering"===this.type)&&e.data)try{const t=JSON.parse(e.data);t.FoundObjects&&(this.detectedObjects=t.FoundObjects),t.Faces&&(this.type="FaceDetection",this.faces=t.Faces),t.ThumbnailSize&&(this.thumbnailWidth=t.ThumbnailSize.Width,this.thumbnailHeight=t.ThumbnailSize.Height),this.thumbnailUrl=t.ThumbnailUrl}catch{console.warn("invalid data",e.data),this.type="Motion"}this.instant=xe.has(this.type),this.detectedObjects||(this.detectedObjects=[])}}const Te=(e,t,r)=>r?e.getUTCFullYear()===t.getUTCFullYear()&&e.getUTCMonth()===t.getUTCMonth()&&e.getUTCDate()===t.getUTCDate():e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate(),De=(e,t,r)=>r?e.getUTCFullYear()===t.getUTCFullYear():e.getFullYear()===t.getFullYear();function ke(e,t){return new Date(e.getTime()-60*t*60*1e3)}const Ne=(e,{locale:t,utc:r=!1,hour12:n=!1,seconds:i,year:o=!1,dayOfWeek:a=!1,day:l=!1})=>{const s={hour:"numeric",minute:"numeric",hour12:n||void 0,hourCycle:n?void 0:"h23"};return r&&(s.timeZone="UTC"),i&&(s.second="numeric"),o&&(s.year="numeric"),a&&(s.weekday="short"),l&&(s.day="numeric",s.month="short"),new Intl.DateTimeFormat(t,s).format(e)},Me=(e,t)=>t?e.getUTCSeconds():e.getSeconds();function Ie(e,t,{locale:r,utc:n=!1,hour12:i=!1}={}){let o="",a="";const l=Boolean(Me(e,n)||Me(t,n)),s={from:!1,to:!1},c={from:!1,to:!1},d={from:!1,to:!1};return De(e,new Date,n)?Te(e,new Date,n)||(Te(e,t,n)?(d.from=!0,c.from=!0):(d.from=!0,c.from=!0,d.to=!0,c.to=!0)):(s.from=!0,d.from=!0,d.to=!0,s.to=!De(e,t,n)),o=Ne(e,{locale:r,utc:n,hour12:i,seconds:l,year:s.from,dayOfWeek:c.from,day:d.from}),+e==+t?o:(a=Ne(t,{locale:r,utc:n,hour12:i,seconds:l,year:s.to,dayOfWeek:c.to,day:d.to}),`${o} - ${a}`)}var _e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function Le(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Se="object"==typeof _e&&_e&&_e.Object===Object&&_e,Fe="object"==typeof self&&self&&self.Object===Object&&self,ze=Se||Fe||Function("return this")(),Ue=ze.Symbol,Oe=Ue,Pe=Object.prototype,Ee=Pe.hasOwnProperty,He=Pe.toString,Be=Oe?Oe.toStringTag:void 0;var Ae=function(e){var t=Ee.call(e,Be),r=e[Be];try{e[Be]=void 0;var n=!0}catch(e){}var i=He.call(e);return n&&(t?e[Be]=r:delete e[Be]),i},Re=Object.prototype.toString;var je=Ae,$e=function(e){return Re.call(e)},Ve=Ue?Ue.toStringTag:void 0;var We=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},Ye=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Ve&&Ve in Object(e)?je(e):$e(e)},qe=We;var Ze,Ge=function(e){if(!qe(e))return!1;var t=Ye(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},Qe=ze["__core-js_shared__"],Xe=(Ze=/[^.]+$/.exec(Qe&&Qe.keys&&Qe.keys.IE_PROTO||""))?"Symbol(src)_1."+Ze:"";var Je=function(e){return!!Xe&&Xe in e},Ke=Function.prototype.toString;var et=Ge,tt=Je,rt=We,nt=function(e){if(null!=e){try{return Ke.call(e)}catch(e){}try{return e+""}catch(e){}}return""},it=/^\[object .+?Constructor\]$/,ot=Function.prototype,at=Object.prototype,lt=ot.toString,st=at.hasOwnProperty,ct=RegExp("^"+lt.call(st).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");var dt=function(e){return!(!rt(e)||tt(e))&&(et(e)?ct:it).test(nt(e))},ht=function(e,t){return null==e?void 0:e[t]};var ut=function(e,t){var r=ht(e,t);return dt(r)?r:void 0},pt=ut(Object,"create"),mt=pt;var gt=function(){this.__data__=mt?mt(null):{},this.size=0};var ft=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},vt=pt,yt=Object.prototype.hasOwnProperty;var bt=function(e){var t=this.__data__;if(vt){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return yt.call(t,e)?t[e]:void 0},Ct=pt,xt=Object.prototype.hasOwnProperty;var wt=function(e){var t=this.__data__;return Ct?void 0!==t[e]:xt.call(t,e)},Tt=pt;var Dt=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=Tt&&void 0===t?"__lodash_hash_undefined__":t,this},kt=gt,Nt=ft,Mt=bt,It=wt,_t=Dt;function Lt(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}Lt.prototype.clear=kt,Lt.prototype.delete=Nt,Lt.prototype.get=Mt,Lt.prototype.has=It,Lt.prototype.set=_t;var St=Lt;var Ft=function(){this.__data__=[],this.size=0};var zt=function(e,t){return e===t||e!=e&&t!=t};var Ut=function(e,t){for(var r=e.length;r--;)if(zt(e[r][0],t))return r;return-1},Ot=Ut,Pt=Array.prototype.splice;var Et=function(e){var t=this.__data__,r=Ot(t,e);return!(r<0)&&(r==t.length-1?t.pop():Pt.call(t,r,1),--this.size,!0)},Ht=Ut;var Bt=function(e){var t=this.__data__,r=Ht(t,e);return r<0?void 0:t[r][1]},At=Ut;var Rt=Ut;var jt=function(e,t){var r=this.__data__,n=Rt(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},$t=Ft,Vt=Et,Wt=Bt,Yt=function(e){return At(this.__data__,e)>-1},qt=jt;function Zt(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}Zt.prototype.clear=$t,Zt.prototype.delete=Vt,Zt.prototype.get=Wt,Zt.prototype.has=Yt,Zt.prototype.set=qt;var Gt=Zt,Qt=ut(ze,"Map"),Xt=St,Jt=Gt,Kt=Qt;var er=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e};var tr=function(e,t){var r=e.__data__;return er(t)?r["string"==typeof t?"string":"hash"]:r.map},rr=tr;var nr=tr;var ir=tr;var or=tr;var ar=function(e,t){var r=or(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},lr=function(){this.size=0,this.__data__={hash:new Xt,map:new(Kt||Jt),string:new Xt}},sr=function(e){var t=rr(this,e).delete(e);return this.size-=t?1:0,t},cr=function(e){return nr(this,e).get(e)},dr=function(e){return ir(this,e).has(e)},hr=ar;function ur(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}ur.prototype.clear=lr,ur.prototype.delete=sr,ur.prototype.get=cr,ur.prototype.has=dr,ur.prototype.set=hr;var pr=ur;function mr(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var a=e.apply(this,n);return r.cache=o.set(i,a)||o,a};return r.cache=new(mr.Cache||pr),r}mr.Cache=pr;const gr=Le(mr)((()=>{const e=document.createElement("div");e.style.overflowY="scroll",e.style.position="absolute",e.style.top="-9999px",document.body.append(e);const t=e.offsetWidth;return e.remove(),t}));function fr(e,t,r=!0){if((e=Math.round(e/1e3))<60)return t("duration.ss",{seconds:e});const n=e%60;let i=(e-n)/60;if(i<60)return!n&&r?t("duration.mm",{minutes:i}):t("duration.mmss",{minutes:i,seconds:`${n}`.padStart(2,"0")});const o=Math.floor(i/60);if(i-=60*o,!n&&!i&&r)return t("duration.hh",{hours:o});const a=r?`${i}`:`${i}`.padStart(2,"0");return!n&&i&&r?t("duration.hhmm",{hours:o,minutes:a}):t("duration.hhmmss",{hours:o,minutes:a,seconds:`${n}`.padStart(2,"0")})}const vr=(e,t,r)=>Math.min(Math.max(e,t),r),yr=()=>{};class br{api;disposables=[];initWith(e){this.api=e,this.afterInit&&this.afterInit()}dispose(){for(const e of this.disposables)e instanceof i?e.closed||e.unsubscribe():e()}}class Cr extends br{eventsStore;filters;fetcher;transformData;data=[];pendingData=[];liveUpdateMode="auto";disposables=[];pageInfo=null;loading=!1;loadMoreTrigger=0;retryTrigger=0;error=null;loadingInitiated=!1;get isLive(){return"DESC"===this.filters.sortDirection&&!this.filters.to}constructor(e,t,r,n=e=>[{data:e,objectIdx:-1}]){super(),this.eventsStore=e,this.filters=t,this.fetcher=r,this.transformData=n,P(this,{data:E.ref,pendingData:E.ref,liveUpdateMode:E,setLiveUpdateMode:H,flushUpdates:H,pageInfo:E.ref,isLive:U,loading:E,loadMoreTrigger:E,retryTrigger:E,error:E.ref,loadMore:H})}flushUpdates=()=>{this.data=[...this.pendingData,...this.data],this.pendingData=[]};setLiveUpdateMode=e=>{this.liveUpdateMode=e};load=()=>{this.loadingInitiated||(this.loadingInitiated=!0,this.initDataLoading(),this.initLiveUpdates())};reload=()=>{this.error&&(this.retryTrigger=+!this.retryTrigger)};loadMore=()=>{this.error=null,this.loadMoreTrigger=+!this.loadMoreTrigger};queryEvents=e=>this.fetcher(this.api,e).pipe(o((e=>e.success?t({events:e.resultItems,pageInfo:e.pageInfo}):a((()=>e.error)))),l((e=>(console.error(e),this.error=e,t({events:[],pageInfo:null})))));initDataLoading(){this.disposables.push(this.filters.updated$.pipe(s(null),c((e=>be((()=>this.retryTrigger),!0).pipe(d((()=>e))))),c((()=>(B((()=>{this.loading=!0,this.pageInfo=null,this.error=null,this.data=[],this.pendingData=[]})),this.queryEvents())))).subscribe((({events:e,pageInfo:t})=>{B((()=>{if(!t)return;const r=e.map(xr);this.isLive?this.data=this.uniquelyConcat(this.filters.apply(this.eventsStore.getEvents({cameraIds:this.filters.cameras,from:r[0]?.startTime??ke(new Date,1),to:null,probability:this.filters.probabilityThreshold??void 0})),r).flatMap(this.transformData):this.data=r.flatMap(this.transformData),this.eventsStore.add(r),this.pageInfo=t,this.loading=!1}))}))),this.disposables.push(this.filters.updated$.pipe(s(null),c((()=>be((()=>this.loadMoreTrigger)).pipe(h((()=>this.queryEvents(this.pageInfo?.nextPageToken))))))).subscribe((({events:e,pageInfo:t})=>{if(!t)return;const r=e.map(xr);this.eventsStore.add(r),B((()=>{this.data=this.data.concat(r.flatMap(this.transformData)),this.pageInfo=t,this.loading=!1}))})))}initLiveUpdates(){this.disposables.push(be((()=>({liveUpdateMode:this.liveUpdateMode,isLive:this.isLive})),!0).pipe(c((({liveUpdateMode:e,isLive:t})=>t&&"auto"===e?be((()=>this.eventsStore.recentAdditions)):u))).subscribe((e=>{if(this.loading)return;if(!this.pageInfo&&this.error)return;const t=this.filters.apply(e.map((e=>this.eventsStore.eventsById.get(e))));t.length&&B((()=>{this.data=[...t.flatMap(this.transformData),...this.data]}))}))),this.disposables.push(be((()=>({liveUpdateMode:this.liveUpdateMode,isLive:this.isLive})),!0).pipe(c((({liveUpdateMode:e,isLive:t})=>t&&"manual"===e?be((()=>this.eventsStore.recentAdditions)):(this.pendingData&&B((()=>this.pendingData=[])),u)))).subscribe((e=>{if(!this.data.length)return;const t=this.filters.apply(e.map((e=>this.eventsStore.eventsById.get(e))));t.length&&B((()=>{this.pendingData=[...t.flatMap(this.transformData),...this.pendingData]}))})))}uniquelyConcat(e,t){if(!e.length)return t.concat();if(!t.length)return e.concat();const r=e=>[e.id,e];return Array.from(new Map([...e.map(r),...t.map(r)]).values())}dispose(){for(const e of this.disposables)e instanceof i?e.closed||e.unsubscribe():e()}}function xr(e){return new we(e)}const wr=({forwardedRef:e,children:t,className:r,fullWidth:n,variant:i,type:o,title:a,placement:l,...s})=>{const c=V(r,"x-3deye-button",{"x-3deye-button--fullwidth":n},i?`x-3deye-button--${i}`:void 0),d=g("button",{ref:e,className:c,type:o||"button",...s,children:[t,s.disabled?null:m(ce,{})]});return void 0===a?d:m(Yn,{label:a,placement:l,disabled:!a,children:d})};var Tr=y(((e,t)=>m(wr,{forwardedRef:t,...e})));function Dr(e){return y(((t,r)=>{const{size:n=24,color:i="currentColor",className:o,...a}=t,l=e.viewBox||"0 0 24 24",s=e.svg;return m("svg",{ref:r,preserveAspectRatio:"xMinYMin",className:V("icon",o),width:n,fill:i,viewBox:l,...a,children:s})}))}const kr=Dr({viewBox:"0 0 24 24",svg:g(f,{children:[m("path",{d:"M5.88 4.12L13.76 12l-7.88 7.88L8 22l10-10L8 2z"}),m("path",{fill:"none",d:"M0 0h24v24H0z"})]})});kr.displayName="ArrowForwardIcon";var Nr=kr;const Mr=Dr({viewBox:"0 0 24 24",svg:m(f,{children:m("path",{d:"M11.74 13.36L14.14 7.71L13.06 5.5H10.5V4H14L14.73 5.5H21.75L20.75 9H16.44L17.11 10.37C17.69 10.13 18.33 10 19 10C21.76 10 24 12.24 24 15C24 17.76 21.76 20 19 20C16.24 20 14 17.76 14 15C14 13.45 14.71 12.06 15.82 11.15L15 9.5L12.25 16H9.9C9.44 18.28 7.42 20 5 20C2.24 20 0 17.76 0 15C0 12.24 2.24 10 5 10C7.59 10 9.72 11.97 10 14.5H10.58L8.3 9H7.5C7.09 9 6.75 8.66 6.75 8.25C6.75 7.84 7.09 7.5 7.5 7.5H10.25C10.66 7.5 11 7.84 11 8.25C11 8.66 10.66 9 10.25 9H9.97L11.74 13.36M5 11.5C3.07 11.5 1.5 13.07 1.5 15C1.5 16.93 3.07 18.5 5 18.5C6.59 18.5 7.93 17.45 8.36 16H4V14.5H8.47C8.22 12.8 6.76 11.5 5 11.5M19 11.5C18.57 11.5 18.15 11.58 17.77 11.72L19.7 15.68L18.35 16.34L16.5 12.55C15.88 13.18 15.5 14.05 15.5 15C15.5 16.93 17.07 18.5 19 18.5C20.93 18.5 22.5 16.93 22.5 15C22.5 13.07 20.93 11.5 19 11.5Z"})})});Mr.displayName="BicycleIcon";var Ir=Mr;const _r=Dr({viewBox:"0 0 24 24",svg:g(f,{children:[m("path",{d:"M0 0h24v24H0z",fill:"none"}),m("path",{d:"M20 21c-1.39 0-2.78-.47-4-1.32-2.44 1.71-5.56 1.71-8 0C6.78 20.53 5.39 21 4 21H2v2h2c1.38 0 2.74-.35 4-.99 2.52 1.29 5.48 1.29 8 0 1.26.65 2.62.99 4 .99h2v-2h-2zM3.95 19H4c1.6 0 3.02-.88 4-2 .98 1.12 2.4 2 4 2s3.02-.88 4-2c.98 1.12 2.4 2 4 2h.05l1.89-6.68c.08-.26.06-.54-.06-.78s-.34-.42-.6-.5L20 10.62V6c0-1.1-.9-2-2-2h-3V1H9v3H6c-1.1 0-2 .9-2 2v4.62l-1.29.42c-.26.08-.48.26-.6.5s-.15.52-.06.78L3.95 19zM6 6h12v3.97L12 8 6 9.97V6z"})]})});_r.displayName="BoatIcon";var Lr=_r;const Sr=Dr({viewBox:"0 0 24 24",svg:g("g",{children:[m("path",{d:"M0 0h24v24H0z",fill:"none"}),m("path",{d:"M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4z"})]})});Sr.displayName="CameraIcon";var Fr=Sr;const zr=Dr({viewBox:"0 0 24 24",svg:g(f,{children:[m("path",{d:"M0 0h24v24H0z",fill:"none"}),m("path",{d:"M18.92 6.01C18.72 5.42 18.16 5 17.5 5h-11c-.66 0-1.21.42-1.42 1.01L3 12v8c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-1h12v1c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-8l-2.08-5.99zM6.5 16c-.83 0-1.5-.67-1.5-1.5S5.67 13 6.5 13s1.5.67 1.5 1.5S7.33 16 6.5 16zm11 0c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM5 11l1.5-4.5h11L19 11H5z"})]})});zr.displayName="CarIcon";var Ur=zr;const Or=Dr({viewBox:"0 0 24 24",svg:g("g",{children:[m("path",{d:"M7.41 7.84L12 12.42l4.59-4.58L18 9.25l-6 6-6-6z"}),m("path",{d:"M0-.75h24v24H0z",fill:"none"})]})});Or.displayName="ChevronDownIcon";var Pr=Or;const Er=Dr({viewBox:"0 0 24 24",svg:g("g",{children:[m("path",{d:"M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),m("path",{d:"M0 0h24v24H0z",fill:"none"})]})});Er.displayName="ChevronRightIcon";var Hr=Er;const Br=Dr({viewBox:"0 0 24 24",svg:g("g",{children:[m("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),m("path",{d:"M0 0h24v24H0z",fill:"none"})]})});Br.displayName="CloseIcon";var Ar=Br;const Rr=Dr({viewBox:"0 0 24 24",svg:g("g",{children:[m("path",{d:"M0 0h24v24H0z",fill:"none"}),m("path",{d:"M13.5 5.5c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zM9.8 8.9L7 23h2.1l1.8-8 2.1 2v6h2v-7.5l-2.1-2 .6-3C14.8 12 16.8 13 19 13v-2c-1.9 0-3.5-1-4.3-2.4l-1-1.6c-.4-.6-1-1-1.7-1-.3 0-.5.1-.8.1L6 8.3V13h2V9.6l1.8-.7"})]})});Rr.displayName="DirectionsWalkIcon";var jr=Rr;const $r=Dr({viewBox:"0 0 24 24",svg:g(f,{children:[m("path",{fill:"none",d:"M0 0h24v24H0z"}),m("path",{d:"M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"})]})});$r.displayName="DoneIcon";var Vr=$r;const Wr=Dr({viewBox:"0 0 24 24",svg:g(f,{children:[m("path",{d:"M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"}),m("path",{d:"M0 0h24v24H0z",fill:"none"})]})});Wr.displayName="FilterListIcon";var Yr=Wr;const qr=Dr({viewBox:"0 0 24 24",svg:m(f,{children:m("path",{d:"M19.48,12.35c-1.57-4.08-7.16-4.3-5.81-10.23c0.1-0.44-0.37-0.78-0.75-0.55C9.29,3.71,6.68,8,8.87,13.62 c0.18,0.46-0.36,0.89-0.75,0.59c-1.81-1.37-2-3.34-1.84-4.75c0.06-0.52-0.62-0.77-0.91-0.34C4.69,10.16,4,11.84,4,14.37 c0.38,5.6,5.11,7.32,6.81,7.54c2.43,0.31,5.06-0.14,6.95-1.87C19.84,18.11,20.6,15.03,19.48,12.35z M10.2,17.38 c1.44-0.35,2.18-1.39,2.38-2.31c0.33-1.43-0.96-2.83-0.09-5.09c0.33,1.87,3.27,3.04,3.27,5.08C15.84,17.59,13.1,19.76,10.2,17.38z"})})});qr.displayName="FireIcon";var Zr=qr;const Gr=Dr({viewBox:"0 0 24 24",svg:g("g",{children:[m("path",{d:"M0 0h24v24H0z",fill:"none"}),m("path",{d:"M10.13 3.245a1.994 1.994 0 0 0-1.542.992l-5.491 9.53c-.55.954-.23 2.178.723 2.728l8.66 5c.953.55 2.174.216 2.724-.737l5.509-9.521c.335-.58.349-1.265.087-1.832L17.65 2.54z"})]})});Gr.displayName="LabelIcon";var Qr=Gr;const Xr=Dr({viewBox:"0 0 24 24",svg:g(f,{children:[m("path",{d:"M0 0h24v24H0z",fill:"none"}),m("path",{d:"M4 4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2H5Zm0 2h4v2h8V6h4v12H4Z"}),m("path",{d:"M9.923 10 8.43 12.433 10 15h-.8L8 13.036 6.8 15H6l1.602-2.616L6.136 10h.8l1.093 1.781L9.123 10Z"}),m("path",{d:"m13.709 10-1.492 2.433L13.787 15h-.8l-1.2-1.964L10.585 15h-.8l1.603-2.616L9.923 10h.799l1.094 1.781L12.91 10Z"}),m("path",{d:"m17.709 10-1.492 2.433L17.787 15h-.8l-1.2-1.964L14.585 15h-.8l1.603-2.616L13.923 10h.799l1.094 1.781L16.91 10Z"})]})});Xr.displayName="LicensePlateIcon";var Jr=Xr;const Kr=Dr({viewBox:"0 0 24 24",svg:m("path",{d:"M12.703 5.787a2.171 2.171 0 0 0-1.334.438c-.511.788-.8 1.614-1.217 3.267l-3.172.91a.499.499 0 0 0-.341.62l.13.455a.5.5 0 0 0 .62.343l2.328-.67-.377 1.31-3.96 3.827 1.53 6.693h3.78l2.67-10.14 1.29-4.51V7.01l-.32-.48a2.213 2.213 0 0 0-1.627-.743zM5.801 7.771c-.06.008-.12.05-.17.125l-.094.14c-.136.2-.16.57-.055.827l.631 1.535c.106.258.302.305.438.104l.094-.139c.135-.2.158-.57.052-.828l-.63-1.537C6 7.837 5.9 7.758 5.8 7.771zm4.648 7.338-1.5 6.022-.969-3.83 2.47-2.192zM10.756 5.6a2 2 0 0 0 2.33-1.6 2 2 0 0 0-1.6-2.33 2 2 0 0 0-2.33 1.6 2 2 0 0 0 1.6 2.33zM15.971 1.02h2.648v21.96h-2.648z"})});Kr.displayName="LoiteringIcon";var en=Kr;const tn=Dr({viewBox:"0 0 24 24",svg:m("path",{d:"M17,6h-2V3c0-0.55-0.45-1-1-1h-4C9.45,2,9,2.45,9,3v3H7C5.9,6,5,6.9,5,8v11c0,1.1,0.9,2,2,2c0,0.55,0.45,1,1,1 c0.55,0,1-0.45,1-1h6c0,0.55,0.45,1,1,1c0.55,0,1-0.45,1-1c1.1,0,2-0.9,2-2V8C19,6.9,18.1,6,17,6z M9.5,18H8V9h1.5V18z M12.75,18 h-1.5V9h1.5V18z M13.5,6h-3V3.5h3V6z M16,18h-1.5V9H16V18z"})});tn.displayName="LuggageIcon";var rn=tn;const nn=Dr({viewBox:"0 0 24 24",svg:g(f,{children:[m("path",{d:"M0 0h24v24H0z",fill:"none"}),m("circle",{cx:"4.5",cy:"9.5",r:"2.5"}),m("circle",{cx:"9",cy:"5.5",r:"2.5"}),m("circle",{cx:"15",cy:"5.5",r:"2.5"}),m("circle",{cx:"19.5",cy:"9.5",r:"2.5"}),m("path",{d:"M17.34 14.86c-.87-1.02-1.6-1.89-2.48-2.91-.46-.54-1.05-1.08-1.75-1.32-.11-.04-.22-.07-.33-.09-.25-.04-.52-.04-.78-.04s-.53 0-.79.05c-.11.02-.22.05-.33.09-.7.24-1.28.78-1.75 1.32-.87 1.02-1.6 1.89-2.48 2.91-1.31 1.31-2.92 2.76-2.62 4.79.29 1.02 1.02 2.03 2.33 2.32.73.15 3.06-.44 5.54-.44h.18c2.48 0 4.81.58 5.54.44 1.31-.29 2.04-1.31 2.33-2.32.31-2.04-1.3-3.49-2.61-4.8z"})]})});nn.displayName="PetsIcon";var on=nn;const an=Dr({viewBox:"0 0 24 24",svg:g(f,{children:[m("path",{d:"M0 0h24v24H0z",fill:"none"}),m("path",{d:"M15 13V5c0-1.66-1.34-3-3-3S9 3.34 9 5v8c-1.21.91-2 2.37-2 4 0 2.76 2.24 5 5 5s5-2.24 5-5c0-1.63-.79-3.09-2-4zm-4-8c0-.55.45-1 1-1s1 .45 1 1h-1v1h1v2h-1v1h1v2h-2V5z"})]})});an.displayName="ThermostatIcon";var ln=an;const sn=[{color:"#f44336",name:"red",highlightColor:"#ffcdd2"},{color:"#4caf50",name:"green",highlightColor:"#c8e6c9"},{color:"#2196f3",name:"blue",highlightColor:"#bbdefb"},{color:"#ffeb3b",name:"yellow",highlightColor:"#f57f17"},{color:"#000",name:"black",highlightColor:"#fff"},{color:"#fff",name:"white",highlightColor:"#000"},{color:"#9e9e9e",name:"dimgrey",highlightColor:"#f5f5f5"}];new Map(sn.map((({color:e,name:t})=>[t,e])));const cn=j((({value:e,clear:t,toggle:r})=>g("div",{className:"color-selector",children:[m("div",{style:{textTransform:"uppercase"},children:ve.t("color")}),g("div",{className:"color-selector__items",children:[sn.map((({color:t,highlightColor:n,name:i})=>m("button",{type:"button",className:V("color-selector__item",{selected:e.has(i)}),style:{backgroundColor:t},onClick:r.bind(null,i),children:m(Vr,{color:n,size:20})},i))),m(Tr,{className:"color-selector__clear",disabled:!e.size,onClick:t,children:m(Ar,{size:20})})]})]})));function dn(e,t,r){return t||r?r?pe(t?[ue([e,t]),r]:[r,e]):ue([t,e]):new Date(e)}cn.displayName="ColorSelector";const hn=me((e=>new Intl.DateTimeFormat(e,{month:"long",year:"numeric"}))),un=me((e=>new Intl.DateTimeFormat(e,{weekday:"short"}))),pn=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()),mn=e=>new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())),gn=b((function({onChange:e,date:t,minDate:r,maxDate:n,utc:i,startOfWeek:o="sunday"}){const[a]=C((()=>({current:i?mn(new Date):pn(new Date)}))),l=t??a.current,s=x(+l),c=C(0),[,d]=c;w((()=>{s.current=+l,d(0)}),[l?.getTime()]);const h=s.current!==+l?0:c[0],u=i?l.getUTCFullYear():l.getFullYear(),p=(i?l.getUTCMonth():l.getMonth())+h,f=i?new Date(Date.UTC(u,p)):new Date(u,p),v=i?(e=>new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth()+1,0)).getUTCDate())(f):(e=>new Date(e.getFullYear(),e.getMonth()+1,0).getDate())(f),y=(i?f.getUTCDay():f.getDay())||("monday"===o?7:0),b=y-("monday"===o?1:0),T=i?new Date(Date.UTC(u,p,1-b)):new Date(u,p,1-b),D=t?he(i?new Date(Date.UTC(l.getUTCFullYear(),l.getUTCMonth(),l.getUTCDate())):new Date(l.getFullYear(),l.getMonth(),l.getDate()),T):-1,k=r?he(r,T):Number.NEGATIVE_INFINITY,N=n?he(n,T):Number.POSITIVE_INFINITY,M=he(a.current,T);return m("div",{children:g("div",{style:{display:"flex",flexDirection:"column",fontSize:"0.875rem"},children:[g("div",{style:{fontWeight:500,height:"3rem",fontSize:"1.125rem",display:"flex",alignItems:"center"},children:[hn(ve.language).format(f),m(Tr,{style:{marginLeft:"auto"},className:"x-3deye-button--icon x-3deye-datepicker__button--previous-month",disabled:k>=b,onClick:()=>d(h-1),children:m(Nr,{size:16,style:{scale:"-1 1"}})}),m(Tr,{className:"x-3deye-button--icon x-3deye-datepicker__button--next-month",disabled:N<b+v,onClick:()=>d(h+1),children:m(Nr,{size:16})})]}),g("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(7, 1fr)",gap:"0.25rem",placeItems:"center"},children:[Array.from({length:7}).map(((e,t)=>m("div",{style:{color:"oklch(0.7 0 0)"},children:un(ve.language).format(new Date(u,p,("monday"===o?2:1)-y+t)).substring(0,2)},t))),Array.from({length:42}).map(((t,o)=>{const a=i?new Date(Date.UTC(u,p,o-b+1)):new Date(u,p,o-b+1),s=o<k||o>N;return m("div",{className:V("x-3deye-datepicker__day",{"x-3deye-datepicker__day--today":o===M,"x-3deye-datepicker__day--disabled":s,"x-3deye-datepicker__day--previous-month":o<b,"x-3deye-datepicker__day--next-month":o>=b+v,"x-3deye-datepicker__day--selected":o===D}),onClick:s?void 0:()=>{if(i){const t=new Date(Date.UTC(a.getUTCFullYear(),a.getUTCMonth(),a.getUTCDate(),l.getUTCHours(),l.getUTCMinutes(),l.getUTCSeconds(),l.getUTCMilliseconds()));return e(dn(t,r,n))}const t=new Date(a.getFullYear(),a.getMonth(),a.getDate(),l.getHours(),l.getMinutes(),l.getSeconds(),l.getMilliseconds());return e(dn(t,r,n))},children:i?a.getUTCDate():a.getDate()},o)}))]})]})})})),fn={hour:"numeric",minute:"numeric"},vn=me(((e,t,r,n=!0)=>{const i={...fn,second:n?"numeric":void 0,hour12:r||void 0,hourCycle:r?void 0:"h23",timeZone:t?"UTC":void 0};return new Intl.DateTimeFormat(e,i)})),yn=me(((e,t)=>{const r=new Intl.DateTimeFormat(e,{hour:"numeric",hour12:!0,timeZone:"UTC"}).formatToParts(new Date("1969-01-01T16:20:00Z")).find((({type:e})=>"dayPeriod"===e))?.value??"PM";return(e,n)=>{const i=e.match(/(?<hours>\d{0,2}):(?<minutes>\d{0,2})(:(?<seconds>\d{0,2}))?/);if(null===i)return new Date(NaN);let{hours:o,minutes:a,seconds:l}=i.groups;o=o.padStart(2,"0"),+o<12&&e.toLowerCase().includes(r.toLowerCase())&&(o=(+o+12).toString()),a=a.padStart(2,"0"),l=l?.padStart(2,"0")??"00";const s=new Date(n);return t?(s.setUTCHours(+o),s.setUTCMinutes(+a),s.setUTCSeconds(+l)):(s.setHours(+o),s.setMinutes(+a),s.setSeconds(+l)),s}}));function bn(e,t){const r=t?new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())):new Date(e.getFullYear(),e.getMonth(),e.getDate()),n=new Date(e.getFullYear(),e.getMonth(),e.getDate(),24);return{hoursInDay:t?24:Math.round((+n-+r)/36e5),startOfTheDay:r}}const Cn=b((({date:e,onChange:t,hour12:r=!1,utc:n=!1})=>{const i=x(null),o=x(null),a=x(null),l=x(null),s=x(!0),[c,d]=C(vn(ve.language,n,r).format(e));T((()=>{e&&s.current&&(s.current=!1,i.current?.children[n?e.getUTCHours():e.getHours()].scrollIntoView(),o.current?.children[n?e.getUTCMinutes():e.getMinutes()].scrollIntoView(),a.current?.children[n?e.getUTCSeconds():e.getSeconds()].scrollIntoView())}));w((()=>{document.activeElement!==l.current&&d(vn(ve.language,n,r).format(e))}),[e]);const{hoursInDay:h,startOfTheDay:u}=bn(e,n);return g("div",{className:"x-3deye-timepicker",style:{display:"grid",gridTemplateRows:"3rem auto 1fr",gridTemplateColumns:"1fr 1fr 1fr"},children:[m("div",{style:{gridColumnStart:1,gridColumnEnd:4,display:"flex",alignItems:"center"},children:m("input",{ref:l,style:{height:32,margin:2},type:"text",value:c,onChange:r=>{const i=yn(ve.language,n)(r.target.value,e);var o;(o=i)instanceof Date&&!isNaN(o.getTime())&&(s.current=!0,t(i)),d(r.target.value)},onBlur:()=>{d(vn(ve.language,n,r).format(e))}})}),m("div",{ref:i,className:"x-3deye-timepicker__column",children:Array.from({length:h},((r,i)=>{const o=new Date(u.getTime()+36e5*i);return m("div",{className:V({selected:o.getUTCDate()===e.getUTCDate()&&o.getUTCHours()===e.getUTCHours()}),onClick:()=>{const r=n?e.getUTCMinutes():e.getMinutes(),i=n?e.getUTCSeconds():e.getSeconds();t(new Date(+o+60*r*1e3+1e3*i+e.getMilliseconds()))},children:m("div",{className:"x-3deye-timepicker__value",children:o[n?"getUTCHours":"getHours"]().toString().padStart(2,"0")})},i)}))}),m("div",{ref:o,className:"x-3deye-timepicker__column",children:Array.from({length:60},((r,i)=>m("div",{className:V({selected:i===e.getMinutes()}),onClick:()=>{const r=i,o=n?e.getUTCSeconds():e.getSeconds(),a=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours())+6e4*r+1e3*o);t(a)},children:m("div",{className:"x-3deye-timepicker__value",children:i.toString().padStart(2,"0")})},i)))}),m("div",{ref:a,className:"x-3deye-timepicker__column",children:Array.from({length:60},((r,i)=>m("div",{className:V({selected:i===e.getSeconds()}),onClick:()=>{const r=n?e.getUTCMinutes():e.getMinutes(),o=i,a=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours())+6e4*r+1e3*o);t(a)},children:m("div",{className:"x-3deye-timepicker__value",children:i.toString().padStart(2,"0")})},i)))})]})}));Cn.displayName="TimePicker";const xn=b((({date:e,onChange:t,utc:r=!1,hour12:n=!1})=>{const i=x(null),o=x(!0);T((()=>{e&&o.current&&(o.current=!1,i.current?.children[r?e.getUTCHours():e.getHours()].scrollIntoView({block:"center"}))}));const a=e||new Date,{hoursInDay:l,startOfTheDay:s}=bn(a,r);return m("div",{className:"x-3deye-timepicker x-3deye-timepicker--alt",children:m("div",{ref:i,className:"x-3deye-timepicker__column",children:Array.from({length:l},((i,o)=>{const a=new Date(s.getTime()+60*o*60*1e3);return m("div",{className:V({selected:!!e&&(a.getUTCDate()===e.getUTCDate()&&a.getUTCHours()===e.getUTCHours())}),onClick:()=>{t(a)},children:m("div",{className:"x-3deye-timepicker__value",children:vn(ve.language,r,n,!1).format(a)})},o)}))})})}));xn.displayName="TimePickerShort";const wn={day:"2-digit",month:"short",weekday:"short",hour:"2-digit",minute:"numeric"},Tn=Array.from({length:3}),Dn=e=>m("svg",{viewBox:"0 0 100 100",...e,children:Tn.map(((e,t)=>m("circle",{fill:"currentColor",stroke:"none",cx:20*t+6,cy:"50",r:"6",children:m("animate",{attributeName:"opacity",dur:"1s",values:"0;1;0",repeatCount:"indefinite",begin:.1*(t+1)})},t)))}),kn=D({reportError:(e,t)=>{}});class Nn extends k{static contextType=kn;state={hasError:!1};componentDidCatch(e,t){this.setState({hasError:!0}),this.context?.reportError(e,t),console.error(e),console.log(t)}render(){if(!this.state.hasError)return this.props.children;const{style:e,children:t,...r}=this.props;return g("div",{style:{flex:1,padding:10,display:"grid",placeItems:"center",alignContent:"center",textAlign:"center",...this.props.style},...r,children:[m("h1",{children:"Oops. Something went wrong"}),m("div",{children:"We've been notified about this problem"}),m(Tr,{onClick:()=>this.setState({hasError:!1}),children:"retry"})]})}}const Mn=v.createContext(null),In=v.forwardRef((({className:e,children:t,title:r,...n},i)=>{const o=v.useContext(Mn);if(!o)return;const{refs:a,isNested:l,isOpen:s,hasFocusInside:c,item:d,parent:h,setHasFocusInside:u,getReferenceProps:p}=o;return g(Tr,{ref:W([a.setReference,d.ref,i]),tabIndex:l?h?.activeIndex===d.index?0:-1:void 0,role:l?"menuitem":void 0,"data-open":s?"":void 0,"data-nested":l?"":void 0,"data-focus-inside":c?"":void 0,className:V(e,{"menu-item":l,"menu-button":!l}),title:s?null:r,...p(h?.getItemProps({...n,onFocus(e){n.onFocus?.(e),u(!1),h.setHasFocusInside(!0)}})),children:[t,l&&m(Hr,{style:{marginLeft:"auto"},"aria-hidden":!0,size:20})]})}));In.displayName="MenuButton";const _n=v.forwardRef((({label:e,disabled:t,className:r,children:n,...i},o)=>{const a=v.useContext(Mn),l=Y({label:t?null:e}),s=q();if(!a)return null;const c=l.index===a.activeIndex;return m(Tr,{...i,ref:W([l.ref,o]),type:"button",role:"menuitem",className:V(r,"menu-item"),tabIndex:c?0:-1,disabled:t,...a.getItemProps({onClick(e){i.onClick?.(e),s?.events.emit("click")},onFocus(e){i.onFocus?.(e),a.setHasFocusInside(!0)}}),children:e||n})}));_n.displayName="MenuItem";const Ln=({opened:e,onOpenChange:t,children:r,target:n,placement:i,className:o,style:a,autoDismiss:l=!0,initialFocus:s,withArrow:c=!1})=>{const d=x(null),{x:h,y:u,refs:p,strategy:v,context:y,middlewareData:b,placement:C,update:w}=Z({open:e,onOpenChange:t,middleware:[G(5),Q(),X(),J({element:d})],placement:i,whileElementsMounted:(e,t,r)=>K(e,t,(()=>{0!==y.elements.domReference?.getBoundingClientRect().width?r():y.onOpenChange(!1)}),{animationFrame:!0})}),{getReferenceProps:T,getFloatingProps:D}=ee([te(y),re(y,{ancestorScroll:!0,enabled:l})]),k=N((e=>{d.current=e,w()}),[w]),M={top:"bottom",right:"left",bottom:"top",left:"right"}[C?.split("-")[0]??"top"]||"top",_=g("div",{...D({className:V("x-3deye-popover-container",o),ref:p.setFloating,style:{...a,position:v,top:u??0,left:h??0}}),children:[c&&m(Wn,{ref:k,width:24,height:8,placement:M,style:{position:"absolute",left:b.arrow?.x,top:b.arrow?.y,[M]:-7}}),r]});return g(f,{children:[I(n,T({ref:p.setReference,...n.props})),g(ne,{id:"x-3deye-floating-ui-root",children:[l&&e&&m(ie,{context:y,modal:!1,order:["reference","content"],returnFocus:!1,initialFocus:s,children:_}),!l&&e&&_]})]})},Sn=({size:e=48})=>g("svg",{role:"graphics-symbol",width:e,height:e,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",children:[m("rect",{x:"0",y:"0",width:"100",height:"100",fill:"none",className:"bk"}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(0 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(30 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.08333333333333333s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(60 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.16666666666666666s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(90 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.25s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(120 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.3333333333333333s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(150 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.4166666666666667s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(180 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.5s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(210 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.5833333333333334s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(240 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.6666666666666666s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(270 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.75s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(300 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.8333333333333334s",repeatCount:"indefinite"})}),m("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(330 50 50) translate(0 -30)",children:m("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.9166666666666666s",repeatCount:"indefinite"})})]});Sn.displayName="Preloader";const Fn=(e,t,r,n)=>vr(Math.floor((e-t)/r*n),0,n-1),zn=D({value:null,onPointerDown:yr,setCurrentValue:yr,state:{currentIdx:0,currentValue:null,options:[]}});class Un{currentIdx=0;options=[];get currentValue(){return this.options[this.currentIdx]}constructor(e=0){this.currentIdx=e,P(this,{currentIdx:E,options:E.ref,currentValue:U,setCurrentIdx:H,setOptions:H})}setCurrentIdx=e=>{this.currentIdx=e};setOptions=e=>{this.options=e}}var On=j(v.forwardRef((({value:e,onChange:t,children:r,style:n},i)=>{const[o,a]=C(!1),l=x(null),s=_.map(r,(e=>e?.props.value))||[],c=$((()=>new Un(s.indexOf(e))));c.setOptions(s);const d=_.count(r);w((()=>{c.setCurrentIdx(s.indexOf(e))}),[e]),w((()=>{if(!o)return;const e=l.current?.getBoundingClientRect();if(!e)return;const r=({clientX:t})=>{c.setCurrentIdx(Fn(t,e.left,e.width,d))},n=()=>{a(!1),t(s[c.currentIdx])};return document.addEventListener("pointermove",r),document.addEventListener("pointerup",n),()=>{document.removeEventListener("pointermove",r),document.removeEventListener("pointerup",n)}}),[o,d]);return m(zn.Provider,{value:{value:e,state:c,onPointerDown:e=>{const t=l.current;if(!t)return;const{left:r,width:n}=t.getBoundingClientRect(),i=Fn(e.clientX,r,n,d);i!==c.currentIdx&&c.setCurrentIdx(i),a(!0)},setCurrentValue:e=>{c.setCurrentIdx(s.indexOf(e))}},children:m("div",{className:"segmented-control-wrapper",style:n,ref:i,children:g("div",{role:"radiogroup",ref:l,className:"segmented-control",style:{"--indicator-offset":100*c.currentIdx+"%"},children:[m("div",{"aria-hidden":!0,className:V("segmented-control-indicator",{active:o}),style:{width:100/s.length+"%"},children:m("div",{className:"segmented-control-indicator-inner"})}),r]})})})})));const Pn=j(y((({value:e,children:t},r)=>{const n=L(zn);return m("button",{ref:r,role:"radio","aria-checked":n.state.currentValue===e,tabIndex:0,className:V("segmented-control-button",{current:n.state.currentValue===e}),onPointerDown:n.onPointerDown,onClick:()=>n.setCurrentValue(e),children:t})})));Pn.displayName="SegmentedControlOption";var En=Pn;const Hn=y((({active:e,children:t,className:r,style:n,...i},o)=>{const a=oe();return m("div",{ref:o,id:a,className:V("x-3deye-select-option",r),role:"option","aria-selected":e,style:{background:e?"rgb(213, 237, 255)":"none",...n},...i,children:t})})),Bn=({className:e,style:t,children:r,onCloseClick:n,...i})=>g("div",{className:V("x-3deye-select-value",e),style:t,...i,children:[r,m("button",{className:"close-button",type:"button",onClick:n,children:m(Ar,{size:12})})]}),An=(e,t,r)=>m(Bn,{...r,children:t.label},e),Rn=(e,t,r,n)=>m(Hn,{active:r,...n,children:t.label},e),jn=({options:e,values:t,inputId:r,inputValue:n,onMenuClose:i,onChange:o,onInputChange:a,onKeyDown:l,isLoading:s,placeholder:c,hideDropdownIcon:d,renderOption:h=Rn,renderValue:u=An,keyExtractor:p=e=>e.value})=>{const[v,y]=C(!1),[b,T]=C(""),D=n??b,[k,N]=C(null),M=x([]),I=x(null),{refs:_,floatingStyles:L,context:S}=Z({whileElementsMounted:K,open:v,onOpenChange:y,middleware:[Q({padding:10}),G({mainAxis:5}),ae({apply({rects:e,availableHeight:t,elements:r}){Object.assign(r.floating.style,{width:`${e.reference.width}px`,maxHeight:`${Math.min(300,t)}px`})},padding:10})]}),F=te(S,{role:"listbox"}),z=re(S),U=le(S,{listRef:M,activeIndex:k,onNavigate:N,virtual:!0,loop:!0}),{getReferenceProps:O,getFloatingProps:P,getItemProps:E}=ee([F,z,U]);const H=e?.filter((e=>{const r=p(e);return!t.some((e=>p(e)===r))&&e.label.toLowerCase().includes(D.toLowerCase().trim())}));return w((()=>{v||(T(""),i?.())}),[v,i]),g(f,{children:[g("div",{className:V("x-3deye-select-container",{"x-3deye-select-container--open":v}),ref:_.setReference,onPointerDownCapture:e=>{const t=e.target;"BUTTON"!==t.tagName&&null===t.closest("button")&&(e.preventDefault(),e.stopPropagation(),y((e=>!e)),I.current?.focus())},children:[g("div",{className:"x-3deye-multi-select-body",children:[t.map((e=>u(p(e),e,{onCloseClick:r=>{r.stopPropagation(),o(t.filter((t=>t!==e)),{action:"remove",open:v,option:e}),I.current?.focus()}}))),g("div",{className:"x-3deye-select","data-value":D,children:[t.length||D?null:m("div",{className:"x-3deye-select-placeholder",children:c}),m("input",{ref:I,size:3,id:r||void 0,...O({onChange:function(e){const t=e.target.value;T(t),a?.(t),t?(y(!0),N(0)):y(!1)},value:D,placeholder:"","aria-autocomplete":"list",onKeyDown(e){if(l?.(e),"Enter"===e.key&&null!=k&&H?.[k])return T(""),o(t.concat(H[k]),{open:v,action:"add",option:H[k]}),void N(Math.max(k-1,0));if("Backspace"!==e.key);else if(""===D&&t.length){const e=t.at(-1);if(!e)return;o(t.slice(0,t.length-1),{open:v,action:"remove",option:e})}}})})]})]}),g("div",{className:"x-3deye-select-indicators",style:{marginLeft:"auto",display:"flex",paddingRight:8,alignItems:"center"},children:[s?m(Dn,{style:{width:24}}):t.length?m(Tr,{className:"x-3deye-button--icon",onClick:()=>{o([],{open:v,action:"clear"})},children:m(Ar,{size:16})}):null,d?null:m(Pr,{size:24})]})]}),m(ne,{id:"x-3deye-floating-ui-root",children:v&&H?m(ie,{context:S,initialFocus:-1,visuallyHiddenDismiss:!0,children:m("div",{className:"x-3deye-select-menu",...P({ref:_.setFloating,style:{...L,color:"black",overflowY:"auto"}}),children:H.length?H.map(((e,r)=>h(p(e),e,k===r,{...E({ref(e){M.current[r]=e},onClick(r){r.stopPropagation(),T(""),o([...t,e],{open:v,action:"add",option:e}),I.current?.focus()}})}))):m("div",{style:{padding:10,textAlign:"center",fontSize:"0.875rem",color:"#666"},children:s?ve.t("select.loading"):ve.t("select.noOptions")})})}):null})]})},$n=e=>Math.round(e),Vn=y((({value:e,onChange:t,onChangeComplete:r,orientation:n="horizontal",disabled:i=!1,labelFormat:o=e=>`${e}`,style:a},l)=>{const s=x(null),c=x(null),[d,h]=C(!1),[u,p]=C(e);w((()=>{if(!d)return;const e=s.current;if(!e)return;let i=0,o=0;const a=e.getBoundingClientRect();if(!a||!a.width||!a.height)return void h(!1);const l=({clientX:e,clientY:r})=>{if(!c.current)return;let l=0;"horizontal"===n?(i=vr(e-a.x,0,a.width),l=i/a.width*100,c.current.style.transform=`translateX(${i}px)`):(o=a.height-vr(r-a.y,0,a.height),l=o/a.height*100,c.current.style.transform=`translateY(${-o}px)`),p(l),t?.($n(l))},u=({clientX:e,clientY:i})=>{if(h(!1),!c.current)return;const o="horizontal"===n?vr(e-a.x,0,a.width)/a.width*100:100*(1-vr(i-a.y,0,a.height)/a.height);c.current.style.transform="",p(o),t?.($n(o)),r?.($n(o))},m=()=>{if(h(!1),!c.current)return;const e="horizontal"===n?i/a.width*100:o/a.height*100;c.current.style.transform="",t?.($n(e)),r?.($n(e))};return document.addEventListener("pointercancel",m),document.addEventListener("pointermove",l),document.addEventListener("pointerup",u),()=>{document.removeEventListener("pointercancel",m),document.removeEventListener("pointermove",l),document.removeEventListener("pointerup",u)}}),[d,n,t,r]);const f=N((e=>{if(!s.current||i)return;const{clientX:r,clientY:o}=e;e.preventDefault(),h(!0);const a=s.current.getBoundingClientRect();if(!a)return;if(!c.current)return;let l=0;if("horizontal"===n){const e=vr(r-a.x,0,a.width);l=e/a.width*100,c.current.style.transform=`translateX(${e}px)`}else{const e=a.height-vr(o-a.y,0,a.height);l=e/a.height*100,c.current.style.transform=`translateY(${-e}px)`}p(l),t?.($n(l))}),[i]),v=N((n=>{if(i)return;let o=null;"ArrowLeft"===n.code?o=Math.max(e-1,0):"ArrowRight"===n.code?o=Math.min(e+1,100):"ArrowDown"===n.code?o=Math.max(e-1,0):"ArrowUp"===n.code&&(o=Math.min(e+1,100)),null!==o&&(n.stopPropagation(),n.preventDefault(),t?.(o),r?.(o))}),[e,t,r,i]);return g("div",{ref:de(l,s),tabIndex:0,onKeyDown:v,className:V("x-3deye-slider",n,{disabled:i}),onPointerDown:f,style:a,children:[m("div",{className:"x-3deye-slider__track",children:m("div",{className:"x-3deye-slider__bar",style:{width:"horizontal"===n?`${d?u:e}%`:void 0,height:"vertical"===n?`${d?u:e}%`:void 0}})}),m("div",{ref:c,className:V("x-3deye-slider__thumb",{active:d}),style:{touchAction:"none",userSelect:"none",position:"absolute",left:"horizontal"===n?d?0:`${e}%`:"auto",bottom:"vertical"===n?d?0:`${e}%`:"auto"},children:null!==o&&m("div",{className:"x-3deye-slider__label "+(d?"open":""),children:o(d?$n(u):e)})})]})}));Vn.displayName="Slider";const Wn=v.forwardRef((function({width:e,height:t,placement:r="top",style:n},i){const o=[0,"top"===r?t:0],a=[e,o[1]],l=[e/2,t-o[1]],s=[e/4,t*("top"===r?3:1)/4],c=[.325*e,t-o[1]],d=[e-c[0],c[1]],h=[e-s[0],s[1]],u=e=>e.join(","),p=`M ${u(o)} C ${u(s)} ${u(c)} ${u(l)} ${u(d)} ${u(h)} ${u(a)}`;return g("svg",{ref:i,role:"graphics-symbol",className:"tip",style:n,width:e,height:t,fill:"var(--tip-background, #fff)",children:[m("path",{className:"tip-body",d:`${p} Z`}),m("path",{className:"tip-border",d:p,stroke:"var(--tip-border, transparent)",strokeWidth:1})]})}));var Yn=({children:e,label:t,placement:r="bottom",disabled:n})=>{const[i,o]=C(!1),{x:a,y:l,refs:s,strategy:c,context:d}=Z({placement:r,open:i,onOpenChange:o,middleware:[G(5),Q(),X({padding:8})],whileElementsMounted:(e,t,r)=>K(e,t,r,{animationFrame:!0})}),{getReferenceProps:h,getFloatingProps:u}=ee([se(d,{enabled:!n}),te(d,{role:"tooltip"}),re(d,{referencePress:!0})]);return g(f,{children:[I(e,h({ref:de(s.setReference,e.ref),...e.props})),m(ne,{id:"x-3deye-floating-ui-root",children:i&&m("div",{...u({ref:s.setFloating,className:"x-3deye-tooltip",style:{position:c,top:l??0,left:a??0}}),children:t})})]})};function qn({count:e,overscan:t=1,itemSize:r,horizontal:n=!1,spacing:i=0}){const[o,a]=C(),[l,s]=C(0),[c,d]=C({width:0,height:0}),h=N((e=>{a(e||void 0)}),[]);w((()=>{if(!o)return;const e=()=>{s(n?o.scrollLeft:o.scrollTop)};return o.addEventListener("scroll",e,{passive:!0,capture:!0}),()=>{o.removeEventListener("scroll",e)}}),[o,n]),w((()=>{if(!o)return;const e=new ResizeObserver((e=>{for(const t of e)t.contentBoxSize?d({width:t.contentBoxSize[0].inlineSize,height:t.contentBoxSize[0].blockSize}):d({width:t.contentRect.width,height:t.contentRect.height})}));return e.observe(o),()=>{e.disconnect()}}),[o]),w((()=>{if(!o)return;const e=o[n?"scrollLeft":"scrollTop"];e!==l&&s(e)}));return{parentRef:h,getItems:()=>{const a=[];if(!o)return a;const{height:s,width:c}=o.getBoundingClientRect(),d=Math.max(0,Math.floor(l/(r+i))-t),h=Math.ceil((n?c:s)/(r+i))+2*t;for(let t=d;t<Math.min(e,d+h);t++)a.push({idx:t,start:t*(r+i),size:r});return a},getTotalSize:()=>r*e+Math.max(e-1,0)*i}}const Zn=j((({getter:e,setter:t})=>{const[r,n]=C(0),i=x(null),o=Math.floor(100*e());return w((()=>A(e,(e=>{n(Math.floor(100*e))}),{fireImmediately:!0})),[e]),g("div",{ref:i,style:{paddingLeft:8,paddingRight:8,marginTop:5,marginBottom:10},children:[g("div",{style:{display:"flex",justifyContent:"space-between"},children:[m("div",{style:{textTransform:"uppercase"},children:ve.t("confidence")}),g("div",{style:{fontSize:"1.1em"},children:[o,"%"]})]}),m("div",{style:{padding:"0 10px"},children:m(Vn,{value:r,labelFormat:e=>`${e}%`,onChangeComplete:e=>{t(e/100)}})})]})}));Zn.displayName="ProbabilitySlider";const Gn=j((({from:e,to:t})=>{const{account:{preferences:{utc:r,hour12:n}}}=L(ye);return m(f,{children:Ie(e,t,{locale:ve.language,utc:r,hour12:n})})}));Gn.displayName="DisplayPeriod";class Qn{from=null;to=null;probabilityThreshold=.5;cameras=[];detectedObjects=[];colors=new Set;regions=null;eventTypes=[];sortDirection="DESC";updated$=new p;get regionsWkt(){return this.regions?this.regions.map((e=>this.regionToWktPolygon(e))):[]}constructor(){P(this,{from:E,to:E,probabilityThreshold:E,cameras:E.struct,detectedObjects:E.struct,regions:E.ref,eventTypes:E.struct,sortDirection:E,colors:E.ref,filterJson:U}),A((()=>({from:this.from?+this.from:void 0,to:this.to?+this.to:void 0,sortDirection:this.sortDirection,filter:this.filterJson,cameraFilters:this.cameras,eventTypes:this.eventTypes,regions:this.regions})),(()=>this.updated$.next(null)))}apply(e){let t=e;const{from:r,to:n}=this;if(r&&(t=t.filter((e=>e.startTime>=r))),n&&(t=t.filter((e=>e.startTime<=n))),this.cameras.length&&(t=t.filter((e=>this.cameras.includes(e.cameraId)))),this.eventTypes.length){const e=this.eventTypes.map((e=>Ce[e]));t=t.filter((t=>e.includes(t.type)))}return this.detectedObjects.length&&(t=t.filter((e=>e.detectedObjects.some((e=>{const{probabilityThreshold:t}=this;return!(null!==t&&e.Probability<t)&&(this.colors.size?this.detectedObjects.includes(e.Type)&&"Colors"in e&&e.Colors?.some((e=>this.colors.has(e.Color))):this.detectedObjects.includes(e.Type))}))))),!this.detectedObjects.length&&this.colors.size&&(t=t.filter((e=>e.detectedObjects.some((e=>{const{probabilityThreshold:t}=this;return!(null!==t&&e.Probability<t)&&("Colors"in e&&e.Colors?.some((e=>this.colors.has(e.Color))))}))))),t}get filterJson(){const{probabilityThreshold:e}=this;if(null===e)return null;const t={And:[]};return this.detectedObjects.length&&t.And.push({Or:this.detectedObjects.map((e=>({Type:e})))}),this.colors.size&&t.And.push({Or:[...this.colors].map((e=>({ObjectColors:[e]})))}),t.And.push({Or:[{Probability:e}]}),JSON.stringify(t)}regionToWktPolygon(e){return e.length?"POLYGON (("+e.concat(e[0]).map((({x:e,y:t})=>`${e} ${t}`)).join(", ")+"))":"POLYGON (())"}}class Xn extends br{cameraFilters=[];objectFilters=[];eventTypeFilters=[];date=null;setDate=e=>{this.date=e};clearDate=()=>{this.date=null,this.applyFilters()};resetDate=()=>{this.loaderFilters.from||this.loaderFilters.to||(this.date=null,this.sortDirection="DESC"),this.loaderFilters.from&&(this.date=this.loaderFilters.from,this.sortDirection="ASC"),this.loaderFilters.to&&(this.date=this.loaderFilters.to,this.sortDirection="DESC")};sortDirection="DESC";probabilityThreshold=.5;colors=new Set;disposables=[];loader;loaderFilters;get someAnalyticsFilterSelected(){return!!this.objectFilters.length||!!this.colors.size}get filters(){return this.objectFilters.concat(this.eventTypeFilters,this.cameraFilters)}constructor(e){super(),P(this,{cameraFilters:E.ref,objectFilters:E.ref,date:E,setDate:H,clearDate:H,resetDate:H,sortDirection:E,probabilityThreshold:E,setProbabilityThreshold:H,colors:E.ref,someAnalyticsFilterSelected:U,filters:U,setFilters:H,load:H,toggleColor:H,clearColors:H,applyFilters:H,toggleSorting:H});const t=new Qn;this.loaderFilters=t;const r=(e=>(t,r)=>t.cameras.GetSensorEventsPage({sensorIds:e.cameras,sensorType:"camera",sensorEventTypes:e.eventTypes,startTime:e.from??void 0,endTime:e.to??void 0,isDescending:"DESC"===e.sortDirection,rowsLimit:10,pageToken:r},e.filterJson,e.regionsWkt))(t);this.loader=new Cr(e,t,r),B((()=>{this.loader.loading=!0,this.loaderFilters.probabilityThreshold=null}))}toggleSorting=()=>{this.sortDirection="ASC"===this.sortDirection?"DESC":"ASC",null===this.date&&(this.date=ke(function(e){const t=e.getMinutes(),r=e.getSeconds(),n=e.getMilliseconds();return new Date(e.getTime()-60*t*1e3-1e3*r-n)}(new Date),1))};load(){this.loader.load()}applyFilters=()=>{this.loaderFilters.cameras=this.cameraFilters.map((e=>e.value)),this.loaderFilters.detectedObjects=this.objectFilters.map((e=>e.value)),this.loaderFilters.colors=this.colors,this.loaderFilters.probabilityThreshold=this.objectFilters.length||this.colors.size?this.probabilityThreshold:null,this.loaderFilters.eventTypes=this.eventTypeFilters.map((e=>e.value)),this.date?"ASC"===this.sortDirection?(this.loaderFilters.sortDirection="ASC",this.loaderFilters.to=null,this.loaderFilters.from=this.date):(this.loaderFilters.sortDirection="DESC",this.loaderFilters.from=null,this.loaderFilters.to=this.date??void 0):(this.loaderFilters.sortDirection="DESC",this.loaderFilters.from=null,this.loaderFilters.to=null)};setFilters(e){this.cameraFilters=e?e.filter((e=>"camera"===e.type)):[],this.eventTypeFilters=e?e.filter((e=>"eventType"===e.type)):[],this.objectFilters=e?e.filter((e=>"detectedObject"===e.type)):[]}getProbabilityThreshold=()=>this.probabilityThreshold;setProbabilityThreshold=e=>{this.probabilityThreshold=e,this.applyFilters()};toggleColor=e=>{const t=new Set(this.colors);this.colors.has(e)?t.delete(e):t.add(e),this.colors=t,this.applyFilters()};clearColors=()=>{this.colors=new Set,this.applyFilters()};afterInit(){this.loader.initWith(this.api)}dispose(){for(const e of this.disposables)e instanceof i?e.closed||e.unsubscribe():e();this.loader.dispose()}}const Jn=Dr({viewBox:"0 96 960 960",svg:m(f,{children:m("path",{d:"m513 988-57-18 14-42q3-9 4-17.6 1-8.6 1-17.2 0-17.2-3.912-32.473Q467.176 845.455 456 828q-15.938-26.26-22.969-48.63Q426 757 425 727.844q0-11.844 2.5-27.344Q430 685 434 672l13-42 57 18-14 42q-3 9-4 19t-1 19q0 19 4 32t15 30q15.97 25.948 23.485 49.974Q535 864 535 892.933q0 13.067-2.5 26.567T526 946l-13 42Zm-176 0-57-18 14-42q3-9 4-17.049t1-17.707q0-18.244-4-34.744T280 827q-15.03-21.658-23.015-46.612Q249 755.433 249 728.125 249 714 251 700t7-28l13-42 57 18-14 42q-3 9.771-4 20.086-1 10.314-1 17.914 0 21.065 5.5 36.033Q320 779 328 791q15 22 23 48.5t8 52.802Q359 905 356.5 919t-6.5 27l-13 42Zm348 0-57-18 14-42q3-9 4-17.6 1-8.6 1-17.2 0-17.2-4.5-34.7Q638 841 628 827q-15-21-23-47t-8-52.047q0-13.953 2-27.794 2-13.841 7-28.159l13-42 57 18-14 42q-4 11-4.5 19.438-.5 8.437-.5 18.562 0 18.491 4.471 32.632Q665.941 774.772 676 790q16 23 23.5 48.887 7.5 25.886 7.5 53.69 0 13.423-2.5 26.923Q702 933 698 946l-13 42ZM180 336h600v-60H180v60Zm139 120h322l18-60H301l18 60Zm0 60q-19.5 0-35.25-11.625T262 474l-25-78h-57q-24.75 0-42.375-17.625T120 336V216h720v120q0 25-17.625 42.5T780 396h-57l-30 81q-6.932 17.25-22.338 28.125Q655.257 516 636 516H319ZM180 336v-60 60Z"})})});Jn.displayName="DetectorSmokeIcon";var Kn=Jn;const ei=({data:e})=>{const t=16;return"eventType"===e.type&&e.value===Ce.Loitering?m(en,{size:16}):"camera"===e.type?m(Fr,{size:t}):"Luggage"===e.value?m(rn,{size:t}):"Car"===e.value?m(Ur,{size:t}):"Person"===e.value?m(jr,{size:t}):"Bicycle"===e.value?m(Ir,{size:t}):"Boat"===e.value?m(Lr,{size:t}):"Animal"===e.value?m(on,{size:t}):"LicensePlate"===e.value?m(Jr,{size:t}):"Smoke"===e.value?m(Kn,{size:t}):"Fire"===e.value?m(Zr,{size:t}):m(Qr,{size:t})},ti=(e,t,r,n)=>g(Hn,{style:{color:"detectedObject"===t.type?t.color:"black",display:"camera"===t.type?"flex":"inline-flex",gap:4},...n,active:r,children:["camera"!==t.type?m(ei,{data:t}):null,t.label]},e),ri=(e,t,r)=>g(Bn,{style:{"--color":"color"in t&&t.color?t.color:void 0,color:"color"in t&&t.color?"white":void 0,"--background-color":"color"in t&&t.color?"rgba(255, 255, 255, 0.7)":void 0},...r,children:[m(ei,{data:t}),t.label]},e),ni=j((({camerasOnly:e,store:t})=>{const{cameras:r,eventSchema:n}=L(ye),i=(()=>{if(!n)return[];if(e)return r.data.map((e=>({type:"camera",value:e.id,label:e.name})));const t=[{value:Ce.Loitering,label:ve.t("eventTypes.Loitering").toLowerCase(),type:"eventType"}];return[].concat(n.foundObjectTypesForSelect.map((e=>({...e,label:ve.t(`analytics.${e.label}`)}))),t,r.data.map((e=>({type:"camera",value:e.id,label:e.name}))))})();return m(jn,{onChange:(e,r)=>{t.setFilters(e),r.open||"remove"!==r.action&&"clear"!==r.action||t.applyFilters()},onMenuClose:()=>{t.applyFilters()},options:i,renderOption:ti,values:t.filters,renderValue:ri,keyExtractor:e=>`${e.type}:${e.value}`,placeholder:g(f,{children:[m(Yr,{size:16})," ",ve.t("filter")]})})}));ni.displayName="EventGridSelect";const ii=j((({store:e})=>{const{date:t,setDate:r,clearDate:n,resetDate:i,sortDirection:o,toggleSorting:a,applyFilters:l}=e,{account:s}=L(ye),{utc:c,hour12:d,startOfWeek:h}=s.preferences,[u,p]=C(!1),f=M((()=>((e,t,r,n=!0)=>{const i={...wn,second:n?"numeric":void 0,hour12:r||void 0,hourCycle:r?void 0:"h23",timeZone:t?"UTC":void 0,timeZoneName:t?"short":void 0};return new Intl.DateTimeFormat(e,i)})(ve.language,c,d)),[ve.language,c,d]),v=g("div",{style:{flex:1,display:"flex",position:"relative"},children:[g(Tr,{className:"date-button",style:{flex:1,borderRadius:0,textTransform:"uppercase",flexDirection:"row"},onClick:()=>p(!u),children:[g("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"flex-start"},children:[t?m("label",{children:"ASC"===o?ve.t("eventSearchFilter.after"):ve.t("eventSearchFilter.before")}):null,m("span",{children:t?f.format(t):ve.t("eventSearchFilter.recentEvents")})]}),m(Pr,{})]}),t?m(Tr,{className:"x-3deye-button--icon",style:{position:"absolute",right:32},onClick:n,children:m(Ar,{size:16})}):null]});return w((()=>{u||i()}),[u,i]),m("div",{className:"event-grid-datepicker",children:m("div",{style:{position:"relative"},children:m(Ln,{target:v,opened:u,onOpenChange:p,withArrow:!0,className:"popover-datetimepicker",children:g("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[g(On,{value:o,onChange:a,children:[m(En,{value:"DESC",children:ve.t("eventSearchFilter.before")}),m(En,{value:"ASC",children:ve.t("eventSearchFilter.after")})]}),g("div",{style:{display:"flex",gap:"0.5rem"},children:[m(gn,{date:t,onChange:r,utc:c,startOfWeek:h}),m(xn,{date:t,onChange:r,utc:c,hour12:d})]}),m(Tr,{onClick:()=>{l(),p(!1)},variant:"filled",fullWidth:!0,children:ve.t("button.ok")})]})})})})}));ii.displayName="EventGridDatepicker";const oi=j((({data:e,children:t,onClick:r,onAuxClick:n,menuComponent:i})=>{const o=x(null),{ref:a,menuContext:l}=function(){const[e,t]=C(!1),[r,n]=C(),i=N((e=>{n(e||void 0)}),[]),[o]=C((()=>new Set)),[a]=C((()=>new Set)),l=M((()=>({subscribe:e=>(o.add(e),()=>o.delete(e)),onOpenChange:e=>(a.add(e),()=>a.delete(e)),setOpened:e=>{t(e);for(const t of a)t(e)}})),[]);return w((()=>{if(r)return r.addEventListener("contextmenu",e),()=>{r.removeEventListener("contextmenu",e)};function e(e){e.preventDefault();for(const t of o)t(e)}}),[r]),{ref:i,menuContext:l,opened:e}}();return g("div",{ref:de(o,a),onDragStart:t=>{if(!t.dataTransfer)return;t.dataTransfer.setData("x-3deye/event",`${e.id}`),t.dataTransfer.setData("x-3deye/camera",`${e.cameraId}`),t.dataTransfer.setData("x-3deye/starttime",e.startTime.toISOString()),t.dataTransfer.dropEffect="move";const r=o.current?.querySelector("img");if(r){const{x:e,y:n}=r.getBoundingClientRect();t.dataTransfer.setDragImage(r,t.clientX-e,t.clientY-n)}},className:"event-list-item",onClick:()=>r?.(e),onAuxClick:t=>n?.(t,e),draggable:!0,children:[t,i&&m(i,{ctx:l,data:e})]})}));oi.displayName="EventListItem";const ai=j((({data:e})=>{if("Temperature"!==e.type)return null;const t=JSON.parse(e.raw.data??"null"),r=Number.isInteger(t)?Number(t):t.t;return g("div",{className:"event-list-item__temperature",children:[m(ln,{}),g("span",{children:[(r-273.15).toFixed(1),"°C"]})," / ",g("span",{children:[(9*r/5-459.67).toFixed(1)," °F"]})]})}));ai.displayName="Temperature";var li=ai;const si=j((({data:e,cameraNameHidden:t})=>{const r=L(ye),{cameras:n}=r,i=n.loaded&&n.camerasById.get(e.cameraId)?.name||"...";return g("div",{className:"event-list-item-caption",children:[m("div",{className:"event-list-item__time",children:m(Gn,{from:e.startTime,to:e.endTime})}),t?null:g(f,{children:[m("div",{children:e.type}),m("div",{className:"event-list-item__camera-name",title:i,children:i})]}),+e.endTime-+e.startTime>0&&m("div",{className:"event-list-item__duration",children:fr(+e.endTime-+e.startTime,ve.t)}),m(li,{data:e})]})}));si.displayName="EventListItemCaption";var ci=j((({url:e,noPreview:t,width:r})=>g(f,{children:[e?m("img",{style:{position:"absolute",width:"100%",height:"100%",top:0,left:0},src:e},e):null,m(ce,{radius:r}),t?m("div",{className:"no-preview-overlay"}):null]})));const di=({className:e,style:t,box:{Top:r,Left:n,Right:i,Bottom:o}})=>m(f,{children:m("div",{className:e,style:{position:"absolute",top:100*r+"%",left:100*n+"%",bottom:100*(1-o)+"%",right:100*(1-i)+"%",...t}})});function hi({style:e}){return g("div",{className:"frame",style:e,children:[m("div",{className:"corner-highlight-tl"}),m("div",{className:"corner-highlight-tr"}),m("div",{className:"corner-highlight-br"}),m("div",{className:"corner-highlight-bl"})]})}di.displayName="LicensePlateLpr";const ui=b((({value:e})=>e?m(f,{children:e.split("").map(((e,t)=>(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57})(e)?m("span",{className:"digit",children:e},`d${t}${e}`):m("span",{className:"char",children:e},`${t}${e}`)))}):null));ui.displayName="LicensePlateNumber";const pi=({detectedObject:e,height:t,width:r,url:n,thumbWidth:i,thumbHeight:o})=>{const{Type:a,Box:{Top:l,Left:s,Right:c,Bottom:d},Probability:h,Value:u}=e,p=x(null);T((()=>{if(!p.current)return;const e=p.current.getBoundingClientRect();let n=(s+c)/2*r-e.width/2,i=l*t-e.height-4;i<0&&(i=d*t+4),n<0&&(n=0),n>r-e.width&&(n=r-e.width),p.current.style.top=`${i}px`,p.current.style.left=`${n}px`}));const v={top:2};s>=1-c?v.left=2:v.right=2;const y=100/i/(c-s);return g(f,{children:[g("div",{ref:p,className:"event-list-item__license-plate-label trigger",title:`${a.toLowerCase()} ${Math.floor(100*h)}%`,children:[m("div",{style:{padding:4},children:m(ui,{value:u})}),m("div",{className:"event-list-item__license-plate-label__caption",children:`${Math.floor(100*h)}%`})]}),m(di,{className:"event-list-item__license-plate-trigger trigger",box:e.Box}),g("div",{className:"event-list-item__license-plate preview",style:{overflow:"hidden",width:i*(c-s)*y,height:o*(d-l)*y+16,position:"absolute",...v},children:[m("img",{style:{width:i*y,height:o*y,transform:`translate(-${100*s}%, -${100*l}%)`},src:n}),m("div",{className:"plate-number",children:m(ui,{value:u})}),m(hi,{style:{height:o*(d-l)*y}})]})]})};function mi(e,t,r,n){return e.Top<-n&&(e.Bottom=e.Bottom-e.Top+n,e.Top=-n),e.Left<-n&&(e.Right=e.Right-e.Left+n,e.Left=-n),e.Right+n>t&&(e.Left=e.Left-(e.Right-t)+n,e.Right=t-n),e.Bottom+n>r&&(e.Top=e.Top-(e.Bottom-r)+n,e.Bottom=r-n),e}function gi({Top:e,Left:t,Bottom:r,Right:n},i,o,a,l){const s=l*e,c=l*r;return s>o?[0,-1]:c>o?[0,1]:a*t>i?[-1,0]:a*n>i?[1,0]:[0,s>c?1:-1]}function fi(e,t){return{Top:e.Top+t[1],Left:e.Left+t[0],Bottom:e.Bottom+t[1],Right:e.Right+t[0]}}pi.displayName="LicensePlateHighlight";const vi=({face:{Name:e,Box:t,Probability:r},url:n,thumbWidth:i,thumbHeight:o,width:a,height:l})=>{const{Top:s,Left:c,Right:d,Bottom:h}=t,u=100/i/(d-c),p={top:2},v=x(null);return T((()=>{if(!v.current)return;const{width:e,height:r}=v.current.getBoundingClientRect(),n=gi(t,e,r,a,l);n[0]=n[0]*(e+(d-c)*a)/2,n[1]=n[1]*(r+(h-s)*l)/2;const i=mi(fi({Top:(s+h)/2*l-r/2,Left:(c+d)/2*a-e/2,Bottom:(s+h)/2*l+r/2,Right:(c+d)/2*a+e/2},n),a,l,0);v.current.style.top=`${i.Top+2*Math.sign(n[1])}px`,v.current.style.left=`${i.Left+2*Math.sign(n[0])}px`})),c>=1-d?p.left=2:p.right=2,g(f,{children:[g("div",{ref:v,className:"event-list-item__detected-object-label trigger",title:`${e} ${Math.floor(100*r)}%`,children:[m("div",{style:{padding:4,display:"flex",alignItems:"center",maxWidth:120,whiteSpace:"break-spaces"},children:e}),g("div",{className:"event-list-item__detected-object-label__caption",style:{color:"black",backgroundColor:"orange"},children:[Math.floor(100*r),"%"]})]}),m(di,{className:"trigger",box:t,style:{outline:"1px solid orange"}}),g("div",{className:"event-list-item-face preview",style:{overflow:"hidden",width:i*(d-c)*u,height:o*(h-s)*u,...p},children:[m("img",{style:{width:i*u,height:o*u,transform:`translate(-${100*c}%, -${100*s}%)`},src:n}),m(hi,{})]})]})};function yi({Top:e,Left:t,Bottom:r,Right:n}){return[(t+n)/2,(e+r)/2]}function bi(e,t){const[r,n]=yi(e),[i,o]=yi(t);return[i-r,o-n]}function Ci(e,t){return!(e.Left>t.Right||e.Top>t.Bottom||e.Right<t.Left||e.Bottom<t.Top)}function xi([e,t]){const r=Math.sqrt(e*e+t*t);return 0===r?[0,0]:[e/r,t/r]}vi.displayName="FaceHighlight";const wi=j((({data:e,width:t,height:r})=>{const n=x(null),{eventSchema:i}=L(ye);return T((()=>{if(!n.current)return;const i=[],o=[];for(let a=0;a<e.length;a++){const l=n.current.children[2*a+1],s=e[a].Box;i.push({Top:s.Top*r,Left:s.Left*t,Bottom:s.Bottom*r,Right:s.Right*t});const[c,d]=yi(i[a]),{width:h,height:u}=l.getBoundingClientRect(),p=gi(s,h,u,t,r);o.push(fi({Top:d-u/2-4,Left:c-h/2-4,Bottom:d+u/2+4,Right:c+h/2+4},p))}let a=!0,l=0;for(;a;){if(a=!1,l++>1e3){console.warn("Reached max iterations for label positioning");break}for(let t=0;t<e.length;t++){const r=o[t],n=[0,0];for(let l=0;l<e.length;l++){const e=i[l],s=o[l];if(Ci(r,e)){const t=bi(e,r);n[0]=n[0]+t[0],n[1]=n[1]+t[1],a=!0}if(l!==t&&Ci(r,s)){const e=bi(s,r);n[0]=n[0]+e[0],n[1]=n[1]+e[1],a=!0}}[n[0],n[1]]=xi(n),r.Top+=n[1],r.Left+=n[0],r.Bottom+=n[1],r.Right+=n[0]}}for(let i=0;i<e.length;i++){const e=n.current.children[2*i+1],{Top:a,Left:l}=mi(o[i],t,r,4);e.style.top=`${a+4}px`,e.style.left=`${l+4}px`}}),[e,t,r]),m("div",{ref:n,children:e.map(((e,t)=>g(v.Fragment,{children:[m(di,{box:e.Box,style:{outline:`2px solid ${i.colorsByFoundObjectType.get(e.Type)??""}`}}),g("div",{className:"event-list-item__detected-object-label",title:`${e.Type.toLowerCase()} ${Math.floor(100*e.Probability)}%`,children:[m("div",{style:{padding:4,lineHeight:"24px"},children:"Car"===e.Type&&"BodyType"in e&&e.BodyType?e.BodyType.toLowerCase():e.Type.toLowerCase()}),g("div",{className:"event-list-item__detected-object-label__caption",style:{backgroundColor:i.colorsByFoundObjectType.get(e.Type)},children:[Math.floor(100*e.Probability),"%"]})]})]},t)))})}));wi.displayName="DetectedObjects";var Ti=wi;const Di=j((({data:e,width:t,height:r,cameraNameHidden:n,onClick:i,onAuxClick:o,menuComponent:a})=>{const l=L(ye),{eventSchema:s}=l,[c,d]=function(e){const[t,r]=C(null),n=L(ye),{cameras:i,thumbnails:o}=n;w((()=>{if(e.thumbnailUrl)return void r(null);const t=o.fetchThumbnail(e.cameraId,e.startTime,e.startTime).subscribe((e=>{r(e||null)}));return()=>t.unsubscribe()}),[e.id]);let a="",l=!1;return e.thumbnailUrl?a=e.thumbnailUrl:null===t&&i.loaded?(a=i.camerasById.get(e.cameraId)?.imageUrl||"",l=!0):t&&(a=t.url),[a,l]}(e);let h=[],u=null,p=null;if(e.detectedObjects.length){const{thumbnailWidth:n,thumbnailHeight:i}=e;h=e.detectedObjects.filter((({Type:e})=>s.foundObjectTypes.includes(e)&&"LicensePlate"!==e)),u=e.detectedObjects.filter((e=>"LicensePlate"===e.Type)).map(((e,o)=>m(pi,{detectedObject:e,width:t,height:r,thumbWidth:n,thumbHeight:i,url:c},o)))}if(e.faces){const{thumbnailWidth:n,thumbnailHeight:i}=e;p=e.faces.map(((e,o)=>m(vi,{face:e,url:c,thumbWidth:n,thumbHeight:i,width:t,height:r},o)))}return m(oi,{onClick:i,onAuxClick:o,data:e,width:t,height:r,menuComponent:a,children:g("div",{style:{position:"absolute",top:0,left:0,bottom:0,right:0},children:[m(ci,{url:c,noPreview:d,width:t}),m(Ti,{data:h,width:t,height:r}),u,p,e.acknowledged?m("div",{className:"acknowledged-overlay",children:ve.t("event.acknowledged")}):null,m(si,{data:e,cameraNameHidden:n})]})})}));Di.displayName="EventItem";const ki=j((({columnIndex:e,rowIndex:t,style:r,store:n,columnCount:i,eventRenderer:o})=>{const a=t*i+e,l=n.data[a];return a===n.data.length?n.error?m("div",{style:r,children:m("div",{style:{position:"absolute",inset:0,display:"grid",placeItems:"center"},children:g("div",{style:{textAlign:"center"},children:[m("div",{children:"Couldn't fetch more data"}),m(Tr,{onClick:n.loadMore,children:"Retry"})]})})}):n.pageInfo?.haveMore?m("div",{style:r,children:m("div",{style:{position:"absolute",inset:0,display:"grid",placeItems:"center"},children:m(Sn,{size:32})})}):m("div",{style:r}):!l&&n.pageInfo?.haveMore?m("div",{style:r}):m("div",l?{style:r,children:m(Nn,{children:o({data:l,width:r.width,height:r.height})})}:{style:r})})),Ni=j((({store:e,scrollWidth:t,onClick:r})=>e.pendingData.length?m("div",{style:{position:"absolute",top:0,left:0,right:t,pointerEvents:"none",textAlign:"center",padding:8},children:m(Tr,{className:"x-3deye-button--overlay",style:{background:"rgba(0, 0, 0, 0.75)",padding:"8px 16px",backdropFilter:"blur(2px)",borderRadius:32,pointerEvents:"auto"},onClick:r,children:ve.t("showEvents",{count:e.pendingData.length})})}):null)),Mi=j((({store:e,width:t,height:r,captionHeight:n=0,columnsCount:i=0,minColumnWidth:o,aspectRatio:a=16/9,onEventClick:l,onEventAuxClick:s,eventRenderer:c})=>{const d=x(null),h=()=>{d.current&&(e.setLiveUpdateMode("auto"),d.current.scrollTop=0)};if(w((()=>A((()=>e.loading||!e.data.length),(e=>e&&h()))),[]),e.error&&!e.data.length)return m("div",{style:{flex:1,display:"flex",justifyContent:"center",alignItems:"center"},children:g("div",{style:{textAlign:"center"},children:[m("div",{children:"Couldn't fetch data"}),m(Tr,{onClick:e.reload,children:"Retry"})]})});if(e.loading)return m("div",{style:{flex:1,display:"flex",justifyContent:"center",alignItems:"center"},children:m(Sn,{})});if(!e.data.length)return m("div",{style:{flex:1,display:"flex",justifyContent:"center",alignItems:"center"},children:ve.t("noEventsFound")});return m(Ii,{...{store:e,width:t,columnsCount:i,minColumnWidth:o,aspectRatio:a,captionHeight:n,height:r,onEventClick:l,onEventAuxClick:s,eventRenderer:c,containerRef:d,resetScroll:h}})}));Mi.displayName="EventGrid";const Ii=j((({store:e,width:t,height:r,captionHeight:n=0,columnsCount:i=0,minColumnWidth:o=320,aspectRatio:a,containerRef:l,onEventClick:s,onEventAuxClick:c,eventRenderer:d=({data:e,width:t,height:r})=>m(Di,{data:e.data,cameraNameHidden:!1,onClick:s,onAuxClick:c,width:t,height:r}),resetScroll:h})=>{const u=Math.floor(t/o)||1,p=t/u/a+n,f=u*Math.floor(r/p)>=e.data.length?0:gr(),v=Math.min(i,e.data.length)||Math.max(1,Math.floor((t-f)/o));let y=Math.ceil(e.data.length/v);const b=(t-f-2*(v-1))/v,C=b/a+n;e.pageInfo?.haveMore&&y*v===e.data.length&&y++;const{parentRef:x,getItems:T,getTotalSize:D}=qn({count:y,overscan:5,itemSize:C,spacing:2}),{parentRef:k,getItems:N,getTotalSize:M}=qn({count:v,overscan:5,itemSize:b,horizontal:!0,spacing:2}),I=T(),_=N();w((()=>{e.error||e.pageInfo?.haveMore&&(e.loading||I.length&&I.at(-1).idx+1===y&&e.loadMore())}),[e.error,e.pageInfo?.haveMore,I]);const L=I.flatMap((({idx:t,size:r,start:n})=>_.map((({idx:i,size:o,start:a})=>{const l=t*v+i;return l>e.data.length?null:l!==e.data.length||e.pageInfo?.haveMore?m(ki,{columnIndex:i,rowIndex:t,columnCount:v,style:{position:"absolute",top:0,left:0,height:r,width:o,transform:`translate(${a}px, ${n}px)`,display:"flex"},store:e,eventRenderer:d},e.data[l]?`${e.data[l].data.id}-${e.data[l].objectIdx}`:"loading"):null}))));return g("div",{style:{width:"100%",height:"100%",overflow:"hidden",position:"relative"},children:[m("div",{ref:de(l,x,k),style:{width:t,height:r,overflow:"auto"},onScroll:t=>{const{scrollTop:r}=t.target;"disabled"!==e.liveUpdateMode&&e.setLiveUpdateMode(r>=1||e.pendingData.length?"manual":"auto")},children:m("div",{style:{position:"relative",height:D(),width:M()},children:L})}),m(Ni,{store:e,scrollWidth:f,onClick:()=>{e.flushUpdates(),h()}})]})})),_i=({onEventClick:e,style:t,...r})=>{const n=L(S)??F,[i,o]=C(),{ref:a,width:l,height:s}=(e=>{const{ref:t,width:r,height:n}=z(),[i,o]=C(0);return w((()=>{o((e=>e+1))}),e),{ref:t,width:r,height:n,fix:i}})([i]);return w((()=>(i?.dispose(),R((()=>n.initialized),(()=>{const e=new Xn(n.events);e.initWith(n.api),e.load(),o(e)})))),[n]),m(ye.Provider,{value:n,children:i?g("div",{style:{display:"flex",flexDirection:"column",textAlign:"left",...t},...r,children:[m("div",{style:{padding:10},children:m(ni,{store:i})}),m(ii,{store:i}),i.someAnalyticsFilterSelected&&g(f,{children:[m(Zn,{getter:i.getProbabilityThreshold,setter:i.setProbabilityThreshold}),m(cn,{value:i.colors,toggle:i.toggleColor,clear:i.clearColors})]}),m("div",{ref:a,style:{flex:1,display:"flex"},children:m(Mi,{minColumnWidth:Number.POSITIVE_INFINITY,store:i.loader,width:l,height:s,eventRenderer:({data:t,width:r,height:n})=>m(Di,{data:t.data,cameraNameHidden:!1,onClick:e,width:r,height:n})})})]}):null})};_i.displayName="EventList";var Li=_i;(e=>{if(e&&Object.assign(fe,e),ve.isInitialized){if(fe.resources)for(const e of Object.keys(fe.resources))ve.addResourceBundle(e,"translation",fe.resources[e].translation,!0);else console.warn("i18n is already initialized");return t(ve.t)}r(ve.init(fe))})({resources:{en:{translation:ge}}});export{Xn as AllEventsStore,Li as default};
|
|
1
|
+
import e from"i18next";import{of as t,from as r,Subscription as i,Observable as n,mergeMap as o,throwError as a,catchError as s,startWith as l,switchMap as c,map as d,exhaustMap as h,EMPTY as u,fromEvent as p,Subject as m}from"rxjs";import{jsx as g,jsxs as f,Fragment as v}from"react/jsx-runtime";import y,{forwardRef as C,memo as b,useState as T,useRef as w,useEffect as x,useLayoutEffect as L,createContext as k,Component as D,useCallback as M,useMemo as I,cloneElement as N,Children as S,useContext as F}from"react";import{AppContext as _,app as z}from"@3deye-toolkit/core";import{useElementSize as U}from"@mantine/hooks";import{makeObservable as H,computed as O,observable as P,action as E,observe as V,runInAction as B,reaction as j,when as R}from"mobx";import{observer as A,useLocalObservable as $}from"mobx-react-lite";import W from"clsx";import{useMergeRefs as Z,useListItem as Y,useFloatingTree as q,useFloating as G,offset as Q,flip as K,shift as J,arrow as X,autoUpdate as ee,useInteractions as te,useClientPoint as re,useRole as ie,useDismiss as ne,useId as oe,FloatingPortal as ae,FloatingFocusManager as se,size as le,useListNavigation as ce,useHover as de}from"@floating-ui/react";import he from"react-ink";import ue from"@seznam/compose-react-refs";import{differenceInCalendarDays as pe,max as me,min as ge}from"date-fns";import fe from"memoize-one";import{map as ve,share as ye,debounceTime as Ce,startWith as be,switchMap as Te,bufferCount as we,mergeMap as xe,sequenceEqual as Le,filter as ke}from"rxjs/operators";var De={showEvents_one:"show {{count}} new event",showEvents_other:"show {{count}} new events",noEventsFound:"no events found",eventSearchFilter:{after:"After",before:"Before",recentEvents:"Recent events"},button:{ok:"Ok"},filter:"Filter",event:{acknowledged:"acknowledged"},color:"color",confidence:"confidence",select:{loading:"Loading...",noOptions:"No options"},duration:{minute:"minute",hour:"hour",day:"day",ss:"{{seconds}}s",mm:"{{minutes}}m",hh:"{{hours}}h",mmss:"{{minutes}}m {{seconds}}s",hhmm:"{{hours}}h {{minutes}}m",hhmmss:"{{hours}}h {{minutes}}m {{seconds}}s"},analytics:{Car:"car",Person:"person",Animal:"animal",Bicycle:"bicycle",Luggage:"luggage",Boat:"boat",HardHat:"hardhat",NoHardHat:"no hardhat",LicensePlate:"license plate",Smoke:"smoke",Fire:"fire",Vest:"vest",NoVest:"no vest",Gun:"gun",car:"car",person:"person",animal:"animal",bicycle:"bicycle",luggage:"luggage",boat:"boat",hardhat:"hardhat",nohardhat:"no hardhat",licenseplate:"license plate",smoke:"smoke",fire:"fire",vest:"vest",novest:"no vest",gun:"gun"},eventTypes:{Normal:"Normal",Suspicious:"Suspicious",Misidentification:"Misidentification",Loitering:"Loitering",Vandalism:"Vandalism",Trespass:"Trespass",Emergency:"Emergency",LifeInDanger:"Life in Danger",ErroneousAlert:"Erroneous Alert",Fire:"Fire",MedicalDuress:"Medical Duress",HoldUp:"Hold Up",CheckIn:"Check In",CheckOut:"Check Out",ClockIn:"Clock In",ClockOut:"Clock Out",ParkingStart:"Parking Start",ParkingEnd:"Parking End",ParkingViolation:"Parking Violation",GateAccess:"Gate Access",DoorAccess:"Door Access",TemperatureCheck:"Temperature Check",IDCheck:"ID Check",PPECheck:"PPE Check",WelfareCheck:"Welfare Check",VehicleBreakIn:"Vehicle Break-In",DrugTrafficking:"Drug Trafficking",Assault:"Assault",PackageDelivery:"Package Delivery",Uncategorized:"Uncategorized"}};const Me={detection:{order:["querystring","htmlTag","navigator"],lookupQuerystring:"lang"},fallbackLng:"en",load:"all",interpolation:{escapeValue:!1}},Ie=e.createInstance(),Ne=y.createContext(null),Se=(e,t,r)=>r?e.getUTCFullYear()===t.getUTCFullYear()&&e.getUTCMonth()===t.getUTCMonth()&&e.getUTCDate()===t.getUTCDate():e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate(),Fe=(e,t,r)=>r?e.getUTCFullYear()===t.getUTCFullYear():e.getFullYear()===t.getFullYear();function _e(e,t){return new Date(e.getTime()-60*t*60*1e3)}const ze=new Set(["LicensePlate","FaceDetection","Analytic","SpeedDetection","Temperature","PoS","GPS","DigitalInput","Loitering"]);class Ue{id;cameraId;type;raw;thumbnailUrl;thumbnailWidth=0;thumbnailHeight=0;detectedObjects;faces;instant;get startTime(){return new Date(this.raw.startTime)}get endTime(){return new Date(this.raw.endTime)}get isLive(){return!ze.has(this.type)&&+this.startTime==+this.endTime}get acknowledged(){return"sensorId"in this.raw&&!!this.raw.ackEventType}update=e=>{const t=e.startTime??this.raw.startTime,r=e.endTime??this.raw.endTime,i=e.ackEventType??this.raw.ackEventType;this.raw={...this.raw,...e,startTime:t,endTime:r,ackEventType:i}};constructor(e){if(H(this,{startTime:O,endTime:O,acknowledged:O,isLive:O,raw:P.ref,update:E}),this.raw=e,this.id=e.id,this.type=e.eventType,this.cameraId=e.sensorId,("Analytic"===this.type||"FaceDetection"===this.type||"Loitering"===this.type)&&e.data)try{const t=JSON.parse(e.data);t.FoundObjects&&(this.detectedObjects=t.FoundObjects),t.Faces&&(this.type="FaceDetection",this.faces=t.Faces),t.ThumbnailSize&&(this.thumbnailWidth=t.ThumbnailSize.Width,this.thumbnailHeight=t.ThumbnailSize.Height),this.thumbnailUrl=t.ThumbnailUrl}catch{console.warn("invalid data",e.data),this.type="Motion"}this.instant=ze.has(this.type),this.detectedObjects||(this.detectedObjects=[])}static fromWebhookEvent=e=>{const t="LicensePlateRecognition"===e.type?"LicensePlate":e.type,r="timestampUtc"in e.data?e.data.timestampUtc:e.data.startTimeUtc,i="timestampUtc"in e.data?e.data.timestampUtc:e.data.endTimeUtc,n={message:"",data:null,id:e.id,customerId:0,sensorId:e.deviceId,sensorType:"CameraSensor",eventType:t,ackEventType:e.ackType??"",startTime:r,endTime:i,userId:""},o=new Ue(n);return o.thumbnailUrl=e.data.thumbnailUrl,o.detectedObjects="objectsFound"in e.data?e.data.objectsFound.map((e=>({Type:e.type,Box:{Left:e.box.left,Top:e.box.top,Right:e.box.right,Bottom:e.box.bottom},Probability:e.probability}))):[],o.raw.data=JSON.stringify({ThumbnailUrl:e.data.thumbnailUrl,FoundObjects:o.detectedObjects}),o};toWebhookEvent=()=>{const e=this.raw.ackEventType?{timestampUtc:(new Date).toISOString(),message:this.raw.message,userId:this.raw.userId}:void 0;return"Analytic"===this.type?{id:this.id,deviceId:this.cameraId,type:this.type,ackType:this.raw.ackEventType,data:{objectsFound:this.detectedObjects.map((({Type:e,Box:t,Probability:r})=>({type:e,box:{left:t.Left,top:t.Top,right:t.Right,bottom:t.Bottom},probability:r}))),thumbnailUrl:this.thumbnailUrl,timestampUtc:this.startTime.toISOString()},ackData:e}:"LicensePlate"===this.type?{id:this.id,deviceId:this.cameraId,type:"LicensePlateRecognition",ackType:this.raw.ackEventType,data:{platesFound:this.detectedObjects.filter((e=>"LicensePlate"===e.Type)).map((({Value:e,Box:t,Probability:r})=>({plateNumber:e,box:{left:t.Left,top:t.Top,right:t.Right,bottom:t.Bottom},probability:r}))),thumbnailUrl:this.thumbnailUrl,timestampUtc:this.startTime.toISOString()},ackData:e}:this.instant?{id:this.id,deviceId:this.cameraId,type:this.type,ackType:this.raw.ackEventType,data:{thumbnailUrl:this.thumbnailUrl,timestampUtc:this.startTime.toISOString()},ackData:e}:{id:this.id,deviceId:this.cameraId,type:this.type,ackType:this.raw.ackEventType,data:{thumbnailUrl:this.thumbnailUrl,startTimeUtc:this.startTime.toISOString(),endTimeUtc:this.endTime.toISOString()},ackData:e}}}const He=(e,{locale:t,utc:r=!1,hour12:i=!1,seconds:n,year:o=!1,dayOfWeek:a=!1,day:s=!1})=>{const l={hour:"numeric",minute:"numeric",hour12:i||void 0,hourCycle:i?void 0:"h23"};return r&&(l.timeZone="UTC"),n&&(l.second="numeric"),o&&(l.year="numeric"),a&&(l.weekday="short"),s&&(l.day="numeric",l.month="short"),new Intl.DateTimeFormat(t,l).format(e)},Oe=(e,t)=>t?e.getUTCSeconds():e.getSeconds();function Pe(e,t,{locale:r,utc:i=!1,hour12:n=!1}={}){let o="",a="";const s=Boolean(Oe(e,i)||Oe(t,i)),l={from:!1,to:!1},c={from:!1,to:!1},d={from:!1,to:!1};return Fe(e,new Date,i)?Se(e,new Date,i)||(Se(e,t,i)?(d.from=!0,c.from=!0):(d.from=!0,c.from=!0,d.to=!0,c.to=!0)):(l.from=!0,d.from=!0,d.to=!0,l.to=!Fe(e,t,i)),o=He(e,{locale:r,utc:i,hour12:n,seconds:s,year:l.from,dayOfWeek:c.from,day:d.from}),+e==+t?o:(a=He(t,{locale:r,utc:i,hour12:n,seconds:s,year:l.to,dayOfWeek:c.to,day:d.to}),`${o} - ${a}`)}var Ee="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function Ve(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Be="object"==typeof Ee&&Ee&&Ee.Object===Object&&Ee,je="object"==typeof self&&self&&self.Object===Object&&self,Re=Be||je||Function("return this")(),Ae=Re.Symbol,$e=Ae,We=Object.prototype,Ze=We.hasOwnProperty,Ye=We.toString,qe=$e?$e.toStringTag:void 0;var Ge=function(e){var t=Ze.call(e,qe),r=e[qe];try{e[qe]=void 0;var i=!0}catch(e){}var n=Ye.call(e);return i&&(t?e[qe]=r:delete e[qe]),n},Qe=Object.prototype.toString;var Ke=Ge,Je=function(e){return Qe.call(e)},Xe=Ae?Ae.toStringTag:void 0;var et=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},tt=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Xe&&Xe in Object(e)?Ke(e):Je(e)},rt=et;var it,nt=function(e){if(!rt(e))return!1;var t=tt(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t},ot=Re["__core-js_shared__"],at=(it=/[^.]+$/.exec(ot&&ot.keys&&ot.keys.IE_PROTO||""))?"Symbol(src)_1."+it:"";var st=function(e){return!!at&&at in e},lt=Function.prototype.toString;var ct=nt,dt=st,ht=et,ut=function(e){if(null!=e){try{return lt.call(e)}catch(e){}try{return e+""}catch(e){}}return""},pt=/^\[object .+?Constructor\]$/,mt=Function.prototype,gt=Object.prototype,ft=mt.toString,vt=gt.hasOwnProperty,yt=RegExp("^"+ft.call(vt).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");var Ct=function(e){return!(!ht(e)||dt(e))&&(ct(e)?yt:pt).test(ut(e))},bt=function(e,t){return null==e?void 0:e[t]};var Tt=function(e,t){var r=bt(e,t);return Ct(r)?r:void 0},wt=Tt(Object,"create"),xt=wt;var Lt=function(){this.__data__=xt?xt(null):{},this.size=0};var kt=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Dt=wt,Mt=Object.prototype.hasOwnProperty;var It=function(e){var t=this.__data__;if(Dt){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return Mt.call(t,e)?t[e]:void 0},Nt=wt,St=Object.prototype.hasOwnProperty;var Ft=function(e){var t=this.__data__;return Nt?void 0!==t[e]:St.call(t,e)},_t=wt;var zt=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=_t&&void 0===t?"__lodash_hash_undefined__":t,this},Ut=Lt,Ht=kt,Ot=It,Pt=Ft,Et=zt;function Vt(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var i=e[t];this.set(i[0],i[1])}}Vt.prototype.clear=Ut,Vt.prototype.delete=Ht,Vt.prototype.get=Ot,Vt.prototype.has=Pt,Vt.prototype.set=Et;var Bt=Vt;var jt=function(){this.__data__=[],this.size=0};var Rt=function(e,t){return e===t||e!=e&&t!=t};var At=function(e,t){for(var r=e.length;r--;)if(Rt(e[r][0],t))return r;return-1},$t=At,Wt=Array.prototype.splice;var Zt=function(e){var t=this.__data__,r=$t(t,e);return!(r<0)&&(r==t.length-1?t.pop():Wt.call(t,r,1),--this.size,!0)},Yt=At;var qt=function(e){var t=this.__data__,r=Yt(t,e);return r<0?void 0:t[r][1]},Gt=At;var Qt=At;var Kt=function(e,t){var r=this.__data__,i=Qt(r,e);return i<0?(++this.size,r.push([e,t])):r[i][1]=t,this},Jt=jt,Xt=Zt,er=qt,tr=function(e){return Gt(this.__data__,e)>-1},rr=Kt;function ir(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var i=e[t];this.set(i[0],i[1])}}ir.prototype.clear=Jt,ir.prototype.delete=Xt,ir.prototype.get=er,ir.prototype.has=tr,ir.prototype.set=rr;var nr=ir,or=Tt(Re,"Map"),ar=Bt,sr=nr,lr=or;var cr=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e};var dr=function(e,t){var r=e.__data__;return cr(t)?r["string"==typeof t?"string":"hash"]:r.map},hr=dr;var ur=dr;var pr=dr;var mr=dr;var gr=function(e,t){var r=mr(this,e),i=r.size;return r.set(e,t),this.size+=r.size==i?0:1,this},fr=function(){this.size=0,this.__data__={hash:new ar,map:new(lr||sr),string:new ar}},vr=function(e){var t=hr(this,e).delete(e);return this.size-=t?1:0,t},yr=function(e){return ur(this,e).get(e)},Cr=function(e){return pr(this,e).has(e)},br=gr;function Tr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var i=e[t];this.set(i[0],i[1])}}Tr.prototype.clear=fr,Tr.prototype.delete=vr,Tr.prototype.get=yr,Tr.prototype.has=Cr,Tr.prototype.set=br;var wr=Tr;function xr(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var r=function(){var i=arguments,n=t?t.apply(this,i):i[0],o=r.cache;if(o.has(n))return o.get(n);var a=e.apply(this,i);return r.cache=o.set(n,a)||o,a};return r.cache=new(xr.Cache||wr),r}xr.Cache=wr;const Lr=Ve(xr)((()=>{const e=document.createElement("div");e.style.overflowY="scroll",e.style.position="absolute",e.style.top="-9999px",document.body.append(e);const t=e.offsetWidth;return e.remove(),t}));function kr(e,t,r=!0){if((e=Math.round(e/1e3))<60)return t("duration.ss",{seconds:e});const i=e%60;let n=(e-i)/60;if(n<60)return!i&&r?t("duration.mm",{minutes:n}):t("duration.mmss",{minutes:n,seconds:`${i}`.padStart(2,"0")});const o=Math.floor(n/60);if(n-=60*o,!i&&!n&&r)return t("duration.hh",{hours:o});const a=r?`${n}`:`${n}`.padStart(2,"0");return!i&&n&&r?t("duration.hhmm",{hours:o,minutes:a}):t("duration.hhmmss",{hours:o,minutes:a,seconds:`${i}`.padStart(2,"0")})}const Dr=(e,t,r)=>Math.min(Math.max(e,t),r),Mr=()=>{};class Ir{api;disposables=[];initWith(e){this.api=e,this.afterInit&&this.afterInit()}dispose(){for(const e of this.disposables)e instanceof i?e.closed||e.unsubscribe():e()}}var Nr;function Sr(e,t=!1){const r=O(e);return new n((e=>{const i=V(r,(({newValue:t})=>e.next(t)),t);return()=>i()}))}!function(e){e[e.Motion=0]="Motion",e[e.Tampering=1]="Tampering",e[e.PanTiltZoom=2]="PanTiltZoom",e[e.CrossLine=3]="CrossLine",e[e.Intrusion=4]="Intrusion",e[e.LicensePlate=5]="LicensePlate",e[e.FaceDetection=6]="FaceDetection",e[e.Audio=7]="Audio",e[e.Analytic=8]="Analytic",e[e.SpeedDetection=9]="SpeedDetection",e[e.PeopleCounter=10]="PeopleCounter",e[e.Temperature=11]="Temperature",e[e.PoS=12]="PoS",e[e.GPS=13]="GPS",e[e.DigitalInput=14]="DigitalInput",e[e.Normal=15]="Normal",e[e.Suspicious=16]="Suspicious",e[e.Loitering=17]="Loitering",e[e.Vandalism=18]="Vandalism",e[e.Trespass=19]="Trespass",e[e.Emergency=20]="Emergency",e[e.LifeInDanger=21]="LifeInDanger",e[e.ErroneousAlert=22]="ErroneousAlert",e[e.Misidentification=23]="Misidentification",e[e.Fire=24]="Fire",e[e.MedicalDuress=25]="MedicalDuress",e[e.HoldUp=26]="HoldUp",e[e.CheckIn=27]="CheckIn",e[e.CheckOut=28]="CheckOut",e[e.ClockIn=29]="ClockIn",e[e.ClockOut=30]="ClockOut",e[e.ParkingStart=31]="ParkingStart",e[e.ParkingEnd=32]="ParkingEnd",e[e.ParkingViolation=33]="ParkingViolation",e[e.GateAccess=34]="GateAccess",e[e.DoorAccess=35]="DoorAccess",e[e.TemperatureCheck=36]="TemperatureCheck",e[e.IDCheck=37]="IDCheck",e[e.PPECheck=38]="PPECheck",e[e.WelfareCheck=39]="WelfareCheck",e[e.VehicleBreakIn=40]="VehicleBreakIn",e[e.DrugTrafficking=41]="DrugTrafficking",e[e.Assault=42]="Assault",e[e.PackageDelivery=43]="PackageDelivery",e[e.Uncategorized=999]="Uncategorized"}(Nr||(Nr={}));class Fr extends Ir{eventsStore;filters;fetcher;transformData;data=[];pendingData=[];liveUpdateMode="auto";disposables=[];pageInfo=null;loading=!1;loadMoreTrigger=0;retryTrigger=0;error=null;loadingInitiated=!1;get isLive(){return"DESC"===this.filters.sortDirection&&!this.filters.to}get hasMore(){return this.pageInfo?.haveMore??!1}constructor(e,t,r,i=e=>[{data:e,objectIdx:-1}]){super(),this.eventsStore=e,this.filters=t,this.fetcher=r,this.transformData=i,H(this,{data:P.ref,pendingData:P.ref,liveUpdateMode:P,setLiveUpdateMode:E,flushUpdates:E,pageInfo:P.ref,hasMore:O,isLive:O,loading:P,loadMoreTrigger:P,retryTrigger:P,error:P.ref,loadMore:E})}flushUpdates=()=>{this.data=[...this.pendingData,...this.data],this.pendingData=[]};setLiveUpdateMode=e=>{this.liveUpdateMode=e};load=()=>{this.loadingInitiated||(this.loadingInitiated=!0,this.initDataLoading(),this.initLiveUpdates())};reload=()=>{this.error&&(this.retryTrigger=+!this.retryTrigger)};loadMore=()=>{this.error=null,this.loadMoreTrigger=+!this.loadMoreTrigger};queryEvents=e=>this.fetcher(this.api,e).pipe(o((r=>r.success?e===r.pageInfo.nextPageToken?(console.error("API returned the same page token for the next page. This may lead to infinite loading loop."),a((()=>new Error("API returned the same page token for the next page. This may lead to infinite loading loop.")))):t({events:r.resultItems,pageInfo:r.pageInfo}):a((()=>r.error)))),s((e=>(console.error(e),this.error=e,t({events:[],pageInfo:null})))));initDataLoading(){this.disposables.push(this.filters.updated$.pipe(l(null),c((e=>Sr((()=>this.retryTrigger),!0).pipe(d((()=>e))))),c((()=>(B((()=>{this.loading=!0,this.pageInfo=null,this.error=null,this.data=[],this.pendingData=[]})),this.queryEvents())))).subscribe((({events:e,pageInfo:t})=>{B((()=>{if(!t)return;const r=e.map(_r);this.isLive?this.data=this.uniquelyConcat(this.filters.apply(this.eventsStore.getEvents({cameraIds:this.filters.cameras,from:r[0]?.startTime??_e(new Date,1),to:null,probability:this.filters.probabilityThreshold??void 0})),r).flatMap(this.transformData):this.data=r.flatMap(this.transformData),this.eventsStore.add(r),this.pageInfo=t,this.loading=!1}))}))),this.disposables.push(this.filters.updated$.pipe(l(null),c((()=>Sr((()=>this.loadMoreTrigger)).pipe(h((()=>this.queryEvents(this.pageInfo?.nextPageToken))))))).subscribe((({events:e,pageInfo:t})=>{if(!t)return;const r=e.map(_r);this.eventsStore.add(r),B((()=>{const e=new Set(this.data.map((e=>e.data.id)));this.data=this.data.concat(r.filter((t=>!e.has(t.id))).flatMap(this.transformData)),this.pageInfo=t,this.loading=!1}))})))}initLiveUpdates(){this.disposables.push(Sr((()=>({liveUpdateMode:this.liveUpdateMode,isLive:this.isLive})),!0).pipe(c((({liveUpdateMode:e,isLive:t})=>t&&"auto"===e?Sr((()=>this.eventsStore.recentAdditions)):u))).subscribe((e=>{if(this.loading)return;if(!this.pageInfo&&this.error)return;const t=this.filters.apply(e.map((e=>this.eventsStore.eventsById.get(e))));t.length&&B((()=>{this.data=[...t.flatMap(this.transformData),...this.data]}))}))),this.disposables.push(Sr((()=>({liveUpdateMode:this.liveUpdateMode,isLive:this.isLive})),!0).pipe(c((({liveUpdateMode:e,isLive:t})=>t&&"manual"===e?Sr((()=>this.eventsStore.recentAdditions)):(this.pendingData&&B((()=>this.pendingData=[])),u)))).subscribe((e=>{if(!this.data.length)return;const t=this.filters.apply(e.map((e=>this.eventsStore.eventsById.get(e))));t.length&&B((()=>{this.pendingData=[...t.flatMap(this.transformData),...this.pendingData]}))})))}uniquelyConcat(e,t){if(!e.length)return t.concat();if(!t.length)return e.concat();const r=e=>[e.id,e];return Array.from(new Map([...e.map(r),...t.map(r)]).values())}dispose(){for(const e of this.disposables)e instanceof i?e.closed||e.unsubscribe():e()}}function _r(e){return new Ue(e)}const zr=({forwardedRef:e,children:t,className:r,fullWidth:i,variant:n,type:o,title:a,placement:s,...l})=>{const c=W(r,"x-3deye-button",{"x-3deye-button--fullwidth":i},n?`x-3deye-button--${n}`:void 0),d=f("button",{ref:e,className:c,type:o||"button",...l,children:[t,l.disabled?null:g(he,{})]});return void 0===a?d:g(vn,{label:a,placement:s,disabled:!a,children:d})};var Ur=C(((e,t)=>g(zr,{forwardedRef:t,...e})));function Hr(e){return C(((t,r)=>{const{size:i=24,color:n="currentColor",className:o,...a}=t,s=e.viewBox||"0 0 24 24",l=e.svg;return g("svg",{ref:r,preserveAspectRatio:"xMinYMin",className:W("icon",o),width:i,fill:n,viewBox:s,...a,children:l})}))}const Or=Hr({viewBox:"0 0 24 24",svg:f(v,{children:[g("path",{d:"M5.88 4.12L13.76 12l-7.88 7.88L8 22l10-10L8 2z"}),g("path",{fill:"none",d:"M0 0h24v24H0z"})]})});Or.displayName="ArrowForwardIcon";var Pr=Or;const Er=Hr({viewBox:"0 0 24 24",svg:g(v,{children:g("path",{d:"M11.74 13.36L14.14 7.71L13.06 5.5H10.5V4H14L14.73 5.5H21.75L20.75 9H16.44L17.11 10.37C17.69 10.13 18.33 10 19 10C21.76 10 24 12.24 24 15C24 17.76 21.76 20 19 20C16.24 20 14 17.76 14 15C14 13.45 14.71 12.06 15.82 11.15L15 9.5L12.25 16H9.9C9.44 18.28 7.42 20 5 20C2.24 20 0 17.76 0 15C0 12.24 2.24 10 5 10C7.59 10 9.72 11.97 10 14.5H10.58L8.3 9H7.5C7.09 9 6.75 8.66 6.75 8.25C6.75 7.84 7.09 7.5 7.5 7.5H10.25C10.66 7.5 11 7.84 11 8.25C11 8.66 10.66 9 10.25 9H9.97L11.74 13.36M5 11.5C3.07 11.5 1.5 13.07 1.5 15C1.5 16.93 3.07 18.5 5 18.5C6.59 18.5 7.93 17.45 8.36 16H4V14.5H8.47C8.22 12.8 6.76 11.5 5 11.5M19 11.5C18.57 11.5 18.15 11.58 17.77 11.72L19.7 15.68L18.35 16.34L16.5 12.55C15.88 13.18 15.5 14.05 15.5 15C15.5 16.93 17.07 18.5 19 18.5C20.93 18.5 22.5 16.93 22.5 15C22.5 13.07 20.93 11.5 19 11.5Z"})})});Er.displayName="BicycleIcon";var Vr=Er;const Br=Hr({viewBox:"0 0 24 24",svg:f(v,{children:[g("path",{d:"M0 0h24v24H0z",fill:"none"}),g("path",{d:"M20 21c-1.39 0-2.78-.47-4-1.32-2.44 1.71-5.56 1.71-8 0C6.78 20.53 5.39 21 4 21H2v2h2c1.38 0 2.74-.35 4-.99 2.52 1.29 5.48 1.29 8 0 1.26.65 2.62.99 4 .99h2v-2h-2zM3.95 19H4c1.6 0 3.02-.88 4-2 .98 1.12 2.4 2 4 2s3.02-.88 4-2c.98 1.12 2.4 2 4 2h.05l1.89-6.68c.08-.26.06-.54-.06-.78s-.34-.42-.6-.5L20 10.62V6c0-1.1-.9-2-2-2h-3V1H9v3H6c-1.1 0-2 .9-2 2v4.62l-1.29.42c-.26.08-.48.26-.6.5s-.15.52-.06.78L3.95 19zM6 6h12v3.97L12 8 6 9.97V6z"})]})});Br.displayName="BoatIcon";var jr=Br;const Rr=Hr({viewBox:"0 0 24 24",svg:f("g",{children:[g("path",{d:"M0 0h24v24H0z",fill:"none"}),g("path",{d:"M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11l-4 4z"})]})});Rr.displayName="CameraIcon";var Ar=Rr;const $r=Hr({viewBox:"0 0 24 24",svg:f(v,{children:[g("path",{d:"M0 0h24v24H0z",fill:"none"}),g("path",{d:"M18.92 6.01C18.72 5.42 18.16 5 17.5 5h-11c-.66 0-1.21.42-1.42 1.01L3 12v8c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-1h12v1c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-8l-2.08-5.99zM6.5 16c-.83 0-1.5-.67-1.5-1.5S5.67 13 6.5 13s1.5.67 1.5 1.5S7.33 16 6.5 16zm11 0c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM5 11l1.5-4.5h11L19 11H5z"})]})});$r.displayName="CarIcon";var Wr=$r;const Zr=Hr({viewBox:"0 0 24 24",svg:f("g",{children:[g("path",{d:"M7.41 7.84L12 12.42l4.59-4.58L18 9.25l-6 6-6-6z"}),g("path",{d:"M0-.75h24v24H0z",fill:"none"})]})});Zr.displayName="ChevronDownIcon";var Yr=Zr;const qr=Hr({viewBox:"0 0 24 24",svg:f("g",{children:[g("path",{d:"M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"}),g("path",{d:"M0 0h24v24H0z",fill:"none"})]})});qr.displayName="ChevronRightIcon";var Gr=qr;const Qr=Hr({viewBox:"0 0 24 24",svg:f("g",{children:[g("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"}),g("path",{d:"M0 0h24v24H0z",fill:"none"})]})});Qr.displayName="CloseIcon";var Kr=Qr;const Jr=Hr({viewBox:"0 0 24 24",svg:f("g",{children:[g("path",{d:"M0 0h24v24H0z",fill:"none"}),g("path",{d:"M13.5 5.5c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zM9.8 8.9L7 23h2.1l1.8-8 2.1 2v6h2v-7.5l-2.1-2 .6-3C14.8 12 16.8 13 19 13v-2c-1.9 0-3.5-1-4.3-2.4l-1-1.6c-.4-.6-1-1-1.7-1-.3 0-.5.1-.8.1L6 8.3V13h2V9.6l1.8-.7"})]})});Jr.displayName="DirectionsWalkIcon";var Xr=Jr;const ei=Hr({viewBox:"0 0 24 24",svg:f(v,{children:[g("path",{fill:"none",d:"M0 0h24v24H0z"}),g("path",{d:"M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"})]})});ei.displayName="DoneIcon";var ti=ei;const ri=Hr({viewBox:"0 0 24 24",svg:f(v,{children:[g("path",{d:"M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z"}),g("path",{d:"M0 0h24v24H0z",fill:"none"})]})});ri.displayName="FilterListIcon";var ii=ri;const ni=Hr({viewBox:"0 0 24 24",svg:g(v,{children:g("path",{d:"M19.48,12.35c-1.57-4.08-7.16-4.3-5.81-10.23c0.1-0.44-0.37-0.78-0.75-0.55C9.29,3.71,6.68,8,8.87,13.62 c0.18,0.46-0.36,0.89-0.75,0.59c-1.81-1.37-2-3.34-1.84-4.75c0.06-0.52-0.62-0.77-0.91-0.34C4.69,10.16,4,11.84,4,14.37 c0.38,5.6,5.11,7.32,6.81,7.54c2.43,0.31,5.06-0.14,6.95-1.87C19.84,18.11,20.6,15.03,19.48,12.35z M10.2,17.38 c1.44-0.35,2.18-1.39,2.38-2.31c0.33-1.43-0.96-2.83-0.09-5.09c0.33,1.87,3.27,3.04,3.27,5.08C15.84,17.59,13.1,19.76,10.2,17.38z"})})});ni.displayName="FireIcon";var oi=ni;const ai=Hr({viewBox:"0 0 24 24",svg:g("path",{d:"M21.1807 14.3534C21.0475 14.5736 20.8808 14.7824 20.6902 14.9766C20.1969 15.479 19.5049 15.9323 18.6736 16.3125C17.0085 17.074 14.6931 17.5862 12 17.5862C9.30687 17.5862 6.99153 17.074 5.32642 16.3125C4.49514 15.9323 3.8031 15.479 3.30981 14.9766C3.11906 14.7823 2.95173 14.5738 2.81848 14.3534C2.81512 14.4028 2.8125 14.4545 2.8125 14.5086C2.8125 14.7155 2.92187 15.0792 3.17908 15.577C3.42536 16.0537 3.77015 16.5834 4.15063 17.0981C4.53016 17.6114 4.93655 18.0977 5.30078 18.4865C5.67885 18.8901 5.97033 19.1443 6.12195 19.2373C6.25447 19.3185 6.35996 19.3918 6.43811 19.445C6.52055 19.5013 6.56693 19.531 6.61072 19.5541C6.67435 19.5878 6.77461 19.6308 7.06873 19.6665C7.70958 19.7441 8.97982 19.7586 12 19.7586C15.0205 19.7586 16.2905 19.7441 16.9313 19.6665C17.2255 19.6308 17.3257 19.5878 17.3893 19.5541C17.433 19.531 17.4794 19.5013 17.5619 19.445C17.64 19.3917 17.7455 19.3185 17.8781 19.2373C18.0297 19.1443 18.3211 18.8901 18.6992 18.4865C19.0634 18.0977 19.4698 17.6114 19.8494 17.0981C20.2298 16.5834 20.5746 16.0537 20.8209 15.577C21.0781 15.0792 21.1875 14.7155 21.1875 14.5086C21.1875 14.4545 21.184 14.4029 21.1807 14.3534ZM9.37415 11.0948C9.35904 11.4373 9.05352 11.7031 8.69141 11.6888C8.3293 11.6746 8.04827 11.3856 8.06335 11.0431L8.32825 5.01239L8.27796 5.02236C8.07501 5.06261 7.88369 5.15303 7.73267 5.29445C7.62223 5.39787 7.46217 5.55318 7.26868 5.75512C6.88092 6.15981 6.36296 6.74972 5.84509 7.48464C4.80339 8.963 3.79688 10.981 3.79688 13.2414C3.79688 13.4644 3.91581 13.7701 4.27112 14.132C4.62293 14.4903 5.16655 14.8606 5.89722 15.1948C7.35616 15.862 9.47087 16.3448 12 16.3448C14.5291 16.3448 16.6438 15.862 18.1028 15.1948C18.8334 14.8606 19.3771 14.4903 19.7289 14.132C20.0842 13.7701 20.2031 13.4644 20.2031 13.2414C20.2031 10.981 19.1966 8.96301 18.1549 7.48464C17.637 6.74972 17.1191 6.15981 16.7313 5.75512C16.5378 5.55318 16.3778 5.39787 16.2673 5.29445C16.2121 5.24276 16.2954 5.31952 16.2673 5.29445C16.1179 5.16093 15.9385 5.06533 15.7419 5.02643L15.6709 5.01239L15.9366 11.0431V11.107C15.9167 11.4209 15.648 11.6755 15.3086 11.6888C14.969 11.7022 14.6791 11.4694 14.6318 11.1579L14.6259 11.0948L14.3234 4.24138H9.67664L9.37415 11.0948ZM22.5 14.5086C22.5 15.0131 22.2745 15.5908 22.0001 16.1218C21.7149 16.6739 21.3308 17.2606 20.9252 17.8093C20.5186 18.3593 20.0815 18.8835 19.6819 19.3101C19.2964 19.7215 18.9038 20.0881 18.5907 20.2799C18.4914 20.3408 18.4147 20.3937 18.3292 20.452C18.2478 20.5076 18.1474 20.5754 18.031 20.6371C17.7743 20.7731 17.497 20.8498 17.0979 20.8982C16.351 20.9886 14.9684 21 12 21C9.0319 21 7.64905 20.9886 6.9021 20.8982C6.50304 20.8498 6.2257 20.7731 5.96899 20.6371C5.8526 20.5755 5.75222 20.5076 5.67078 20.452C5.58525 20.3937 5.50864 20.3408 5.4093 20.2799C5.09618 20.0881 4.70357 19.7215 4.31812 19.3101C3.91854 18.8835 3.48142 18.3593 3.07483 17.8093C2.6692 17.2606 2.28514 16.6739 1.99988 16.1218C1.72553 15.5908 1.5 15.0131 1.5 14.5086C1.50005 13.6459 1.80792 13.0539 2.16138 12.6724C2.28817 12.5356 2.41617 12.4304 2.52966 12.3516C2.75156 10.1255 3.76602 8.19681 4.75305 6.79607C5.31418 5.99974 5.87475 5.36181 6.29626 4.92188C6.5073 4.70163 6.68422 4.52952 6.80981 4.41191C6.87238 4.35332 6.96356 4.27113 6.99866 4.23976C6.98878 4.2484 7.01621 4.22408 6.99866 4.23976C7.18236 4.05496 7.42469 3.92349 7.68823 3.87123L8.48975 3.71202C8.55758 3.57608 8.65151 3.45185 8.76831 3.34591C9.01245 3.12447 9.33752 3.00034 9.67578 3H14.3242L14.4498 3.00566C14.7423 3.03236 15.0187 3.15114 15.2325 3.3451C15.3491 3.45081 15.4416 3.57562 15.5094 3.71121L16.3118 3.87123L16.4177 3.89709C16.6391 3.9596 17.0013 4.23976 16.9971 4.23653C16.9928 4.2333 17.0013 4.23976 16.9971 4.23653C17.1227 4.35414 17.4927 4.70162 17.7037 4.92188C18.1252 5.36181 18.6867 5.99973 19.2478 6.79607C20.2347 8.19677 21.2476 10.1257 21.4695 12.3516C21.5831 12.4305 21.7116 12.5354 21.8386 12.6724C22.1921 13.0539 22.5 13.6459 22.5 14.5086Z"})});ai.displayName="HardhatIcon";var si=ai;const li=Hr({viewBox:"0 0 24 24",svg:f(v,{children:[g("path",{d:"M5.22461 8.44917C4.43752 9.79234 3.79692 11.4394 3.79688 13.2412C3.79688 13.4642 3.91617 13.7699 4.27148 14.1318C4.6233 14.4901 5.16686 14.8601 5.89746 15.1943C7.3564 15.8615 9.4709 16.3447 12 16.3447C12.3719 16.3447 12.7347 16.3324 13.0879 16.3124L14.2373 17.4619C13.5275 17.5414 12.7797 17.5859 12 17.5859C9.30687 17.5859 6.99129 17.0739 5.32617 16.3124C4.49498 15.9323 3.80281 15.4789 3.30957 14.9765C3.11887 14.7823 2.95158 14.5737 2.81836 14.3535C2.815 14.4028 2.8125 14.4546 2.8125 14.5087C2.81256 14.7156 2.92159 15.0795 3.17871 15.5771C3.42494 16.0536 3.77002 16.583 4.15039 17.0976C4.52988 17.6109 4.93658 18.0975 5.30078 18.4863C5.67885 18.8899 5.97045 19.1442 6.12207 19.2373C6.25456 19.3184 6.36034 19.392 6.43848 19.4453C6.52039 19.5011 6.56677 19.5305 6.61035 19.5537C6.67395 19.5873 6.77457 19.6303 7.06836 19.666C7.70922 19.7436 8.97982 19.7587 12 19.7587C14.434 19.7587 15.7312 19.7473 16.4785 19.7031L17.584 20.8085C17.4413 20.8462 17.2826 20.876 17.0977 20.8984C16.3507 20.9888 14.968 20.9999 12 20.9999C9.03226 20.9999 7.64935 20.9888 6.90234 20.8984C6.50328 20.85 6.22545 20.7727 5.96875 20.6367C5.85257 20.5751 5.75224 20.5076 5.6709 20.4521C5.58539 20.3938 5.50848 20.3411 5.40918 20.2802C5.09615 20.0885 4.7037 19.7218 4.31836 19.3105C3.91887 18.884 3.48171 18.3594 3.0752 17.8095C2.66963 17.2609 2.28525 16.674 2 16.122C1.72568 15.5911 1.50005 15.0131 1.5 14.5087C1.50005 13.6463 1.80782 13.0543 2.16113 12.6728C2.28783 12.5361 2.41586 12.4303 2.5293 12.3515C2.71578 10.4807 3.46194 8.81968 4.28125 7.50581L5.22461 8.44917Z"}),g("path",{d:"M14.4502 3.00581C14.7424 3.03256 15.0187 3.15093 15.2324 3.34467C15.3489 3.45037 15.442 3.57533 15.5098 3.71089L16.3115 3.87104L16.418 3.89741C16.6356 3.95903 16.9892 4.23014 16.9971 4.23628C17.1227 4.35389 17.4931 4.70157 17.7041 4.92182C18.1256 5.36176 18.687 5.99962 19.248 6.79585C20.235 8.19655 21.2478 10.1257 21.4697 12.3515C21.5833 12.4304 21.7119 12.5358 21.8389 12.6728C22.1922 13.0543 22.5 13.6463 22.5 14.5087C22.5 15.0131 22.2743 15.5911 22 16.122C21.7148 16.674 21.3304 17.2609 20.9248 17.8095C20.726 18.0785 20.519 18.3406 20.3135 18.5888L19.3994 17.6748C19.55 17.4886 19.7031 17.2958 19.8496 17.0976C20.23 16.583 20.5751 16.0536 20.8213 15.5771C21.0784 15.0795 21.1874 14.7156 21.1875 14.5087C21.1875 14.4546 21.184 14.4029 21.1807 14.3535C21.0475 14.5736 20.881 14.7824 20.6904 14.9765C20.1972 15.4789 19.505 15.9323 18.6738 16.3124C18.5299 16.3783 18.38 16.44 18.2266 16.5019L17.2568 15.5322C17.5587 15.4262 17.8413 15.3138 18.1025 15.1943C18.8331 14.8601 19.3767 14.4901 19.7285 14.1318C20.0838 13.7699 20.2031 13.4642 20.2031 13.2412C20.2031 10.9808 19.1969 8.96266 18.1553 7.48432C17.6374 6.7494 17.1192 6.15952 16.7314 5.75483C16.5382 5.55314 16.378 5.39828 16.2676 5.29487C16.1182 5.16141 15.9387 5.06525 15.7422 5.02632L15.6709 5.01264L15.9365 11.0429V11.1074C15.9163 11.4211 15.6478 11.675 15.3086 11.6884C14.9692 11.7018 14.6793 11.4695 14.6318 11.1582L14.626 11.0947L14.3232 4.24116H9.67676L9.51953 7.79487L8.26074 6.53608L8.32812 5.01264L8.27832 5.02241C8.07537 5.06266 7.88345 5.15345 7.73242 5.29487C7.64244 5.37914 7.52003 5.4982 7.37305 5.64839L6.46875 4.74409C6.60418 4.60719 6.72003 4.49591 6.80957 4.41206C6.87212 4.35349 6.9639 4.27157 6.99902 4.24018C7.18273 4.05538 7.42493 3.92331 7.68848 3.87104L8.49023 3.71186C8.55806 3.57604 8.65183 3.45152 8.76855 3.34565C9.01267 3.12435 9.33763 3.00029 9.67578 2.99995H14.3242L14.4502 3.00581Z"}),g("path",{d:"M1.8125 2.68692C2.0871 2.41232 2.52183 2.39485 2.81641 2.63516L2.87305 2.68692L20.873 20.6869L20.9248 20.7436C21.1651 21.0381 21.1476 21.4729 20.873 21.7475C20.5984 22.0221 20.1637 22.0395 19.8691 21.7992L19.8125 21.7475L1.8125 3.74747L1.76074 3.69083C1.52043 3.39625 1.5379 2.96153 1.8125 2.68692Z"})]})});li.displayName="HardhatCrossedOutIcon";var ci=li;const di=Hr({viewBox:"0 0 24 24",svg:f("g",{children:[g("path",{d:"M0 0h24v24H0z",fill:"none"}),g("path",{d:"M10.13 3.245a1.994 1.994 0 0 0-1.542.992l-5.491 9.53c-.55.954-.23 2.178.723 2.728l8.66 5c.953.55 2.174.216 2.724-.737l5.509-9.521c.335-.58.349-1.265.087-1.832L17.65 2.54z"})]})});di.displayName="LabelIcon";var hi=di;const ui=Hr({viewBox:"0 0 24 24",svg:f(v,{children:[g("path",{d:"M0 0h24v24H0z",fill:"none"}),g("path",{d:"M4 4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2H5Zm0 2h4v2h8V6h4v12H4Z"}),g("path",{d:"M9.923 10 8.43 12.433 10 15h-.8L8 13.036 6.8 15H6l1.602-2.616L6.136 10h.8l1.093 1.781L9.123 10Z"}),g("path",{d:"m13.709 10-1.492 2.433L13.787 15h-.8l-1.2-1.964L10.585 15h-.8l1.603-2.616L9.923 10h.799l1.094 1.781L12.91 10Z"}),g("path",{d:"m17.709 10-1.492 2.433L17.787 15h-.8l-1.2-1.964L14.585 15h-.8l1.603-2.616L13.923 10h.799l1.094 1.781L16.91 10Z"})]})});ui.displayName="LicensePlateIcon";var pi=ui;const mi=Hr({viewBox:"0 0 24 24",svg:g("path",{d:"M12.703 5.787a2.171 2.171 0 0 0-1.334.438c-.511.788-.8 1.614-1.217 3.267l-3.172.91a.499.499 0 0 0-.341.62l.13.455a.5.5 0 0 0 .62.343l2.328-.67-.377 1.31-3.96 3.827 1.53 6.693h3.78l2.67-10.14 1.29-4.51V7.01l-.32-.48a2.213 2.213 0 0 0-1.627-.743zM5.801 7.771c-.06.008-.12.05-.17.125l-.094.14c-.136.2-.16.57-.055.827l.631 1.535c.106.258.302.305.438.104l.094-.139c.135-.2.158-.57.052-.828l-.63-1.537C6 7.837 5.9 7.758 5.8 7.771zm4.648 7.338-1.5 6.022-.969-3.83 2.47-2.192zM10.756 5.6a2 2 0 0 0 2.33-1.6 2 2 0 0 0-1.6-2.33 2 2 0 0 0-2.33 1.6 2 2 0 0 0 1.6 2.33zM15.971 1.02h2.648v21.96h-2.648z"})});mi.displayName="LoiteringIcon";var gi=mi;const fi=Hr({viewBox:"0 0 24 24",svg:g("path",{d:"M17,6h-2V3c0-0.55-0.45-1-1-1h-4C9.45,2,9,2.45,9,3v3H7C5.9,6,5,6.9,5,8v11c0,1.1,0.9,2,2,2c0,0.55,0.45,1,1,1 c0.55,0,1-0.45,1-1h6c0,0.55,0.45,1,1,1c0.55,0,1-0.45,1-1c1.1,0,2-0.9,2-2V8C19,6.9,18.1,6,17,6z M9.5,18H8V9h1.5V18z M12.75,18 h-1.5V9h1.5V18z M13.5,6h-3V3.5h3V6z M16,18h-1.5V9H16V18z"})});fi.displayName="LuggageIcon";var vi=fi;const yi=Hr({viewBox:"0 0 24 24",svg:f(v,{children:[g("path",{d:"M0 0h24v24H0z",fill:"none"}),g("circle",{cx:"4.5",cy:"9.5",r:"2.5"}),g("circle",{cx:"9",cy:"5.5",r:"2.5"}),g("circle",{cx:"15",cy:"5.5",r:"2.5"}),g("circle",{cx:"19.5",cy:"9.5",r:"2.5"}),g("path",{d:"M17.34 14.86c-.87-1.02-1.6-1.89-2.48-2.91-.46-.54-1.05-1.08-1.75-1.32-.11-.04-.22-.07-.33-.09-.25-.04-.52-.04-.78-.04s-.53 0-.79.05c-.11.02-.22.05-.33.09-.7.24-1.28.78-1.75 1.32-.87 1.02-1.6 1.89-2.48 2.91-1.31 1.31-2.92 2.76-2.62 4.79.29 1.02 1.02 2.03 2.33 2.32.73.15 3.06-.44 5.54-.44h.18c2.48 0 4.81.58 5.54.44 1.31-.29 2.04-1.31 2.33-2.32.31-2.04-1.3-3.49-2.61-4.8z"})]})});yi.displayName="PetsIcon";var Ci=yi;const bi=Hr({viewBox:"0 0 24 24",svg:f(v,{children:[g("path",{d:"M0 0h24v24H0z",fill:"none"}),g("path",{d:"M15 13V5c0-1.66-1.34-3-3-3S9 3.34 9 5v8c-1.21.91-2 2.37-2 4 0 2.76 2.24 5 5 5s5-2.24 5-5c0-1.63-.79-3.09-2-4zm-4-8c0-.55.45-1 1-1s1 .45 1 1h-1v1h1v2h-1v1h1v2h-2V5z"})]})});bi.displayName="ThermostatIcon";var Ti=bi;const wi=Hr({viewBox:"0 0 24 24",svg:g("path",{d:"M7.25 14C7.25 13.9337 7.22364 13.8701 7.17676 13.8232C7.12987 13.7764 7.0663 13.75 7 13.75H4.75V16.25H7C7.06631 16.25 7.12987 16.2236 7.17676 16.1768C7.22364 16.1299 7.25 16.0663 7.25 16V14ZM12 6.79883L14.4395 3.75H9.56055L12 6.79883ZM17.25 5C17.25 4.66848 17.1182 4.35063 16.8838 4.11621C16.7278 3.96018 16.5346 3.85041 16.3252 3.79395L12.75 8.26367V19C12.75 19.3315 12.8818 19.6494 13.1162 19.8838C13.3506 20.1182 13.6685 20.25 14 20.25H18C18.3315 20.25 18.6494 20.1182 18.8838 19.8838C19.1182 19.6494 19.25 19.3315 19.25 19V17.75H17C16.5359 17.75 16.0909 17.5655 15.7627 17.2373C15.4345 16.9091 15.25 16.4641 15.25 16V14C15.25 13.5359 15.4345 13.0909 15.7627 12.7627C16.0909 12.4345 16.5359 12.25 17 12.25H19.25V10.8281C19.2499 10.5381 19.149 10.2585 18.9668 10.0361L18.8838 9.94434L18.0557 9.11621C17.6046 8.66517 17.3264 8.07359 17.2637 7.44434L17.25 7.17188V5ZM16.75 16C16.75 16.0663 16.7764 16.1299 16.8232 16.1768C16.8701 16.2236 16.9337 16.25 17 16.25H19.25V13.75H17C16.9337 13.75 16.8701 13.7764 16.8232 13.8232C16.7764 13.8701 16.75 13.9337 16.75 14V16ZM6.75 7.17188L6.73633 7.44434C6.68257 7.98381 6.47066 8.49576 6.12695 8.91504L5.94434 9.11621L5.11621 9.94434C4.88178 10.1787 4.75008 10.4966 4.75 10.8281V12.25H7C7.46413 12.25 7.90912 12.4345 8.2373 12.7627C8.56549 13.0909 8.75 13.5359 8.75 14V16C8.75 16.4641 8.56549 16.9091 8.2373 17.2373C7.90912 17.5655 7.46413 17.75 7 17.75H4.75V19L4.75586 19.124C4.78436 19.41 4.9112 19.6788 5.11621 19.8838C5.35063 20.1182 5.66848 20.25 6 20.25H10C10.3315 20.25 10.6494 20.1182 10.8838 19.8838C11.1182 19.6494 11.25 19.3315 11.25 19V8.26367L7.67383 3.79395C7.46477 3.85049 7.27201 3.96041 7.11621 4.11621C6.88179 4.35063 6.75 4.66848 6.75 5V7.17188ZM18.75 7.17188L18.7559 7.29492C18.7842 7.58122 18.911 7.85048 19.1162 8.05566L19.9443 8.88379L20.127 9.08496C20.528 9.57424 20.7499 10.1899 20.75 10.8281V19C20.75 19.7293 20.4601 20.4286 19.9443 20.9443C19.4286 21.4601 18.7293 21.75 18 21.75H14C13.2707 21.75 12.5714 21.4601 12.0557 20.9443C12.0361 20.9247 12.0189 20.9029 12 20.8828C11.9811 20.9029 11.9639 20.9247 11.9443 20.9443C11.4286 21.4601 10.7293 21.75 10 21.75H6C5.27065 21.75 4.57139 21.4601 4.05566 20.9443C3.60433 20.493 3.32612 19.9011 3.26367 19.2715L3.25 19V10.8281C3.25016 10.0989 3.53999 9.39938 4.05566 8.88379L4.88379 8.05566L4.9668 7.96387C5.12311 7.77313 5.21982 7.54033 5.24414 7.29492L5.25 7.17188V5C5.25 4.27065 5.53994 3.57139 6.05566 3.05566C6.57139 2.53994 7.27065 2.25 8 2.25H16C16.7293 2.25 17.4286 2.53994 17.9443 3.05566C18.4601 3.57139 18.75 4.27065 18.75 5V7.17188Z"})});wi.displayName="VestIcon";var xi=wi;const Li=Hr({viewBox:"0 0 24 24",svg:f(v,{children:[g("path",{d:"M6.26086 8.73547C6.21847 8.79677 6.17456 8.85722 6.12707 8.91516L5.94445 9.11633L5.11633 9.94445C4.8819 10.1788 4.7502 10.4968 4.75012 10.8282V12.2501H7.00012C7.46425 12.2501 7.90923 12.4346 8.23742 12.7628C8.56561 13.091 8.75012 13.536 8.75012 14.0001V16.0001C8.75012 16.4642 8.56561 16.9092 8.23742 17.2374C7.90923 17.5656 7.46424 17.7501 7.00012 17.7501H4.75012V19.0001L4.75598 19.1241C4.78448 19.4101 4.91132 19.6789 5.11633 19.8839C5.35075 20.1183 5.6686 20.2501 6.00012 20.2501H10.0001C10.3316 20.2501 10.6495 20.1183 10.8839 19.8839C11.1183 19.6495 11.2501 19.3316 11.2501 19.0001V13.7247L12.7501 15.2247V19.0001C12.7501 19.3316 12.8819 19.6495 13.1163 19.8839C13.3507 20.1183 13.6686 20.2501 14.0001 20.2501H17.7755L19.0616 21.5362C18.7286 21.6757 18.3683 21.7501 18.0001 21.7501H14.0001C13.2708 21.7501 12.5715 21.4602 12.0558 20.9445C12.0362 20.9249 12.019 20.903 12.0001 20.8829C11.9812 20.903 11.964 20.9249 11.9445 20.9445C11.4287 21.4602 10.7295 21.7501 10.0001 21.7501H6.00012C5.27077 21.7501 4.57151 21.4602 4.05578 20.9445C3.60445 20.4931 3.32624 19.9012 3.26379 19.2716L3.25012 19.0001V10.8282C3.25027 10.099 3.54011 9.3995 4.05578 8.88391L4.88391 8.05578L4.96691 7.96398C5.04848 7.86446 5.11298 7.75314 5.16027 7.63488L6.26086 8.73547ZM16.0001 2.25012C16.7295 2.25012 17.4287 2.54006 17.9445 3.05578C18.4602 3.57151 18.7501 4.27077 18.7501 5.00012V7.17199L18.756 7.29504C18.7844 7.58134 18.9111 7.8506 19.1163 8.05578L19.9445 8.88391L20.1271 9.08508C20.5282 9.57435 20.75 10.19 20.7501 10.8282V18.2755L18.7247 16.2501H19.2501V13.7501H17.0001C16.9338 13.7501 16.8702 13.7765 16.8234 13.8234C16.7765 13.8702 16.7501 13.9338 16.7501 14.0001V14.2755L15.5284 13.0538C15.5955 12.9496 15.6738 12.8518 15.7628 12.7628C16.091 12.4346 16.536 12.2501 17.0001 12.2501H19.2501V10.8282C19.25 10.5382 19.1492 10.2586 18.9669 10.0362L18.8839 9.94445L18.0558 9.11633C17.6047 8.66529 17.3265 8.07371 17.2638 7.44445L17.2501 7.17199V5.00012C17.2501 4.6686 17.1183 4.35075 16.8839 4.11633C16.7279 3.9603 16.5347 3.85053 16.3253 3.79406L12.7501 8.26379V10.2755L11.2501 8.77551V8.26379L7.67394 3.79406C7.46489 3.85061 7.27213 3.96053 7.11633 4.11633C7.02641 4.20625 6.95174 4.30853 6.89367 4.41906L5.81262 3.33801C5.88746 3.23954 5.96733 3.14423 6.05578 3.05578C6.57151 2.54006 7.27077 2.25012 8.00012 2.25012H16.0001ZM4.75012 16.2501H7.00012C7.06642 16.2501 7.12999 16.2238 7.17687 16.1769C7.22376 16.13 7.25012 16.0664 7.25012 16.0001V14.0001C7.25012 13.9338 7.22376 13.8702 7.17687 13.8234C7.12999 13.7765 7.06642 13.7501 7.00012 13.7501H4.75012V16.2501ZM12.0001 6.79894L14.4396 3.75012H9.56066L12.0001 6.79894Z"}),g("path",{d:"M2.46984 2.46984C2.74445 2.19524 3.17917 2.17778 3.47375 2.41809L3.53039 2.46984L21.5304 20.4698L21.5821 20.5265C21.8225 20.8211 21.805 21.2558 21.5304 21.5304C21.2558 21.805 20.8211 21.8225 20.5265 21.5821L20.4698 21.5304L2.46984 3.53039L2.41809 3.47375C2.17778 3.17917 2.19524 2.74445 2.46984 2.46984Z"})]})});Li.displayName="VestCrossedOutIcon";var ki=Li;const Di=[{color:"#f44336",name:"red",highlightColor:"#ffcdd2"},{color:"#4caf50",name:"green",highlightColor:"#c8e6c9"},{color:"#2196f3",name:"blue",highlightColor:"#bbdefb"},{color:"#ffeb3b",name:"yellow",highlightColor:"#f57f17"},{color:"#000",name:"black",highlightColor:"#fff"},{color:"#fff",name:"white",highlightColor:"#000"},{color:"#9e9e9e",name:"dimgrey",highlightColor:"#f5f5f5"}];new Map(Di.map((({color:e,name:t})=>[t,e])));const Mi=A((({value:e,clear:t,toggle:r})=>f("div",{className:"color-selector",children:[g("div",{style:{textTransform:"uppercase"},children:Ie.t("color")}),f("div",{className:"color-selector__items",children:[Di.map((({color:t,highlightColor:i,name:n})=>g("button",{type:"button",className:W("color-selector__item",{selected:e.has(n)}),style:{backgroundColor:t},onClick:r.bind(null,n),children:g(ti,{color:i,size:20})},n))),g(Ur,{className:"color-selector__clear",disabled:!e.size,onClick:t,children:g(Kr,{size:20})})]})]})));function Ii(e,t,r){return t||r?r?ge(t?[me([e,t]),r]:[r,e]):me([t,e]):new Date(e)}Mi.displayName="ColorSelector";const Ni=fe((e=>new Intl.DateTimeFormat(e,{month:"long",year:"numeric"}))),Si=fe((e=>new Intl.DateTimeFormat(e,{weekday:"short"}))),Fi=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()),_i=e=>new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())),zi=b((function({onChange:e,date:t,minDate:r,maxDate:i,utc:n,startOfWeek:o="sunday"}){const[a]=T((()=>({current:n?_i(new Date):Fi(new Date)}))),s=t??a.current,l=w(+s),c=T(0),[,d]=c;x((()=>{l.current=+s,d(0)}),[s?.getTime()]);const h=l.current!==+s?0:c[0],u=n?s.getUTCFullYear():s.getFullYear(),p=(n?s.getUTCMonth():s.getMonth())+h,m=n?new Date(Date.UTC(u,p)):new Date(u,p),v=n?(e=>new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth()+1,0)).getUTCDate())(m):(e=>new Date(e.getFullYear(),e.getMonth()+1,0).getDate())(m),y=(n?m.getUTCDay():m.getDay())||("monday"===o?7:0),C=y-("monday"===o?1:0),b=n?new Date(Date.UTC(u,p,1-C)):new Date(u,p,1-C),L=t?pe(n?new Date(Date.UTC(s.getUTCFullYear(),s.getUTCMonth(),s.getUTCDate())):new Date(s.getFullYear(),s.getMonth(),s.getDate()),b):-1,k=r?pe(r,b):Number.NEGATIVE_INFINITY,D=i?pe(i,b):Number.POSITIVE_INFINITY,M=pe(a.current,b);return g("div",{children:f("div",{style:{display:"flex",flexDirection:"column",fontSize:"0.875rem"},children:[f("div",{style:{fontWeight:500,height:"3rem",fontSize:"1.125rem",display:"flex",alignItems:"center"},children:[Ni(Ie.language).format(m),g(Ur,{style:{marginLeft:"auto"},className:"x-3deye-button--icon x-3deye-datepicker__button--previous-month",disabled:k>=C,onClick:()=>d(h-1),children:g(Pr,{size:16,style:{scale:"-1 1"}})}),g(Ur,{className:"x-3deye-button--icon x-3deye-datepicker__button--next-month",disabled:D<C+v,onClick:()=>d(h+1),children:g(Pr,{size:16})})]}),f("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(7, 1fr)",gap:"0.25rem",placeItems:"center"},children:[Array.from({length:7}).map(((e,t)=>g("div",{style:{color:"oklch(0.7 0 0)"},children:Si(Ie.language).format(new Date(u,p,("monday"===o?2:1)-y+t)).substring(0,2)},t))),Array.from({length:42}).map(((t,o)=>{const a=n?new Date(Date.UTC(u,p,o-C+1)):new Date(u,p,o-C+1),l=o<k||o>D;return g("div",{className:W("x-3deye-datepicker__day",{"x-3deye-datepicker__day--today":o===M,"x-3deye-datepicker__day--disabled":l,"x-3deye-datepicker__day--previous-month":o<C,"x-3deye-datepicker__day--next-month":o>=C+v,"x-3deye-datepicker__day--selected":o===L}),onClick:l?void 0:()=>{if(n){const t=new Date(Date.UTC(a.getUTCFullYear(),a.getUTCMonth(),a.getUTCDate(),s.getUTCHours(),s.getUTCMinutes(),s.getUTCSeconds(),s.getUTCMilliseconds()));return e(Ii(t,r,i))}const t=new Date(a.getFullYear(),a.getMonth(),a.getDate(),s.getHours(),s.getMinutes(),s.getSeconds(),s.getMilliseconds());return e(Ii(t,r,i))},children:n?a.getUTCDate():a.getDate()},o)}))]})]})})})),Ui={hour:"numeric",minute:"numeric"},Hi=fe(((e,t,r,i=!0)=>{const n={...Ui,second:i?"numeric":void 0,hour12:r||void 0,hourCycle:r?void 0:"h23",timeZone:t?"UTC":void 0};return new Intl.DateTimeFormat(e,n)})),Oi=fe(((e,t)=>{const r=new Intl.DateTimeFormat(e,{hour:"numeric",hour12:!0,timeZone:"UTC"}).formatToParts(new Date("1969-01-01T16:20:00Z")).find((({type:e})=>"dayPeriod"===e))?.value??"PM";return(e,i)=>{const n=e.match(/(?<hours>\d{0,2}):(?<minutes>\d{0,2})(:(?<seconds>\d{0,2}))?/);if(null===n)return new Date(NaN);let{hours:o,minutes:a,seconds:s}=n.groups;o=o.padStart(2,"0"),+o<12&&e.toLowerCase().includes(r.toLowerCase())&&(o=(+o+12).toString()),a=a.padStart(2,"0"),s=s?.padStart(2,"0")??"00";const l=new Date(i);return t?(l.setUTCHours(+o),l.setUTCMinutes(+a),l.setUTCSeconds(+s)):(l.setHours(+o),l.setMinutes(+a),l.setSeconds(+s)),l}}));function Pi(e,t){const r=t?new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())):new Date(e.getFullYear(),e.getMonth(),e.getDate()),i=new Date(e.getFullYear(),e.getMonth(),e.getDate(),24);return{hoursInDay:t?24:Math.round((+i-+r)/36e5),startOfTheDay:r}}const Ei=b((({date:e,onChange:t,hour12:r=!1,utc:i=!1})=>{const n=w(null),o=w(null),a=w(null),s=w(null),l=w(!0),[c,d]=T(Hi(Ie.language,i,r).format(e));L((()=>{e&&l.current&&(l.current=!1,n.current?.children[i?e.getUTCHours():e.getHours()].scrollIntoView(),o.current?.children[i?e.getUTCMinutes():e.getMinutes()].scrollIntoView(),a.current?.children[i?e.getUTCSeconds():e.getSeconds()].scrollIntoView())}));x((()=>{document.activeElement!==s.current&&d(Hi(Ie.language,i,r).format(e))}),[e]);const{hoursInDay:h,startOfTheDay:u}=Pi(e,i);return f("div",{className:"x-3deye-timepicker",style:{display:"grid",gridTemplateRows:"3rem auto 1fr",gridTemplateColumns:"1fr 1fr 1fr"},children:[g("div",{style:{gridColumnStart:1,gridColumnEnd:4,display:"flex",alignItems:"center"},children:g("input",{ref:s,style:{height:32,margin:2},type:"text",value:c,onChange:r=>{const n=Oi(Ie.language,i)(r.target.value,e);var o;(o=n)instanceof Date&&!isNaN(o.getTime())&&(l.current=!0,t(n)),d(r.target.value)},onBlur:()=>{d(Hi(Ie.language,i,r).format(e))}})}),g("div",{ref:n,className:"x-3deye-timepicker__column",children:Array.from({length:h},((r,n)=>{const o=new Date(u.getTime()+36e5*n);return g("div",{className:W({selected:o.getUTCDate()===e.getUTCDate()&&o.getUTCHours()===e.getUTCHours()}),onClick:()=>{const r=i?e.getUTCMinutes():e.getMinutes(),n=i?e.getUTCSeconds():e.getSeconds();t(new Date(+o+60*r*1e3+1e3*n+e.getMilliseconds()))},children:g("div",{className:"x-3deye-timepicker__value",children:o[i?"getUTCHours":"getHours"]().toString().padStart(2,"0")})},n)}))}),g("div",{ref:o,className:"x-3deye-timepicker__column",children:Array.from({length:60},((r,n)=>g("div",{className:W({selected:n===e.getMinutes()}),onClick:()=>{const r=n,o=i?e.getUTCSeconds():e.getSeconds(),a=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours())+6e4*r+1e3*o);t(a)},children:g("div",{className:"x-3deye-timepicker__value",children:n.toString().padStart(2,"0")})},n)))}),g("div",{ref:a,className:"x-3deye-timepicker__column",children:Array.from({length:60},((r,n)=>g("div",{className:W({selected:n===e.getSeconds()}),onClick:()=>{const r=i?e.getUTCMinutes():e.getMinutes(),o=n,a=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours())+6e4*r+1e3*o);t(a)},children:g("div",{className:"x-3deye-timepicker__value",children:n.toString().padStart(2,"0")})},n)))})]})}));Ei.displayName="TimePicker";const Vi=b((({date:e,onChange:t,utc:r=!1,hour12:i=!1})=>{const n=w(null),o=w(!0);L((()=>{e&&o.current&&(o.current=!1,n.current?.children[r?e.getUTCHours():e.getHours()].scrollIntoView({block:"center"}))}));const a=e||new Date,{hoursInDay:s,startOfTheDay:l}=Pi(a,r);return g("div",{className:"x-3deye-timepicker x-3deye-timepicker--alt",children:g("div",{ref:n,className:"x-3deye-timepicker__column",children:Array.from({length:s},((n,o)=>{const a=new Date(l.getTime()+60*o*60*1e3);return g("div",{className:W({selected:!!e&&(a.getUTCDate()===e.getUTCDate()&&a.getUTCHours()===e.getUTCHours())}),onClick:()=>{t(a)},children:g("div",{className:"x-3deye-timepicker__value",children:Hi(Ie.language,r,i,!1).format(a)})},o)}))})})}));Vi.displayName="TimePickerShort";const Bi={day:"2-digit",month:"short",weekday:"short",hour:"2-digit",minute:"numeric"},ji=Array.from({length:3}),Ri=e=>g("svg",{viewBox:"0 0 100 100",...e,children:ji.map(((e,t)=>g("circle",{fill:"currentColor",stroke:"none",cx:20*t+6,cy:"50",r:"6",children:g("animate",{attributeName:"opacity",dur:"1s",values:"0;1;0",repeatCount:"indefinite",begin:.1*(t+1)})},t)))}),Ai=k({reportError:(e,t)=>{}});class $i extends D{static contextType=Ai;state={hasError:!1};componentDidCatch(e,t){this.setState({hasError:!0}),this.context?.reportError(e,t),console.error(e),console.log(t)}render(){if(!this.state.hasError)return this.props.children;const{style:e,children:t,...r}=this.props;return f("div",{style:{flex:1,padding:10,display:"grid",placeItems:"center",alignContent:"center",textAlign:"center",...this.props.style},...r,children:[g("h1",{children:"Oops. Something went wrong"}),g("div",{children:"We've been notified about this problem"}),g(Ur,{onClick:()=>this.setState({hasError:!1}),children:"retry"})]})}}const Wi=y.createContext(null),Zi=y.forwardRef((({className:e,style:t,children:r,title:i,disabled:n,...o},a)=>{const s=y.useContext(Wi);if(!s)return;const{refs:l,isNested:c,isOpen:d,hasFocusInside:h,item:u,parent:p,setHasFocusInside:m,getReferenceProps:v}=s;return f(Ur,{ref:Z([l.setReference,u.ref,a]),tabIndex:c?p?.activeIndex===u.index?0:-1:void 0,role:c?"menuitem":void 0,"data-open":d?"":void 0,"data-nested":c?"":void 0,"data-focus-inside":h?"":void 0,className:W(e,{"menu-item":c,"menu-button":!c}),style:t,title:d?null:i,disabled:n,...v(p?.getItemProps({...o,onFocus(e){o.onFocus?.(e),m(!1),p.setHasFocusInside(!0)}})),children:[r,c&&g(Gr,{style:{marginLeft:"auto"},"aria-hidden":!0,size:20})]})}));Zi.displayName="MenuButton";const Yi=y.forwardRef((({label:e,disabled:t,className:r,children:i,...n},o)=>{const a=y.useContext(Wi),s=Y({label:t?null:e}),l=q();if(!a)return null;const c=s.index===a.activeIndex;return g(Ur,{...n,ref:Z([s.ref,o]),type:"button",role:"menuitem",className:W(r,"menu-item"),tabIndex:c?0:-1,disabled:t,...a.getItemProps({onClick(e){n.onClick?.(e),l?.events.emit("click")},onFocus(e){n.onFocus?.(e),a.setHasFocusInside(!0)}}),children:e||i})}));Yi.displayName="MenuItem";const qi=({opened:e,onOpenChange:t,children:i,target:n,placement:o,className:a,style:s,autoDismiss:l=!0,initialFocus:c,withArrow:d=!1,modal:h=!1,position:u,...p})=>{const m=w(null),{x:y,y:C,refs:b,strategy:L,context:k,middlewareData:D,placement:I,update:S}=G({open:e,onOpenChange:t,middleware:[Q(5),K({mainAxis:!u,crossAxis:!u}),J(),X({element:m})],placement:o,whileElementsMounted:(e,t,r)=>ee(e,t,(()=>{0!==k.elements.domReference?.getBoundingClientRect().width?r():k.onOpenChange(!1)}),{animationFrame:!0})}),{getReferenceProps:F,getFloatingProps:_}=te([re(k,{enabled:!!u,x:u?.x,y:u?.y}),ie(k),ne(k,{ancestorScroll:!0,enabled:l,escapeKey:!1})]),z=`popover-${oe()}`;!function(e,t=!0){x((()=>{if(!t)return t||mn.peek()!==e||mn.pop(),()=>{mn.peek()===e&&mn.pop()};mn.push(e)}),[e,t])}(z,l&&e),function(e,t,{scope:i,enabled:n=!0}={}){const o=function(e){const[t,r]=T(0);return x((()=>{const e=()=>r((e=>e+1));return mn.addListener(e),()=>mn.removeListener(e)}),[e]),void 0===e||mn.peek()===e}(i);x((()=>{if(!n||!o)return;const i=e.split(" "),a=pn.pipe(Ce(1e3),be(null),Te((()=>pn.pipe(we(i.length,1)))),xe((e=>r(e).pipe(Le(r(i)),ke(Boolean))))).subscribe((()=>{un.current?.preventDefault(),un.current=null,t()}));return()=>{a.unsubscribe()}}),[n&&o])}("Escape",(()=>t?.(!1,void 0,"escape-key")),{enabled:l&&e,scope:z});const U=M((e=>{m.current=e,S()}),[S]),H={top:"bottom",right:"left",bottom:"top",left:"right"}[I?.split("-")[0]??"top"]||"top",O=f("div",{..._({className:W("x-3deye-popover-container",a),ref:b.setFloating,style:{...s,position:L,top:C??0,left:y??0}}),...p,children:[d&&g(fn,{ref:U,width:24,height:8,placement:H,style:{position:"absolute",left:D.arrow?.x,top:D.arrow?.y,[H]:-7}}),i]});return f(v,{children:[n?N(n,F({ref:b.setReference,...n.props})):null,f(ae,{id:"x-3deye-floating-ui-root",children:[l&&e&&g(se,{context:k,modal:h,returnFocus:!0,initialFocus:c,children:O}),!l&&e&&O]})]})},Gi=({size:e=48})=>f("svg",{role:"graphics-symbol",width:e,height:e,xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid",children:[g("rect",{x:"0",y:"0",width:"100",height:"100",fill:"none",className:"bk"}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(0 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(30 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.08333333333333333s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(60 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.16666666666666666s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(90 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.25s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(120 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.3333333333333333s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(150 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.4166666666666667s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(180 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.5s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(210 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.5833333333333334s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(240 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.6666666666666666s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(270 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.75s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(300 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.8333333333333334s",repeatCount:"indefinite"})}),g("rect",{x:"46.5",y:"38",width:"7",height:"24",rx:"5",ry:"5",fill:"currentColor",transform:"rotate(330 50 50) translate(0 -30)",children:g("animate",{attributeName:"opacity",from:"1",to:"0",dur:"1s",begin:"0.9166666666666666s",repeatCount:"indefinite"})})]});Gi.displayName="Preloader";const Qi=(e,t,r,i)=>Dr(Math.floor((e-t)/r*i),0,i-1),Ki=k({value:null,onPointerDown:Mr,setCurrentValue:Mr,state:{currentIdx:0,currentValue:null,options:[]}});class Ji{currentIdx=0;options=[];get currentValue(){return this.options[this.currentIdx]}constructor(e=0){this.currentIdx=e,H(this,{currentIdx:P,options:P.ref,currentValue:O,setCurrentIdx:E,setOptions:E})}setCurrentIdx=e=>{this.currentIdx=e};setOptions=e=>{this.options=e}}var Xi=A(y.forwardRef((({value:e,onChange:t,children:r,style:i},n)=>{const[o,a]=T(!1),s=w(null),l=S.map(r,(e=>e?.props.value))||[],c=$((()=>new Ji(l.indexOf(e))));c.setOptions(l);const d=S.count(r);x((()=>{c.setCurrentIdx(l.indexOf(e))}),[e]),x((()=>{if(!o)return;const e=s.current?.getBoundingClientRect();if(!e)return;const r=({clientX:t})=>{c.setCurrentIdx(Qi(t,e.left,e.width,d))},i=()=>{a(!1),t(l[c.currentIdx])};return document.addEventListener("pointermove",r),document.addEventListener("pointerup",i),()=>{document.removeEventListener("pointermove",r),document.removeEventListener("pointerup",i)}}),[o,d]);return g(Ki.Provider,{value:{value:e,state:c,onPointerDown:e=>{const t=s.current;if(!t)return;const{left:r,width:i}=t.getBoundingClientRect(),n=Qi(e.clientX,r,i,d);n!==c.currentIdx&&c.setCurrentIdx(n),a(!0)},setCurrentValue:e=>{c.setCurrentIdx(l.indexOf(e))}},children:g("div",{className:"segmented-control-wrapper",style:i,ref:n,children:f("div",{role:"radiogroup",ref:s,className:"segmented-control",style:{"--indicator-offset":100*c.currentIdx+"%"},children:[g("div",{"aria-hidden":!0,className:W("segmented-control-indicator",{active:o}),style:{width:100/l.length+"%"},children:g("div",{className:"segmented-control-indicator-inner"})}),r]})})})})));const en=A(C((({value:e,children:t},r)=>{const i=F(Ki);return g("button",{ref:r,role:"radio","aria-checked":i.state.currentValue===e,tabIndex:0,className:W("segmented-control-button",{current:i.state.currentValue===e}),onPointerDown:i.onPointerDown,onClick:()=>i.setCurrentValue(e),children:t})})));en.displayName="SegmentedControlOption";var tn=en;const rn=C((({active:e,children:t,className:r,style:i,...n},o)=>{const a=oe();return g("div",{ref:o,id:a,className:W("x-3deye-select-option",r,{"x-3deye-select-option--active":e}),role:"option","aria-selected":e,style:i,...n,children:t})})),nn=({className:e,style:t,children:r,onCloseClick:i,...n})=>f("div",{className:W("x-3deye-select-value",e),style:t,...n,children:[r,g("button",{className:"close-button",type:"button",onClick:i,children:g(Kr,{size:12})})]}),on=(e,t,r)=>g(nn,{...r,children:t.label},e),an=(e,t,r,i)=>g(rn,{active:r,...i,children:t.label},e),sn=(e,t)=>e.label.toLowerCase().includes(t.toLowerCase().trim()),ln=({options:e,values:t,inputId:r,inputValue:i,onMenuClose:n,onChange:o,onInputChange:a,onKeyDown:s,isLoading:l,placeholder:c,hideDropdownIcon:d,renderOption:h=an,renderValue:u=on,keyExtractor:p=e=>e.value,optionFilter:m=sn,disabled:y=!1})=>{const[C,b]=T(!1),[L,k]=T(""),D=i??L,[M,I]=T(null),N=w([]),S=w(null),{refs:F,floatingStyles:_,context:z}=G({whileElementsMounted:ee,open:C,onOpenChange:b,middleware:[K({padding:10}),Q({mainAxis:5}),le({apply({rects:e,availableHeight:t,elements:r}){Object.assign(r.floating.style,{width:`${e.reference.width}px`,maxHeight:`${Math.min(300,t)}px`})},padding:10})]}),U=ie(z,{role:"listbox"}),H=ne(z),O=ce(z,{listRef:N,activeIndex:M,onNavigate:I,virtual:!0,loop:!0}),{getReferenceProps:P,getFloatingProps:E,getItemProps:V}=te([U,H,O]);const B=e?.filter((e=>{const r=p(e);return!t.some((e=>p(e)===r))&&m(e,D)}));return x((()=>{C||(k(""),n?.())}),[C,n]),f(v,{children:[f("div",{className:W("x-3deye-select-container",{"x-3deye-select-container--open":C,"x-3deye-select-container--disabled":y}),ref:F.setReference,onPointerDownCapture:e=>{const t=e.target;"BUTTON"!==t.tagName&&null===t.closest("button")&&(e.preventDefault(),y||(b((e=>!e)),S.current?.focus()))},children:[f("div",{className:"x-3deye-multi-select-body",children:[t.map((e=>u(p(e),e,{onCloseClick:r=>{r.stopPropagation(),o(t.filter((t=>t!==e)),{action:"remove",open:C,option:e}),S.current?.focus()}}))),f("div",{className:"x-3deye-select","data-value":D,children:[t.length||D?null:g("div",{className:"x-3deye-select-placeholder",children:c}),g("input",{ref:S,size:3,id:r||void 0,disabled:y,...P({onChange:function(e){const t=e.target.value;k(t),a?.(t),t?(b(!0),I(0)):b(!1)},value:D,placeholder:"","aria-autocomplete":"list",onKeyDown(e){if(s?.(e),"Enter"===e.key&&null!=M&&B?.[M])return k(""),o(t.concat(B[M]),{open:C,action:"add",option:B[M]}),void I(Math.max(M-1,0));if("Backspace"!==e.key);else if(""===D&&t.length){const e=t.at(-1);if(!e)return;o(t.slice(0,t.length-1),{open:C,action:"remove",option:e})}}})})]})]}),f("div",{className:"x-3deye-select-indicators",style:{marginLeft:"auto",display:"flex",paddingRight:8,alignItems:"center"},children:[l?g(Ri,{style:{width:24}}):t.length?g(Ur,{className:"x-3deye-button--icon",onClick:()=>{o([],{open:C,action:"clear"})},children:g(Kr,{size:16})}):null,d?null:g(Yr,{size:24})]})]}),g(ae,{id:"x-3deye-floating-ui-root",children:C&&B?g(se,{context:z,initialFocus:-1,visuallyHiddenDismiss:!0,children:g("div",{className:"x-3deye-select-menu",...E({ref:F.setFloating,style:{..._,color:"black",overflowY:"auto"}}),children:B.length?B.map(((e,r)=>h(p(e),e,M===r,{...V({ref(e){N.current[r]=e},onClick(r){r.stopPropagation(),k(""),o([...t,e],{open:C,action:"add",option:e}),S.current?.focus()}})}))):g("div",{style:{padding:10,textAlign:"center",fontSize:"0.875rem",color:"#666"},children:l?Ie.t("select.loading"):Ie.t("select.noOptions")})})}):null})]})},cn=e=>Math.round(e),dn=C((({value:e,onChange:t,onChangeComplete:r,orientation:i="horizontal",disabled:n=!1,labelFormat:o=e=>`${e}`,style:a},s)=>{const l=w(null),c=w(null),[d,h]=T(!1),[u,p]=T(e);x((()=>{if(!d)return;const e=l.current;if(!e)return;let n=0,o=0;const a=e.getBoundingClientRect();if(!a||!a.width||!a.height)return void h(!1);const s=({clientX:e,clientY:r})=>{if(!c.current)return;let s=0;"horizontal"===i?(n=Dr(e-a.x,0,a.width),s=n/a.width*100,c.current.style.transform=`translateX(${n}px)`):(o=a.height-Dr(r-a.y,0,a.height),s=o/a.height*100,c.current.style.transform=`translateY(${-o}px)`),p(s),t?.(cn(s))},u=({clientX:e,clientY:n})=>{if(h(!1),!c.current)return;const o="horizontal"===i?Dr(e-a.x,0,a.width)/a.width*100:100*(1-Dr(n-a.y,0,a.height)/a.height);c.current.style.transform="",p(o),t?.(cn(o)),r?.(cn(o))},m=()=>{if(h(!1),!c.current)return;const e="horizontal"===i?n/a.width*100:o/a.height*100;c.current.style.transform="",t?.(cn(e)),r?.(cn(e))};return document.addEventListener("pointercancel",m),document.addEventListener("pointermove",s),document.addEventListener("pointerup",u),()=>{document.removeEventListener("pointercancel",m),document.removeEventListener("pointermove",s),document.removeEventListener("pointerup",u)}}),[d,i,t,r]);const m=M((e=>{if(!l.current||n)return;const{clientX:r,clientY:o}=e;e.preventDefault(),h(!0);const a=l.current.getBoundingClientRect();if(!a)return;if(!c.current)return;let s=0;if("horizontal"===i){const e=Dr(r-a.x,0,a.width);s=e/a.width*100,c.current.style.transform=`translateX(${e}px)`}else{const e=a.height-Dr(o-a.y,0,a.height);s=e/a.height*100,c.current.style.transform=`translateY(${-e}px)`}p(s),t?.(cn(s))}),[n]),v=M((i=>{if(n)return;let o=null;"ArrowLeft"===i.code?o=Math.max(e-1,0):"ArrowRight"===i.code?o=Math.min(e+1,100):"ArrowDown"===i.code?o=Math.max(e-1,0):"ArrowUp"===i.code&&(o=Math.min(e+1,100)),null!==o&&(i.stopPropagation(),i.preventDefault(),t?.(o),r?.(o))}),[e,t,r,n]);return f("div",{ref:ue(s,l),tabIndex:0,onKeyDown:v,className:W("x-3deye-slider",i,{disabled:n}),onPointerDown:m,style:a,children:[g("div",{className:"x-3deye-slider__track",children:g("div",{className:"x-3deye-slider__bar",style:{width:"horizontal"===i?`${d?u:e}%`:void 0,height:"vertical"===i?`${d?u:e}%`:void 0}})}),g("div",{ref:c,className:W("x-3deye-slider__thumb",{active:d}),style:{touchAction:"none",userSelect:"none",position:"absolute",left:"horizontal"===i?d?0:`${e}%`:"auto",bottom:"vertical"===i?d?0:`${e}%`:"auto"},children:null!==o&&g("div",{className:"x-3deye-slider__label "+(d?"open":""),children:o(d?cn(u):e)})})]})}));dn.displayName="Slider";const hn=/Mac|iPod|iPhone|iPad/.test(globalThis.navigator.platform),un={current:null},pn=p(document,"keydown").pipe(ve((function(e){let{target:t,code:r,shiftKey:i,metaKey:n,ctrlKey:o,altKey:a}=e;if(un.current=e,!["Escape","ArrowDown","ArrowUp","Enter"].includes(r)&&/^(input|select|textarea)$/i.test(t.tagName))return null;const s=[];r.startsWith("Key")&&(r=r.substring(3).toLowerCase());hn&&n&&s.push("CtrlCmd");!hn&&o&&s.push("CtrlCmd");a&&s.push("Alt");i&&s.push("Shift");return s.push(r),s.join("+")})),ye()),mn={value:[],listeners:[],push(e){mn.value.push(e),mn.notify()},peek:()=>mn.value.at(-1),pop(){mn.value.pop()&&mn.notify()},addListener(e){mn.listeners.push(e)},removeListener(e){mn.listeners.splice(mn.listeners.indexOf(e)??-1,1)},notify(){for(const e of mn.listeners)e()}};function gn({count:e,overscan:t=1,itemSize:r,horizontal:i=!1,spacing:n=0}){const[o,a]=T(),[s,l]=T(0),[c,d]=T({width:0,height:0}),h=M((e=>{a(e||void 0)}),[]);x((()=>{if(!o)return;const e=()=>{l(i?o.scrollLeft:o.scrollTop)};return o.addEventListener("scroll",e,{passive:!0,capture:!0}),()=>{o.removeEventListener("scroll",e)}}),[o,i]),x((()=>{if(!o)return;const e=new ResizeObserver((e=>{for(const t of e)t.contentBoxSize?d({width:t.contentBoxSize[0].inlineSize,height:t.contentBoxSize[0].blockSize}):d({width:t.contentRect.width,height:t.contentRect.height})}));return e.observe(o),()=>{e.disconnect()}}),[o]),x((()=>{if(!o)return;const e=o[i?"scrollLeft":"scrollTop"];e!==s&&l(e)}));return{parentRef:h,getItems:()=>{const a=[];if(!o)return a;const{height:l,width:c}=o.getBoundingClientRect(),d=Math.max(0,Math.floor(s/(r+n))-t),h=Math.ceil((i?c:l)/(r+n))+2*t;for(let t=d;t<Math.min(e,d+h);t++)a.push({idx:t,start:t*(r+n),size:r});return a},getTotalSize:()=>r*e+Math.max(e-1,0)*n}}const fn=y.forwardRef((function({width:e,height:t,placement:r="top",style:i},n){const o="left"===r||"right"===r,a=o?["left"===r?t:0,0]:[0,"top"===r?t:0],s=o?[a[0],e]:[e,a[1]],l=o?[t-a[0],e/2]:[e/2,t-a[1]],c=o?[t*("left"===r?3:1)/4,e/4]:[e/4,t*("top"===r?3:1)/4],d=o?[t-a[0],.325*e]:[.325*e,t-a[1]],h=o?[d[0],e-d[1]]:[e-d[0],d[1]],u=o?[c[0],e-c[1]]:[e-c[0],c[1]],p=e=>e.join(","),m=`M ${p(a)} C ${p(c)} ${p(d)} ${p(l)} ${p(h)} ${p(u)} ${p(s)}`,v=`${m} Z`;return f("svg",{ref:n,role:"graphics-symbol",className:"tip",style:i,width:o?t:e,height:o?e:t,fill:"var(--tip-background, #fff)",children:[g("path",{className:"tip-border",d:m,stroke:"var(--tip-border, transparent)",strokeWidth:1}),g("path",{className:"tip-body",d:v})]})}));var vn=({children:e,label:t,placement:r="bottom",disabled:i})=>{const[n,o]=T(!1),{x:a,y:s,refs:l,strategy:c,context:d}=G({placement:r,open:n,onOpenChange:o,middleware:[Q(5),K(),J({padding:8})],whileElementsMounted:(e,t,r)=>ee(e,t,r,{animationFrame:!0})}),{getReferenceProps:h,getFloatingProps:u}=te([de(d,{enabled:!i}),ie(d,{role:"tooltip"}),ne(d,{referencePress:!0})]);return f(v,{children:[N(e,h({...e.props,ref:ue(l.setReference,e.props.ref??e.ref)})),g(ae,{id:"x-3deye-floating-ui-root",children:n&&g("div",{...u({ref:l.setFloating,className:"x-3deye-tooltip",style:{position:c,top:s??0,left:a??0}}),children:t})})]})};const yn=A((({getter:e,setter:t})=>{const[r,i]=T(0),n=w(null),o=Math.floor(100*e());return x((()=>j(e,(e=>{i(Math.floor(100*e))}),{fireImmediately:!0})),[e]),f("div",{ref:n,style:{paddingLeft:8,paddingRight:8,marginTop:5,marginBottom:10},children:[f("div",{style:{display:"flex",justifyContent:"space-between"},children:[g("div",{style:{textTransform:"uppercase"},children:Ie.t("confidence")}),f("div",{style:{fontSize:"1.1em"},children:[o,"%"]})]}),g("div",{style:{padding:"0 10px"},children:g(dn,{value:r,labelFormat:e=>`${e}%`,onChangeComplete:e=>{t(e/100)}})})]})}));yn.displayName="ProbabilitySlider";const Cn=A((({from:e,to:t})=>{const{account:{preferences:{utc:r,hour12:i}}}=F(Ne);return g(v,{children:Pe(e,t,{locale:Ie.language,utc:r,hour12:i})})}));Cn.displayName="DisplayPeriod";class bn{from=null;to=null;probabilityThreshold=.5;cameras=[];acknowledged=null;detectedObjects=[];colors=new Set;regions=null;eventTypes=[];sortDirection="DESC";updated$=new m;get regionsWkt(){return this.regions?this.regions.map((e=>this.regionToWktPolygon(e))):[]}constructor(){H(this,{from:P,to:P,probabilityThreshold:P,cameras:P.struct,acknowledged:P,detectedObjects:P.struct,regions:P.ref,eventTypes:P.struct,sortDirection:P,colors:P.ref,filterJson:O}),j((()=>({from:this.from?+this.from:void 0,to:this.to?+this.to:void 0,sortDirection:this.sortDirection,filter:this.filterJson,cameraFilters:this.cameras,acknowledged:this.acknowledged,eventTypes:this.eventTypes,regions:this.regions})),(()=>this.updated$.next(null)))}apply(e){let t=e;const{from:r,to:i}=this;if(r&&(t=t.filter((e=>e.startTime>=r))),i&&(t=t.filter((e=>e.startTime<=i))),this.cameras.length&&(t=t.filter((e=>this.cameras.includes(e.cameraId)))),this.eventTypes.length){const e=this.eventTypes.map((e=>Nr[e]));t=t.filter((t=>e.includes(t.type)))}return this.detectedObjects.length&&(t=t.filter((e=>e.detectedObjects.some((e=>{const{probabilityThreshold:t}=this;return!(null!==t&&e.Probability<t)&&(this.colors.size?this.detectedObjects.includes(e.Type)&&"Colors"in e&&e.Colors?.some((e=>this.colors.has(e.Color))):this.detectedObjects.includes(e.Type))}))))),!this.detectedObjects.length&&this.colors.size&&(t=t.filter((e=>e.detectedObjects.some((e=>{const{probabilityThreshold:t}=this;return!(null!==t&&e.Probability<t)&&("Colors"in e&&e.Colors?.some((e=>this.colors.has(e.Color))))}))))),null!==this.acknowledged&&(t=t.filter((e=>e.acknowledged===this.acknowledged))),t}get filterJson(){const{probabilityThreshold:e}=this;if(null===e)return null;const t={And:[]};return this.detectedObjects.length&&t.And.push({Or:this.detectedObjects.map((e=>({Type:e})))}),this.colors.size&&t.And.push({Or:[...this.colors].map((e=>({ObjectColors:[e]})))}),t.And.push({Or:[{Probability:e}]}),JSON.stringify(t)}regionToWktPolygon(e){if(!e.length)return"POLYGON (())";return`POLYGON ((${e.concat(e[0]).map((({x:e,y:t})=>`${e} ${t}`)).join(", ")}))`}}class Tn extends Ir{cameraFilters=[];objectFilters=[];eventTypeFilters=[];date=null;setDate=e=>{this.date=e};clearDate=()=>{this.date=null,this.applyFilters()};resetDate=()=>{this.loaderFilters.from||this.loaderFilters.to||(this.date=null,this.sortDirection="DESC"),this.loaderFilters.from&&(this.date=this.loaderFilters.from,this.sortDirection="ASC"),this.loaderFilters.to&&(this.date=this.loaderFilters.to,this.sortDirection="DESC")};sortDirection="DESC";probabilityThreshold=.5;colors=new Set;disposables=[];loader;loaderFilters;get someAnalyticsFilterSelected(){return!!this.objectFilters.length||!!this.colors.size}get filters(){return this.objectFilters.concat(this.eventTypeFilters,this.cameraFilters)}constructor(e){super(),H(this,{cameraFilters:P.ref,objectFilters:P.ref,date:P,setDate:E,clearDate:E,resetDate:E,sortDirection:P,probabilityThreshold:P,setProbabilityThreshold:E,colors:P.ref,someAnalyticsFilterSelected:O,filters:O,setFilters:E,load:E,toggleColor:E,clearColors:E,applyFilters:E,toggleSorting:E});const t=new bn;this.loaderFilters=t;const r=(e=>(t,r)=>t.cameras.GetSensorEventsPage({sensorIds:e.cameras,sensorType:"camera",sensorEventTypes:e.eventTypes,startTime:e.from??void 0,endTime:e.to??void 0,acknowledged:e.acknowledged,isDescending:"DESC"===e.sortDirection,rowsLimit:10,pageToken:r},e.filterJson,e.regionsWkt))(t);this.loader=new Fr(e,t,r),B((()=>{this.loader.loading=!0,this.loaderFilters.probabilityThreshold=null}))}toggleSorting=()=>{this.sortDirection="ASC"===this.sortDirection?"DESC":"ASC",null===this.date&&(this.date=_e(function(e){const t=e.getMinutes(),r=e.getSeconds(),i=e.getMilliseconds();return new Date(e.getTime()-60*t*1e3-1e3*r-i)}(new Date),1))};load(){this.loader.load()}applyFilters=()=>{this.loaderFilters.cameras=this.cameraFilters.map((e=>e.value)),this.loaderFilters.detectedObjects=this.objectFilters.map((e=>e.value)),this.loaderFilters.colors=this.colors,this.loaderFilters.probabilityThreshold=this.objectFilters.length||this.colors.size?this.probabilityThreshold:null,this.loaderFilters.eventTypes=this.eventTypeFilters.map((e=>e.value)),this.date?"ASC"===this.sortDirection?(this.loaderFilters.sortDirection="ASC",this.loaderFilters.to=null,this.loaderFilters.from=this.date):(this.loaderFilters.sortDirection="DESC",this.loaderFilters.from=null,this.loaderFilters.to=this.date??void 0):(this.loaderFilters.sortDirection="DESC",this.loaderFilters.from=null,this.loaderFilters.to=null)};setFilters(e){this.cameraFilters=e?e.filter((e=>"camera"===e.type)):[],this.eventTypeFilters=e?e.filter((e=>"eventType"===e.type)):[],this.objectFilters=e?e.filter((e=>"detectedObject"===e.type)):[]}getProbabilityThreshold=()=>this.probabilityThreshold;setProbabilityThreshold=e=>{this.probabilityThreshold=e,this.applyFilters()};toggleColor=e=>{const t=new Set(this.colors);this.colors.has(e)?t.delete(e):t.add(e),this.colors=t,this.applyFilters()};clearColors=()=>{this.colors=new Set,this.applyFilters()};afterInit(){this.loader.initWith(this.api)}dispose(){for(const e of this.disposables)e instanceof i?e.closed||e.unsubscribe():e();this.loader.dispose()}}const wn=Hr({viewBox:"0 96 960 960",svg:g(v,{children:g("path",{d:"m513 988-57-18 14-42q3-9 4-17.6 1-8.6 1-17.2 0-17.2-3.912-32.473Q467.176 845.455 456 828q-15.938-26.26-22.969-48.63Q426 757 425 727.844q0-11.844 2.5-27.344Q430 685 434 672l13-42 57 18-14 42q-3 9-4 19t-1 19q0 19 4 32t15 30q15.97 25.948 23.485 49.974Q535 864 535 892.933q0 13.067-2.5 26.567T526 946l-13 42Zm-176 0-57-18 14-42q3-9 4-17.049t1-17.707q0-18.244-4-34.744T280 827q-15.03-21.658-23.015-46.612Q249 755.433 249 728.125 249 714 251 700t7-28l13-42 57 18-14 42q-3 9.771-4 20.086-1 10.314-1 17.914 0 21.065 5.5 36.033Q320 779 328 791q15 22 23 48.5t8 52.802Q359 905 356.5 919t-6.5 27l-13 42Zm348 0-57-18 14-42q3-9 4-17.6 1-8.6 1-17.2 0-17.2-4.5-34.7Q638 841 628 827q-15-21-23-47t-8-52.047q0-13.953 2-27.794 2-13.841 7-28.159l13-42 57 18-14 42q-4 11-4.5 19.438-.5 8.437-.5 18.562 0 18.491 4.471 32.632Q665.941 774.772 676 790q16 23 23.5 48.887 7.5 25.886 7.5 53.69 0 13.423-2.5 26.923Q702 933 698 946l-13 42ZM180 336h600v-60H180v60Zm139 120h322l18-60H301l18 60Zm0 60q-19.5 0-35.25-11.625T262 474l-25-78h-57q-24.75 0-42.375-17.625T120 336V216h720v120q0 25-17.625 42.5T780 396h-57l-30 81q-6.932 17.25-22.338 28.125Q655.257 516 636 516H319ZM180 336v-60 60Z"})})});wn.displayName="DetectorSmokeIcon";var xn=wn;const Ln=({data:e})=>{const t=16;return"eventType"===e.type&&e.value===Nr.Loitering?g(gi,{size:t}):"camera"===e.type?g(Ar,{size:t}):"Loitering"===e.value?g(gi,{size:t}):"Luggage"===e.value?g(vi,{size:t}):"Car"===e.value?g(Wr,{size:t}):"Person"===e.value?g(Xr,{size:t}):"Bicycle"===e.value?g(Vr,{size:t}):"Boat"===e.value?g(jr,{size:t}):"Animal"===e.value?g(Ci,{size:t}):"LicensePlate"===e.value?g(pi,{size:t}):"Smoke"===e.value?g(xn,{size:t}):"Fire"===e.value?g(oi,{size:t}):"HardHat"===e.value?g(si,{size:t}):"NoHardHat"===e.value?g(ci,{size:t}):"Vest"===e.value?g(xi,{size:t}):"NoVest"===e.value?g(ki,{size:t}):g(hi,{size:t})},kn=(e,t,r,i)=>{const n="detectedObject"===t.type||"eventType"===t.type;return f(rn,{style:{color:"detectedObject"===t.type?t.color:"black",borderRadius:n?4:void 0,backgroundColor:"detectedObject"===t.type&&r?`${t.color}33`:void 0,margin:n?"2px 0 0 2px":void 0,padding:n?"4px 8px":void 0,display:"camera"===t.type?"flex":"inline-flex",gap:4},...i,active:r,children:["camera"!==t.type?g(Ln,{data:t}):null,In(t)]},e)},Dn=(e,t,r)=>f(nn,{style:{"--color":"color"in t&&t.color?t.color:void 0,color:"color"in t&&t.color?"white":void 0,"--background-color":"color"in t&&t.color?"rgba(255, 255, 255, 0.7)":void 0},...r,children:[g(Ln,{data:t}),In(t)]},e),Mn=A((({camerasOnly:e,store:t})=>{const{cameras:r,eventSchema:i}=F(Ne),n=(()=>{if(!i)return[];if(e)return r.data.map((e=>({type:"camera",value:e.id,label:e.name})));const t=[{value:Nr.Loitering,label:"Loitering",type:"eventType"}];return[].concat(i.foundObjectTypesForSelect,t,r.data.map((e=>({type:"camera",value:e.id,label:e.name}))))})();return g(ln,{onChange:(e,r)=>{t.setFilters(e),r.open||"remove"!==r.action&&"clear"!==r.action||t.applyFilters()},onMenuClose:()=>{t.applyFilters()},options:n,renderOption:kn,values:t.filters,renderValue:Dn,keyExtractor:e=>`${e.type}:${e.value}`,placeholder:f(v,{children:[g(ii,{size:16})," ",Ie.t("filter")]})})}));function In(e){return"detectedObject"===e.type||"eventType"===e.type?"detectedObject"===e.type?Ie.t(`analytics.${e.label}`,{defaultValue:e.label.toLowerCase()}):Ie.t(`eventTypes.${e.label}`,{defaultValue:e.label}).toLowerCase():e.label}Mn.displayName="EventGridSelect";const Nn=A((({store:e})=>{const{date:t,setDate:r,clearDate:i,resetDate:n,sortDirection:o,toggleSorting:a,applyFilters:s}=e,{account:l}=F(Ne),{utc:c,hour12:d,startOfWeek:h}=l.preferences,[u,p]=T(!1),m=I((()=>((e,t,r,i=!0)=>{const n={...Bi,second:i?"numeric":void 0,hour12:r||void 0,hourCycle:r?void 0:"h23",timeZone:t?"UTC":void 0,timeZoneName:t?"short":void 0};return new Intl.DateTimeFormat(e,n)})(Ie.language,c,d)),[Ie.language,c,d]),v=f("div",{style:{flex:1,display:"flex",position:"relative"},children:[f(Ur,{className:"date-button",style:{flex:1,borderRadius:0,textTransform:"uppercase",flexDirection:"row"},onClick:()=>p(!u),children:[f("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"flex-start"},children:[t?g("label",{children:"ASC"===o?Ie.t("eventSearchFilter.after"):Ie.t("eventSearchFilter.before")}):null,g("span",{children:t?m.format(t):Ie.t("eventSearchFilter.recentEvents")})]}),g(Yr,{})]}),t?g(Ur,{className:"x-3deye-button--icon",style:{position:"absolute",right:32},onClick:i,children:g(Kr,{size:16})}):null]});return x((()=>{u||n()}),[u,n]),g("div",{className:"event-grid-datepicker",children:g("div",{style:{position:"relative"},children:g(qi,{target:v,opened:u,onOpenChange:p,withArrow:!0,className:"popover-datetimepicker",children:f("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[f(Xi,{value:o,onChange:a,children:[g(tn,{value:"DESC",children:Ie.t("eventSearchFilter.before")}),g(tn,{value:"ASC",children:Ie.t("eventSearchFilter.after")})]}),f("div",{style:{display:"flex",gap:"0.5rem"},children:[g(zi,{date:t,onChange:r,utc:c,startOfWeek:h}),g(Vi,{date:t,onChange:r,utc:c,hour12:d})]}),g(Ur,{onClick:()=>{s(),p(!1)},variant:"filled",fullWidth:!0,children:Ie.t("button.ok")})]})})})})}));Nn.displayName="EventGridDatepicker";const Sn=A(y.forwardRef((({data:e,draggableId:t,dropZoneId:r,children:i,onClick:n,onAuxClick:o,menuComponent:a},s)=>{const l=w(null),{ref:c,menuContext:d}=function(){const[e,t]=T(!1),[r,i]=T(),n=M((e=>{i(e||void 0)}),[]),[o]=T((()=>new Set)),[a]=T((()=>new Set)),s=I((()=>({subscribe:e=>(o.add(e),()=>o.delete(e)),onOpenChange:e=>(a.add(e),()=>a.delete(e)),setOpened:e=>{t(e);for(const t of a)t(e)}})),[]);return x((()=>{if(r)return r.addEventListener("contextmenu",e),()=>{r.removeEventListener("contextmenu",e)};function e(e){e.preventDefault();for(const t of o)t(e)}}),[r]),{ref:n,menuContext:s,opened:e}}();return f("div",{ref:ue(l,c,s),onDragStart:i=>{i.dataTransfer&&(i.dataTransfer.setData("x-3deye/event",t??`${e.id}`),i.dataTransfer.setData("x-3deye/camera",`${e.cameraId}`),i.dataTransfer.setData("x-3deye/starttime",e.startTime.toISOString()),r&&i.dataTransfer.setData(`x-3deye/dropzone-${r}`,""),i.dataTransfer.dropEffect="move")},className:"event-list-item",onClick:()=>n?.(e),onAuxClick:t=>o?.(t,e),draggable:!0,children:[i,a&&g(a,{ctx:d,data:e})]})})));Sn.displayName="EventListItem";const Fn=A((({data:e})=>{if("Temperature"!==e.type)return null;const t=JSON.parse(e.raw.data??"null"),r=Number.isInteger(t)?Number(t):t.t;return f("div",{className:"event-list-item__temperature",children:[g(Ti,{}),f("span",{children:[(r-273.15).toFixed(1),"°C"]})," / ",f("span",{children:[(9*r/5-459.67).toFixed(1)," °F"]})]})}));Fn.displayName="Temperature";var _n=Fn;const zn=A((({data:e,cameraNameHidden:t})=>{const r=F(Ne),{cameras:i}=r,n=i.loaded&&i.camerasById.get(e.cameraId)?.name||"...";return f("div",{className:"event-list-item-caption",children:[g("div",{className:"event-list-item__time",children:g(Cn,{from:e.startTime,to:e.endTime})}),t?null:f(v,{children:[g("div",{children:e.type}),g("div",{className:"event-list-item__camera-name",title:n,children:n})]}),+e.endTime-+e.startTime>0&&g("div",{className:"event-list-item__duration",children:kr(+e.endTime-+e.startTime,Ie.t)}),g(_n,{data:e})]})}));zn.displayName="EventListItemCaption";var Un=A((({url:e,noPreview:t,width:r})=>f(v,{children:[e?g("img",{style:{position:"absolute",width:"100%",height:"100%",top:0,left:0},src:e},e):null,g(he,{radius:r}),t?g("div",{className:"no-preview-overlay"}):null]})));const Hn=({className:e,style:t,box:{Top:r,Left:i,Right:n,Bottom:o}})=>g(v,{children:g("div",{className:e,style:{position:"absolute",top:100*r+"%",left:100*i+"%",bottom:100*(1-o)+"%",right:100*(1-n)+"%",...t}})});function On({style:e}){return f("div",{className:"frame",style:e,children:[g("div",{className:"corner-highlight-tl"}),g("div",{className:"corner-highlight-tr"}),g("div",{className:"corner-highlight-br"}),g("div",{className:"corner-highlight-bl"})]})}Hn.displayName="LicensePlateLpr";const Pn=b((({value:e})=>e?g(v,{children:e.split("").map(((e,t)=>(e=>{const t=e.charCodeAt(0);return t>=48&&t<=57})(e)?g("span",{className:"digit",children:e},`d${t}${e}`):g("span",{className:"char",children:e},`${t}${e}`)))}):null));Pn.displayName="LicensePlateNumber";const En=({detectedObject:e,height:t,width:r,url:i,thumbWidth:n,thumbHeight:o})=>{const{Type:a,Box:{Top:s,Left:l,Right:c,Bottom:d},Probability:h,Value:u}=e,p=w(null);L((()=>{if(!p.current)return;const e=p.current.getBoundingClientRect();let i=(l+c)/2*r-e.width/2,n=s*t-e.height-4;n<0&&(n=d*t+4),i<0&&(i=0),i>r-e.width&&(i=r-e.width),p.current.style.top=`${n}px`,p.current.style.left=`${i}px`}));const m={top:2};l>=1-c?m.left=2:m.right=2;const y=100/n/(c-l);return f(v,{children:[f("div",{ref:p,className:"event-list-item__license-plate-label trigger",title:`${a.toLowerCase()} ${Math.floor(100*h)}%`,children:[g("div",{style:{padding:4},children:g(Pn,{value:u})}),g("div",{className:"event-list-item__license-plate-label__caption",children:`${Math.floor(100*h)}%`})]}),g(Hn,{className:"event-list-item__license-plate-trigger trigger",box:e.Box}),f("div",{className:"event-list-item__license-plate preview",style:{overflow:"hidden",width:n*(c-l)*y,height:o*(d-s)*y+16,position:"absolute",...m},children:[g("img",{style:{width:n*y,height:o*y,transform:`translate(-${100*l}%, -${100*s}%)`},src:i}),g("div",{className:"plate-number",children:g(Pn,{value:u})}),g(On,{style:{height:o*(d-s)*y}})]})]})};function Vn(e,t,r,i){return e.Top<-i&&(e.Bottom=e.Bottom-e.Top+i,e.Top=-i),e.Left<-i&&(e.Right=e.Right-e.Left+i,e.Left=-i),e.Right+i>t&&(e.Left=e.Left-(e.Right-t)+i,e.Right=t-i),e.Bottom+i>r&&(e.Top=e.Top-(e.Bottom-r)+i,e.Bottom=r-i),e}function Bn({Top:e,Left:t,Bottom:r,Right:i},n,o,a,s){const l=s*e,c=s*(1-r);return l>o?[0,-1]:a*t>n?[-1,0]:a*(1-i)>n?[1,0]:c>o?[0,1]:[0,l>c?1:-1]}function jn(e,t){return{Top:e.Top+t[1],Left:e.Left+t[0],Bottom:e.Bottom+t[1],Right:e.Right+t[0]}}function Rn({Top:e,Left:t,Bottom:r,Right:i}){return[(t+i)/2,(e+r)/2]}function An(e,t){const[r,i]=Rn(e),[n,o]=Rn(t);return[n-r,o-i]}function $n(e,t){return!(e.Left>t.Right||e.Top>t.Bottom||e.Right<t.Left||e.Bottom<t.Top)}function Wn([e,t]){const r=Math.sqrt(e*e+t*t);return 0===r?[0,0]:[e/r,t/r]}En.displayName="LicensePlateHighlight";const Zn=A((({data:e,width:t,height:r})=>{const i=w(null),{eventSchema:n}=F(Ne),o=function(e){const t=[];for(const r of e)if("NoHardHat"===r.Type||"NoVest"===r.Type){const e=t.findIndex((e=>{return"Person"===e.Type&&(t=e.Box,i=r.Box,t.Left===i.Left&&t.Top===i.Top&&t.Right===i.Right&&t.Bottom===i.Bottom);var t,i}));if(-1!==e){const i={...t[e]};t[e]=i,i.attrs??=[],i.attrs.push(r)}else t.push(r)}else t.push(r);return t}(e);L((()=>{if(!i.current)return;const e=[],n=[];for(let a=0;a<o.length;a++){const s=i.current.children[2*a+1],l=o[a].Box;e.push({Top:l.Top*r,Left:l.Left*t,Bottom:l.Bottom*r,Right:l.Right*t});const[c,d]=Rn(e[a]),{width:h,height:u}=s.getBoundingClientRect(),p=Bn(l,h,u,t,r);n.push(jn({Top:d-u/2-4,Left:c-h/2-4,Bottom:d+u/2+4,Right:c+h/2+4},p))}let a=!0,s=0;for(;a;){if(a=!1,s++>1e3){console.warn("Reached max iterations for label positioning");break}for(let t=0;t<o.length;t++){const r=n[t],i=[0,0];for(let s=0;s<o.length;s++){const o=e[s],l=n[s];if($n(r,o)){const e=An(o,r);i[0]=i[0]+e[0],i[1]=i[1]+e[1],a=!0}if(s!==t&&$n(r,l)){const e=An(l,r);i[0]=i[0]+e[0],i[1]=i[1]+e[1],0===i[0]&&0===i[1]&&(i[0]=2*Math.random()-1,i[1]=2*Math.random()-1),a=!0}}[i[0],i[1]]=Wn(i),r.Top+=i[1],r.Left+=i[0],r.Bottom+=i[1],r.Right+=i[0]}}for(let a=0;a<o.length;a++){const o=i.current.children[2*a+1],{Top:s,Left:l}=Vn(n[a],t,r,4);o.style.top=`${s+4}px`,o.style.left=`${l+4}px`;const c=l+4,d=s+4,h=c+n[a].Right-n[a].Left-8,u=d+n[a].Bottom-n[a].Top-8;o.dataset.position=Object.entries({bottom:d>e[a].Bottom,top:u<e[a].Top,right:c>e[a].Right,left:h<e[a].Left}).find((([,e])=>!0===e))?.[0]||"top"}}),[o,t,r]);const a=e=>n.colorsByFoundObjectType.get(e);return g("div",{ref:i,children:o.map(((e,t)=>{const r="Car"===e.Type?e.Specialization??e.SpecialPurpose??e.BodyType??e.Type:e.Type;return f(y.Fragment,{children:[g(Hn,{box:e.Box,style:{outline:`2px solid ${a(e.Type)??""}`}}),f("div",{className:"event-list-item__detected-object-label",title:`${e.Type.toLowerCase()} ${Math.floor(100*e.Probability)}%`,style:{"--detected-object-color":a(e.Type)??"gray"},children:[f("div",{style:{display:"flex",alignItems:"center",gap:8,justifyContent:"space-between",lineHeight:"24px"},children:[g("div",{children:Ie.t(`analytics.${r}`,{defaultValue:r.toLowerCase()})}),f("div",{style:{fontSize:"0.675rem",opacity:.75,marginTop:1},children:[Math.floor(100*e.Probability),"%"]})]}),e.attrs?.length?g("div",{className:"event-list-item__detected-object-label__attrs",children:e.attrs?.map((e=>f(v,{children:[g("div",{style:{color:a(e.Type)},children:Ie.t(`analytics.${e.Type}`,{defaultValue:e.Type.toLowerCase()})}),f("div",{style:{opacity:.75},children:[Math.floor(100*e.Probability),"%"]})]})))}):null]})]},t)}))})}));Zn.displayName="DetectedObjects";var Yn=Zn;const qn=({face:{Name:e,Box:t,Probability:r},url:i,thumbWidth:n,thumbHeight:o,width:a,height:s})=>{const{Top:l,Left:c,Right:d,Bottom:h}=t,u=100/n/(d-c),p={top:2},m=w(null);return L((()=>{if(!m.current)return;const{width:e,height:r}=m.current.getBoundingClientRect(),i=Bn(t,e,r,a,s);i[0]=i[0]*(e+(d-c)*a)/2,i[1]=i[1]*(r+(h-l)*s)/2;const n=Vn(jn({Top:(l+h)/2*s-r/2,Left:(c+d)/2*a-e/2,Bottom:(l+h)/2*s+r/2,Right:(c+d)/2*a+e/2},i),a,s,0);m.current.style.top=`${n.Top+2*Math.sign(i[1])}px`,m.current.style.left=`${n.Left+2*Math.sign(i[0])}px`})),c>=1-d?p.left=2:p.right=2,f(v,{children:[f("div",{ref:m,className:"event-list-item__detected-object-label trigger",title:`${e} ${Math.floor(100*r)}%`,children:[g("div",{style:{padding:4,display:"flex",alignItems:"center",maxWidth:120,whiteSpace:"break-spaces"},children:e}),f("div",{className:"event-list-item__detected-object-label__caption",style:{color:"black",backgroundColor:"orange"},children:[Math.floor(100*r),"%"]})]}),g(Hn,{className:"trigger",box:t,style:{outline:"1px solid orange"}}),f("div",{className:"event-list-item-face preview",style:{overflow:"hidden",width:n*(d-c)*u,height:o*(h-l)*u,...p},children:[g("img",{alt:"Face",style:{width:n*u,height:o*u,transform:`translate(-${100*c}%, -${100*l}%)`},src:i}),g(On,{})]})]})};qn.displayName="FaceHighlight";const Gn=A(y.forwardRef((({data:e,draggableId:t,dropZoneId:r,width:i,height:n,acknowledgedHidden:o,cameraNameHidden:a,onClick:s,onAuxClick:l,menuComponent:c,children:d},h)=>{const u=F(Ne),{eventSchema:p}=u,[m,v]=function(e){const[t,r]=T(null),i=F(Ne),{cameras:n,thumbnails:o}=i;x((()=>{if(e.thumbnailUrl)return void r(null);const t=o.fetchThumbnail(e.cameraId,e.startTime,e.startTime).subscribe((e=>{r(e||null)}));return()=>t.unsubscribe()}),[e.id]);let a="",s=!1;return e.thumbnailUrl?a=e.thumbnailUrl:null===t&&n.loaded?(a=n.camerasById.get(e.cameraId)?.imageUrl||"",s=!0):t&&(a=t.url),[a,s]}(e);let y=[],C=null,b=null;if(e.detectedObjects.length){const{thumbnailWidth:t,thumbnailHeight:r}=e;y=e.detectedObjects.filter((({Type:e})=>p.foundObjectTypes.includes(e)&&"LicensePlate"!==e)),C=e.detectedObjects.filter((e=>"LicensePlate"===e.Type)).map(((e,o)=>g(En,{detectedObject:e,width:i,height:n,thumbWidth:t,thumbHeight:r,url:m},o)))}if(e.faces){const{thumbnailWidth:t,thumbnailHeight:r}=e;b=e.faces.map(((e,o)=>g(qn,{face:e,url:m,thumbWidth:t,thumbHeight:r,width:i,height:n},o)))}return f(Sn,{ref:h,draggableId:t,dropZoneId:r,onClick:s,onAuxClick:l,data:e,width:i,height:n,menuComponent:c,children:[f("div",{style:{position:"absolute",top:0,left:0,bottom:0,right:0},children:[g(Un,{url:m,noPreview:v,width:i}),g(Yn,{data:y,width:i,height:n}),C,b,e.acknowledged&&!o?g("div",{className:"acknowledged-overlay",children:Ie.t("event.acknowledged")}):null,g(zn,{data:e,cameraNameHidden:a})]}),d]})})));Gn.displayName="EventItem";const Qn=A((({columnIndex:e,rowIndex:t,style:r,store:i,columnCount:n,eventRenderer:o})=>{const a=t*n+e,s=i.data[a];return a===i.data.length?i.error?g("div",{style:r,children:g("div",{style:{position:"absolute",inset:0,display:"grid",placeItems:"center"},children:f("div",{style:{textAlign:"center"},children:[g("div",{children:"Couldn't fetch more data"}),g(Ur,{onClick:i.loadMore,children:"Retry"})]})})}):i.pageInfo?.haveMore?g("div",{style:r,children:g("div",{style:{position:"absolute",inset:0,display:"grid",placeItems:"center"},children:g(Gi,{size:32})})}):g("div",{style:r}):!s&&i.pageInfo?.haveMore?g("div",{style:r}):g("div",s?{style:r,children:g($i,{children:o({data:s,width:r.width,height:r.height})})}:{style:r})})),Kn=A((({store:e,scrollWidth:t,onClick:r})=>e.pendingData.length?g("div",{style:{position:"absolute",top:0,left:0,right:t,pointerEvents:"none",textAlign:"center",padding:8},children:g(Ur,{className:"x-3deye-button--overlay",style:{background:"rgba(0, 0, 0, 0.75)",padding:"8px 16px",backdropFilter:"blur(2px)",borderRadius:32,pointerEvents:"auto"},onClick:r,children:Ie.t("showEvents",{count:e.pendingData.length})})}):null)),Jn=A((({store:e,width:t,height:r,captionHeight:i=0,columnsCount:n=0,minColumnWidth:o,aspectRatio:a=16/9,onEventClick:s,onEventAuxClick:l,eventRenderer:c})=>{const d=w(null),h=()=>{d.current&&(e.setLiveUpdateMode("auto"),d.current.scrollTop=0)};if(x((()=>j((()=>e.loading||!e.data.length),(e=>e&&h()))),[]),e.error&&!e.data.length)return g("div",{style:{flex:1,display:"flex",justifyContent:"center",alignItems:"center"},children:f("div",{style:{textAlign:"center"},children:[g("div",{children:"Couldn't fetch data"}),g(Ur,{onClick:e.reload,children:"Retry"})]})});if(e.loading)return g("div",{style:{flex:1,display:"flex",justifyContent:"center",alignItems:"center"},children:g(Gi,{})});if(!e.data.length)return g("div",{style:{flex:1,display:"flex",justifyContent:"center",alignItems:"center"},children:Ie.t("noEventsFound")});return g(Xn,{...{store:e,width:t,columnsCount:n,minColumnWidth:o,aspectRatio:a,captionHeight:i,height:r,onEventClick:s,onEventAuxClick:l,eventRenderer:c,containerRef:d,resetScroll:h}})}));Jn.displayName="EventGrid";const Xn=A((({store:e,width:t,height:r,captionHeight:i=0,columnsCount:n=0,minColumnWidth:o=320,aspectRatio:a,containerRef:s,onEventClick:l,onEventAuxClick:c,eventRenderer:d=({data:e,width:t,height:r})=>g(Gn,{data:e.data,cameraNameHidden:!1,onClick:l,onAuxClick:c,width:t,height:r}),resetScroll:h})=>{const u=Math.floor(t/o)||1,p=t/u/a+i,m=u*Math.floor(r/p)>=e.data.length?0:Lr(),v=Math.min(n,e.data.length)||Math.max(1,Math.floor((t-m)/o));let y=Math.ceil(e.data.length/v);const C=(t-m-2*(v-1))/v,b=C/a+i;e.pageInfo?.haveMore&&y*v===e.data.length&&y++;const{parentRef:T,getItems:w,getTotalSize:L}=gn({count:y,overscan:5,itemSize:b,spacing:2}),{parentRef:k,getItems:D,getTotalSize:M}=gn({count:v,overscan:5,itemSize:C,horizontal:!0,spacing:2}),I=w(),N=D();x((()=>{e.error||e.pageInfo?.haveMore&&(e.loading||I.length&&I.at(-1).idx+1===y&&e.loadMore())}),[e.error,e.pageInfo?.haveMore,I]);const S=I.flatMap((({idx:t,size:r,start:i})=>N.map((({idx:n,size:o,start:a})=>{const s=t*v+n;return s>e.data.length?null:s!==e.data.length||e.pageInfo?.haveMore?g(Qn,{columnIndex:n,rowIndex:t,columnCount:v,style:{position:"absolute",top:0,left:0,height:r,width:o,transform:`translate(${a}px, ${i}px)`,display:"flex"},store:e,eventRenderer:d},e.data[s]?`${e.data[s].data.id}-${e.data[s].objectIdx}`:"loading"):null}))));return f("div",{style:{width:"100%",height:"100%",overflow:"hidden",position:"relative"},children:[g("div",{ref:ue(s,T,k),style:{width:t,height:r,overflow:"auto"},onScroll:t=>{const{scrollTop:r}=t.target;"disabled"!==e.liveUpdateMode&&e.setLiveUpdateMode(r>=1||e.pendingData.length?"manual":"auto")},children:g("div",{style:{position:"relative",height:L(),width:M()},children:S})}),g(Kn,{store:e,scrollWidth:m,onClick:()=>{e.flushUpdates(),h()}})]})})),eo=({onEventClick:e,style:t,...r})=>{const i=F(_)??z,[n,o]=T(),{ref:a,width:s,height:l}=(e=>{const{ref:t,width:r,height:i}=U(),[n,o]=T(0);return x((()=>{o((e=>e+1))}),e),{ref:t,width:r,height:i,fix:n}})([n]);return x((()=>(n?.dispose(),R((()=>i.initialized),(()=>{const e=new Tn(i.events);e.initWith(i.api),e.load(),o(e)})))),[i]),g(Ne.Provider,{value:i,children:n?f("div",{style:{display:"flex",flexDirection:"column",textAlign:"left",...t},...r,children:[g("div",{style:{padding:10},children:g(Mn,{store:n})}),g(Nn,{store:n}),n.someAnalyticsFilterSelected&&f(v,{children:[g(yn,{getter:n.getProbabilityThreshold,setter:n.setProbabilityThreshold}),g(Mi,{value:n.colors,toggle:n.toggleColor,clear:n.clearColors})]}),g("div",{ref:a,style:{flex:1,display:"flex"},children:g(Jn,{minColumnWidth:Number.POSITIVE_INFINITY,store:n.loader,width:s,height:l,eventRenderer:({data:t,width:r,height:i})=>g(Gn,{data:t.data,cameraNameHidden:!1,onClick:e,width:r,height:i})})})]}):null})};eo.displayName="EventList";var to=eo;(e=>{if(e&&Object.assign(Me,e),Ie.isInitialized){if(Me.resources)for(const e of Object.keys(Me.resources))Ie.addResourceBundle(e,"translation",Me.resources[e].translation,!0);else console.warn("i18n is already initialized");return t(Ie.t)}r(Ie.init(Me))})({resources:{en:{translation:De}}});export{Tn as AllEventsStore,to as default};
|
package/dist/tsdoc-metadata.json
CHANGED
package/package.json
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@3deye-toolkit/react-event-list",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.10",
|
|
4
4
|
"module": "dist/react-event-list.js",
|
|
5
5
|
"types": "dist/react-event-list.d.ts",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist"
|
|
8
8
|
],
|
|
9
9
|
"dependencies": {
|
|
10
|
-
"@3deye-toolkit/core": "0.0.
|
|
11
|
-
"@floating-ui/react": "^0.
|
|
12
|
-
"@mantine/hooks": "^
|
|
10
|
+
"@3deye-toolkit/core": "0.0.10",
|
|
11
|
+
"@floating-ui/react": "^0.27.15",
|
|
12
|
+
"@mantine/hooks": "^8.2.3",
|
|
13
13
|
"@seznam/compose-react-refs": "^1.0.6",
|
|
14
|
-
"clsx": "^2.
|
|
14
|
+
"clsx": "^2.1.1",
|
|
15
15
|
"date-fns": "^2.30.0",
|
|
16
|
-
"i18next": "
|
|
16
|
+
"i18next": "25.3.4",
|
|
17
17
|
"lodash": "4.17.21",
|
|
18
18
|
"memoize-one": "^6.0.0",
|
|
19
|
-
"mobx": "
|
|
20
|
-
"mobx-react-lite": "^
|
|
19
|
+
"mobx": "6",
|
|
20
|
+
"mobx-react-lite": "^4.1.0",
|
|
21
21
|
"react-ink": "^6.5.4",
|
|
22
|
-
"rxjs": "
|
|
22
|
+
"rxjs": "7"
|
|
23
23
|
},
|
|
24
24
|
"peerDependencies": {
|
|
25
|
-
"react": "^16.8.0 || ^17 || ^18",
|
|
26
|
-
"react-dom": "^16.8.0 || ^17 || ^18"
|
|
25
|
+
"react": "^16.8.0 || ^17 || ^18 || ^19",
|
|
26
|
+
"react-dom": "^16.8.0 || ^17 || ^18 || ^19"
|
|
27
27
|
},
|
|
28
28
|
"publishConfig": {
|
|
29
29
|
"access": "public",
|