import './options.css'; import React from 'dom-chef'; import select from 'select-dom'; import linkifyUrls from 'linkify-urls'; import fitTextarea from 'fit-textarea'; import linkifyIssues from 'linkify-issues'; import indentTextarea from 'indent-textarea'; import {applyToLink as shortenLink} from 'shorten-repo-url'; import editTextNodes from './libs/linkify-text-nodes'; import parseBackticks from './libs/parse-backticks'; import {getAllOptions} from './options-storage'; function parseDescription(description: string): DocumentFragment { const descriptionFragment = parseBackticks(description); editTextNodes(linkifyUrls, descriptionFragment); editTextNodes(linkifyIssues, descriptionFragment); for (const a of select.all('a', descriptionFragment)) { shortenLink(a, location.href); } return descriptionFragment; } function buildFeatureCheckbox({name, description, screenshot, disabled}: FeatureInfo): HTMLElement { // `undefined` disconnects it from the options const key = disabled ? undefined : `feature:${name}`; const parsedDescription = parseDescription( (disabled ? `Disabled because of ${disabled}; \n` : '') + description ); return (
Domain selector: {dropdown}
,