@@ -113,33 +113,34 @@ export class FcMonthCalendarElement extends MonthCalendarMixin {
113113 e . forEach ( item => item . removeAttribute ( 'class' ) ) ;
114114 }
115115
116- ready ( ) {
117- super . ready ( ) ;
118- let styles = `
119- [part='date'][class]::before {
120- box-shadow: none;
121- }
122-
123- [part='date'][selected] {
124- color: unset;
125- }
126-
127- [part='date'][selected]::before {
128- background-color: unset;
129- border: 1px solid var(--lumo-primary-color);
130- }
131-
132- [part~=month-header] {
133- display: var(--__month-calendar-header-display, block);
134- }
135- ` ;
136-
137- this . $ . element . shadowRoot . querySelector ( "style" ) . innerHTML += styles ;
138- }
139-
140116 connectedCallback ( ) {
141117 super . connectedCallback ( ) ;
142118 this . addEventListener ( "selected-date-changed" , this . _onSelectedDateChanged ) ;
119+ const updateComplete = this . $ . element . updateComplete || Promise . resolve ( ) ;
120+ updateComplete . then ( ( ) => {
121+ if ( ! this . $ . element . shadowRoot . querySelectorAll ( "style[data='fc-component-styles']" ) . length ) {
122+ let style = document . createElement ( "style" ) ;
123+ style . setAttribute ( "data" , "fc-component-styles" ) ;
124+ style . innerHTML += `
125+ [part='date'][class]::before {
126+ box-shadow: none;
127+ }
128+
129+ [part='date'][selected] {
130+ color: unset;
131+ }
132+
133+ [part='date'][selected]::before {
134+ background-color: unset;
135+ border: 1px solid var(--lumo-primary-color);
136+ }
137+
138+ [part~=month-header] {
139+ display: var(--__month-calendar-header-display, block);
140+ }` ;
141+ this . $ . element . shadowRoot . append ( style ) ;
142+ }
143+ } ) ;
143144 }
144145
145146 disconnectedCallback ( ) {
0 commit comments