11import type { LogViewerDateRange , UmbLogViewerWorkspaceContext } from '../workspace/logviewer-workspace.context.js' ;
22import { UMB_APP_LOG_VIEWER_CONTEXT } from '../workspace/logviewer-workspace.context-token.js' ;
33import { UmbTextStyles } from '@umbraco-cms/backoffice/style' ;
4- import { css , html , customElement , property , queryAll , state } from '@umbraco-cms/backoffice/external/lit' ;
4+ import { css , html , customElement , property , state } from '@umbraco-cms/backoffice/external/lit' ;
55import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element' ;
66import { query as getQuery , path , toQueryString } from '@umbraco-cms/backoffice/router' ;
7+ import type { UUIInputEvent } from '@umbraco-cms/backoffice/external/uui' ;
78
89@customElement ( 'umb-log-viewer-date-range-selector' )
910export class UmbLogViewerDateRangeSelectorElement extends UmbLitElement {
@@ -13,26 +14,18 @@ export class UmbLogViewerDateRangeSelectorElement extends UmbLitElement {
1314 @state ( )
1415 private _endDate = '' ;
1516
16- @queryAll ( 'input' )
17- private _inputs ! : NodeListOf < HTMLInputElement > ;
18-
1917 @property ( { type : Boolean , reflect : true } )
2018 horizontal = false ;
2119
2220 #logViewerContext?: UmbLogViewerWorkspaceContext ;
2321
2422 constructor ( ) {
2523 super ( ) ;
26- this . addEventListener ( 'input' , this . #setDates) ;
2724 this . consumeContext ( UMB_APP_LOG_VIEWER_CONTEXT , ( instance ) => {
2825 this . #logViewerContext = instance ;
2926 this . #observeStuff( ) ;
3027 } ) ;
3128 }
32- override disconnectedCallback ( ) : void {
33- super . disconnectedCallback ( ) ;
34- this . removeEventListener ( 'input' , this . #setDates) ;
35- }
3629
3730 #observeStuff( ) {
3831 if ( ! this . #logViewerContext) return ;
@@ -46,14 +39,17 @@ export class UmbLogViewerDateRangeSelectorElement extends UmbLitElement {
4639 ) ;
4740 }
4841
49- #setDates( ) {
50- this . _inputs . forEach ( ( input ) => {
51- if ( input . id === 'start-date' ) {
52- this . _startDate = input . value ;
53- } else if ( input . id === 'end-date' ) {
54- this . _endDate = input . value ;
55- }
56- } ) ;
42+ #setStartDate( e : UUIInputEvent ) {
43+ this . _startDate = e . target . value as string ;
44+ this . #updateFiltered( ) ;
45+ }
46+
47+ #setEndDate( e : UUIInputEvent ) {
48+ this . _endDate = e . target . value as string ;
49+ this . #updateFiltered( ) ;
50+ }
51+
52+ #updateFiltered( ) {
5753 this . #logViewerContext?. setDateRange ( { startDate : this . _startDate , endDate : this . _endDate } ) ;
5854
5955 const query = getQuery ( ) ;
@@ -71,9 +67,7 @@ export class UmbLogViewerDateRangeSelectorElement extends UmbLitElement {
7167 <div class= "input-container" >
7268 <uui- label for = "start-date" > From : </ uui- label>
7369 <umb- input- date
74- @click = ${ ( e : Event ) => {
75- ( e . target as HTMLInputElement ) . showPicker ( ) ;
76- } }
70+ @change = ${ this . #setStartDate}
7771 id= "start-date"
7872 type = "date"
7973 label = "From"
@@ -83,9 +77,7 @@ export class UmbLogViewerDateRangeSelectorElement extends UmbLitElement {
8377 <div class= "input-container" >
8478 <uui- label for = "end-date" > To : </ uui- label>
8579 <umb- input- date
86- @click = ${ ( e : Event ) => {
87- ( e . target as HTMLInputElement ) . showPicker ( ) ;
88- } }
80+ @change = ${ this . #setEndDate}
8981 id= "end-date"
9082 type = "date"
9183 label = "To"
0 commit comments