/**
* 3D Foundation Project
* Copyright 2025 Smithsonian Institution
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import CVTaskProvider from "../../components/CVTaskProvider";
import sanitizeHtml from 'sanitize-html';
import DocumentView, { customElement, html } from "../explorer/DocumentView";
import CVDocument from "client/components/CVDocument";
import { ILineEditChangeEvent } from "client/../../libs/ff-ui/source/LineEdit";
////////////////////////////////////////////////////////////////////////////////
@customElement("sv-collection-panel")
export default class CollectionPanel extends DocumentView
{
protected get taskProvider() {
return this.system.getMainComponent(CVTaskProvider);
}
protected firstConnected()
{
this.classList.add("sv-panel", "sv-collection-panel");
}
protected render()
{
const languageManager = this.activeDocument.setup.language;
const meta = this.activeDocument.meta;
let customMetas = [];
if(meta) {
meta.collection.ids.forEach(id => {
if(!["title","titles","intros"].includes(id)) {
customMetas.push(html`