UNPKG

@kit-data-manager/pid-component

Version:

The PID-Component is a web component that can be used to evaluate and display FAIR Digital Objects, PIDs, ORCiDs, and possibly other identifiers in a user-friendly way. It is easily extensible to support other identifier types.

45 lines (44 loc) 1.65 kB
/*! * * Copyright 2024-2026 Karlsruhe Institute of Technology. * * 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 * * https://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 { h } from "@stencil/core"; import { GenericIdentifierType } from "../../utils/GenericIdentifierType"; export class EmailType extends GenericIdentifierType { getSettingsKey() { return 'EmailType'; } quickCheck() { EmailType.FORMAT_REGEX.lastIndex = 0; return this.value.length > 0 && EmailType.FORMAT_REGEX.test(this.value); } async hasMeaningfulInformation() { return Promise.resolve(true); } init() { return Promise.resolve(); } renderPreview() { return (h("span", { class: `inline-flex gap-2 font-mono text-sm text-blue-400 hover:text-blue-500` }, this.value .split(new RegExp(/\s*,\s*/)) .filter(email => email.length > 0) .map(email => { return (h("a", { href: 'mailto:' + email, rel: 'noopener noreferrer', target: "_blank" }, email)); }))); } } EmailType.FORMAT_REGEX = /^(([\w\-.]+@([\w-]+\.)+[\w-]{2,})(\s*,\s*)?)+$/gm; //# sourceMappingURL=EmailType.js.map