2023-04-18 17:20:02 -04:00
|
|
|
import {Component} from './component';
|
2020-01-15 15:18:02 -05:00
|
|
|
|
2022-11-15 06:24:31 -05:00
|
|
|
export class DetailsHighlighter extends Component {
|
|
|
|
|
|
|
|
setup() {
|
|
|
|
this.container = this.$el;
|
2020-01-15 15:18:02 -05:00
|
|
|
this.dealtWith = false;
|
2022-11-15 06:24:31 -05:00
|
|
|
|
|
|
|
this.container.addEventListener('toggle', this.onToggle.bind(this));
|
2020-01-15 15:18:02 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
onToggle() {
|
|
|
|
if (this.dealtWith) return;
|
|
|
|
|
2022-11-15 06:24:31 -05:00
|
|
|
if (this.container.querySelector('pre')) {
|
2022-02-08 06:10:01 -05:00
|
|
|
window.importVersioned('code').then(Code => {
|
2022-11-15 06:24:31 -05:00
|
|
|
Code.highlightWithin(this.container);
|
2022-02-08 06:10:01 -05:00
|
|
|
});
|
|
|
|
}
|
2020-01-15 15:18:02 -05:00
|
|
|
this.dealtWith = true;
|
|
|
|
}
|
2023-04-18 17:20:02 -04:00
|
|
|
|
|
|
|
}
|