@archoleat/validate-font-file-name
TypeScript icon, indicating that this package has built-in type declarations

1.0.10 • Public • Published

Validate Font File Name

NPM Version NPM Downloads CodeQL Specs Commitlint Editorconfig Prettier ESLint Markdown ESM Only

Table of Contents

Installation

# pnpm
pnpm i -D @archoleat/validate-font-file-name
# npm
npm i -D @archoleat/validate-font-file-name
# yarn
yarn add -D @archoleat/validate-font-file-name

Usage

import { validateFontFileName } from '@archoleat/validate-font-file-name';

const validFontFileName = 'src/fonts/OpenSans-Regular.woff2';
const invalidFontFileName = 'src/fonts/OpenSans.woff2';

// returns: true
console.log(await validateFontFileName(validFontFileName));

// returns: 'OpenSans.woff2' doesn't match with '/(^[A-Z][a-z]+([A-Z][a-z]+)?)-(Thin|Hairline|ExtraLight|UltraLight|Light|Regular|Medium|SemiBold|DemiBold|Bold|ExtraBold|UltraBold|Black|Heavy|ExtraBlack|UltraBlack)\.(otf|ttf|woff|woff2)$/'.
console.log(await validateFontFileName(invalidFontFileName));

or

import { validateFontFileName } from '@archoleat/validate-font-file-name';

const validFontFileName = 'OpenSans-Regular.woff2';
const invalidFontFileName = 'OpenSans.woff2';

// returns: true
console.log(await validateFontFileName(validFontFileName));

// returns: 'OpenSans.woff2' doesn't match with '/(^[A-Z][a-z]+([A-Z][a-z]+)?)-(Thin|Hairline|ExtraLight|UltraLight|Light|Regular|Medium|SemiBold|DemiBold|Bold|ExtraBold|UltraBold|Black|Heavy|ExtraBlack|UltraBlack)\.(otf|ttf|woff|woff2)$/'.
console.log(await validateFontFileName(invalidFontFileName));

Your Regex

You can also specify your pattern:

import { validateFontFileName } from '@archoleat/validate-font-file-name';

// You can also specify `new RegExp()` and a regular `string`
const yourPattern = /OpenSans-regular/;

const validFontFileName = 'OpenSans-regular';
const invalidFontFileName = 'OpenSans.woff2';

// returns: true
console.log(await validateFontFileName(validFontFileName, yourPattern));

// returns: 'OpenSans.woff2' doesn't match with '/OpenSans-regular/'.
console.log(await validateFontFileName(invalidFontFileName, yourPattern));

Naming Convention

The font family and font weight must be in Pascal Case and separated by a hyphen.

Extensions that are allowed: otf, ttf, woff, woff2.

{FontFamily}-{FontWeight}.{ext}

Contributing

Please read CONTRIBUTING to start contributing.

License

This project is licensed under the MIT license.

Package Sidebar

Install

npm i @archoleat/validate-font-file-name

Weekly Downloads

12

Version

1.0.10

License

MIT

Unpacked Size

9.35 kB

Total Files

5

Last publish

Collaborators

  • nikkeyl