UNPKG

@platform/react.ssr

Version:

A lightweight SSR (server-side-rendering) system for react apps bundled with ParcelJS and hosted on S3.

39 lines (38 loc) 1.2 kB
import { jsYaml, fs, log, semver } from './libs'; export const asString = (value) => (typeof value === 'string' ? value : '').trim(); export function parseYaml(text) { try { const data = jsYaml.safeLoad(text); return { ok: true, data }; } catch (error) { return { ok: false, error }; } } export function stripHttp(input) { return asString(input) .replace(/^https/, '') .replace(/^http/, '') .replace(/^\:\/\//, ''); } export function stripSlashes(input) { return asString(input) .replace(/^\/*/, '') .replace(/\/*$/, ''); } export function formatPath(path) { const file = fs.basename(path); const dir = fs.dirname(path); return log.gray(`${dir}/${log.cyan(file)}`); } export function firstSemver(...versionOrPath) { const values = versionOrPath .filter(value => typeof value === 'string') .map(value => value.trim()) .filter(value => Boolean(value)) .map(value => fs.basename(value)); return values.find(value => semver.valid(value)); } export function isDomainRegex(domain) { return domain ? domain.startsWith('/') && domain.endsWith('/') : false; }