import {nativeVlElement, define} from '/node_modules/vl-ui-core/dist/vl-core.js';
/**
* VlDescriptionData
* @class
* @classdesc Gebruik de description data component om meer informatie te geven over de inhoud op de pagina, bvb over een contactpersoon, een entiteit of een publicatie.
*
* @extends HTMLDivElement
* @mixes nativeVlElement
*
* @see {@link https://www.github.com/milieuinfo/webcomponent-vl-ui-description-data/releases/latest|Release notes}
* @see {@link https://www.github.com/milieuinfo/webcomponent-vl-ui-description-data/issues|Issues}
* @see {@link https://webcomponenten.omgeving.vlaanderen.be/demo/vl-description-data.html|Demo}
*
*/
export class VlDescriptionData extends nativeVlElement(HTMLDivElement) {
connectedCallback() {
this.classList.add('vl-description-data');
this.__labels.forEach((label) => {
label.classList.add('vl-description-data__label');
label.parentElement.classList.add('vl-description-data-block');
});
this.__values.forEach((label) => {
label.classList.add('vl-description-data__value');
label.parentElement.classList.add('vl-description-data-block');
});
}
get __descriptionDataBlocks() {
return this.querySelectorAll('.vl-description-data-block');
}
get __labels() {
return this.querySelectorAll('[data-vl-label]');
}
get __values() {
return this.querySelectorAll('[data-vl-value]');
}
}
define('vl-description-data', VlDescriptionData, {extends: 'div'});