mirror of
https://github.com/garraflavatra/alphabets.git
synced 2025-07-03 03:05:10 +00:00
Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
c836490f91 | |||
2c77825857 | |||
04af1db9d3 | |||
3eb3b169d1 | |||
3f693a6e5c | |||
b394f196aa | |||
67b30fc11f | |||
6c383e2781 | |||
d20e28657f | |||
06fee1f969 | |||
68c66bdb4f |
11
.github/dependabot.yml
vendored
Normal file
11
.github/dependabot.yml
vendored
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
# To get started with Dependabot version updates, you'll need to specify which
|
||||||
|
# package ecosystems to update and where the package manifests are located.
|
||||||
|
# Please see the documentation for all configuration options:
|
||||||
|
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
|
||||||
|
|
||||||
|
version: 2
|
||||||
|
updates:
|
||||||
|
- package-ecosystem: "npm" # See documentation for possible values
|
||||||
|
directory: "/" # Location of package manifests
|
||||||
|
schedule:
|
||||||
|
interval: "daily"
|
30
.github/workflows/test.yml
vendored
Normal file
30
.github/workflows/test.yml
vendored
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
|
||||||
|
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
|
||||||
|
|
||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ main ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ main ]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
node-version: [10.x, 12.x, 14.x, 15.x]
|
||||||
|
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Use Node.js ${{ matrix.node-version }}
|
||||||
|
uses: actions/setup-node@v2
|
||||||
|
with:
|
||||||
|
node-version: ${{ matrix.node-version }}
|
||||||
|
- run: npm ci
|
||||||
|
- run: npm run build --if-present
|
||||||
|
- run: npm test
|
@ -2,3 +2,4 @@
|
|||||||
. "$(dirname "$0")/_/husky.sh"
|
. "$(dirname "$0")/_/husky.sh"
|
||||||
|
|
||||||
npm run build
|
npm run build
|
||||||
|
npm test
|
||||||
|
128
CODE_OF_CONDUCT.md
Normal file
128
CODE_OF_CONDUCT.md
Normal file
@ -0,0 +1,128 @@
|
|||||||
|
# Contributor Covenant Code of Conduct
|
||||||
|
|
||||||
|
## Our Pledge
|
||||||
|
|
||||||
|
We as members, contributors, and leaders pledge to make participation in our
|
||||||
|
community a harassment-free experience for everyone, regardless of age, body
|
||||||
|
size, visible or invisible disability, ethnicity, sex characteristics, gender
|
||||||
|
identity and expression, level of experience, education, socio-economic status,
|
||||||
|
nationality, personal appearance, race, religion, or sexual identity
|
||||||
|
and orientation.
|
||||||
|
|
||||||
|
We pledge to act and interact in ways that contribute to an open, welcoming,
|
||||||
|
diverse, inclusive, and healthy community.
|
||||||
|
|
||||||
|
## Our Standards
|
||||||
|
|
||||||
|
Examples of behavior that contributes to a positive environment for our
|
||||||
|
community include:
|
||||||
|
|
||||||
|
* Demonstrating empathy and kindness toward other people
|
||||||
|
* Being respectful of differing opinions, viewpoints, and experiences
|
||||||
|
* Giving and gracefully accepting constructive feedback
|
||||||
|
* Accepting responsibility and apologizing to those affected by our mistakes,
|
||||||
|
and learning from the experience
|
||||||
|
* Focusing on what is best not just for us as individuals, but for the
|
||||||
|
overall community
|
||||||
|
|
||||||
|
Examples of unacceptable behavior include:
|
||||||
|
|
||||||
|
* The use of sexualized language or imagery, and sexual attention or
|
||||||
|
advances of any kind
|
||||||
|
* Trolling, insulting or derogatory comments, and personal or political attacks
|
||||||
|
* Public or private harassment
|
||||||
|
* Publishing others' private information, such as a physical or email
|
||||||
|
address, without their explicit permission
|
||||||
|
* Other conduct which could reasonably be considered inappropriate in a
|
||||||
|
professional setting
|
||||||
|
|
||||||
|
## Enforcement Responsibilities
|
||||||
|
|
||||||
|
Community leaders are responsible for clarifying and enforcing our standards of
|
||||||
|
acceptable behavior and will take appropriate and fair corrective action in
|
||||||
|
response to any behavior that they deem inappropriate, threatening, offensive,
|
||||||
|
or harmful.
|
||||||
|
|
||||||
|
Community leaders have the right and responsibility to remove, edit, or reject
|
||||||
|
comments, commits, code, wiki edits, issues, and other contributions that are
|
||||||
|
not aligned to this Code of Conduct, and will communicate reasons for moderation
|
||||||
|
decisions when appropriate.
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
This Code of Conduct applies within all community spaces, and also applies when
|
||||||
|
an individual is officially representing the community in public spaces.
|
||||||
|
Examples of representing our community include using an official e-mail address,
|
||||||
|
posting via an official social media account, or acting as an appointed
|
||||||
|
representative at an online or offline event.
|
||||||
|
|
||||||
|
## Enforcement
|
||||||
|
|
||||||
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
||||||
|
reported to the community leaders responsible for enforcement at
|
||||||
|
romein@vburen.eu.
|
||||||
|
All complaints will be reviewed and investigated promptly and fairly.
|
||||||
|
|
||||||
|
All community leaders are obligated to respect the privacy and security of the
|
||||||
|
reporter of any incident.
|
||||||
|
|
||||||
|
## Enforcement Guidelines
|
||||||
|
|
||||||
|
Community leaders will follow these Community Impact Guidelines in determining
|
||||||
|
the consequences for any action they deem in violation of this Code of Conduct:
|
||||||
|
|
||||||
|
### 1. Correction
|
||||||
|
|
||||||
|
**Community Impact**: Use of inappropriate language or other behavior deemed
|
||||||
|
unprofessional or unwelcome in the community.
|
||||||
|
|
||||||
|
**Consequence**: A private, written warning from community leaders, providing
|
||||||
|
clarity around the nature of the violation and an explanation of why the
|
||||||
|
behavior was inappropriate. A public apology may be requested.
|
||||||
|
|
||||||
|
### 2. Warning
|
||||||
|
|
||||||
|
**Community Impact**: A violation through a single incident or series
|
||||||
|
of actions.
|
||||||
|
|
||||||
|
**Consequence**: A warning with consequences for continued behavior. No
|
||||||
|
interaction with the people involved, including unsolicited interaction with
|
||||||
|
those enforcing the Code of Conduct, for a specified period of time. This
|
||||||
|
includes avoiding interactions in community spaces as well as external channels
|
||||||
|
like social media. Violating these terms may lead to a temporary or
|
||||||
|
permanent ban.
|
||||||
|
|
||||||
|
### 3. Temporary Ban
|
||||||
|
|
||||||
|
**Community Impact**: A serious violation of community standards, including
|
||||||
|
sustained inappropriate behavior.
|
||||||
|
|
||||||
|
**Consequence**: A temporary ban from any sort of interaction or public
|
||||||
|
communication with the community for a specified period of time. No public or
|
||||||
|
private interaction with the people involved, including unsolicited interaction
|
||||||
|
with those enforcing the Code of Conduct, is allowed during this period.
|
||||||
|
Violating these terms may lead to a permanent ban.
|
||||||
|
|
||||||
|
### 4. Permanent Ban
|
||||||
|
|
||||||
|
**Community Impact**: Demonstrating a pattern of violation of community
|
||||||
|
standards, including sustained inappropriate behavior, harassment of an
|
||||||
|
individual, or aggression toward or disparagement of classes of individuals.
|
||||||
|
|
||||||
|
**Consequence**: A permanent ban from any sort of public interaction within
|
||||||
|
the community.
|
||||||
|
|
||||||
|
## Attribution
|
||||||
|
|
||||||
|
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
|
||||||
|
version 2.0, available at
|
||||||
|
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
|
||||||
|
|
||||||
|
Community Impact Guidelines were inspired by [Mozilla's code of conduct
|
||||||
|
enforcement ladder](https://github.com/mozilla/diversity).
|
||||||
|
|
||||||
|
[homepage]: https://www.contributor-covenant.org
|
||||||
|
|
||||||
|
For answers to common questions about this code of conduct, see the FAQ at
|
||||||
|
https://www.contributor-covenant.org/faq. Translations are available at
|
||||||
|
https://www.contributor-covenant.org/translations.
|
11
README.md
11
README.md
@ -1,6 +1,8 @@
|
|||||||
# Alphabets
|
# Alphabets
|
||||||
|
|
||||||
A tiny JS dependency (<800 bytes!) which exports many alphabets for many use
|
[](https://github.com/garraflavatra/alphabets/actions/workflows/test.yml)
|
||||||
|
|
||||||
|
A tiny JS dependency (<2kb!) which exports many alphabets for many use
|
||||||
cases.
|
cases.
|
||||||
|
|
||||||
More information is available in the
|
More information is available in the
|
||||||
@ -76,6 +78,11 @@ Usage: see [Usage](#usage).
|
|||||||
|
|
||||||
| Name | Export name |
|
| Name | Export name |
|
||||||
|------|-------------|
|
|------|-------------|
|
||||||
| Latin | `latin` |
|
| Danish | `danish` |
|
||||||
|
| Faroese | `faroese` |
|
||||||
| Greek (modern) | `greek` |
|
| Greek (modern) | `greek` |
|
||||||
| Greek (ancient/polytonic) | `greekPolytonic` |
|
| Greek (ancient/polytonic) | `greekPolytonic` |
|
||||||
|
| Icelandic | `icelandic` |
|
||||||
|
| Latin | `latin` |
|
||||||
|
| Norwegian | `norwegian` |
|
||||||
|
| Swedish | `swedish` |
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
main:
|
main:
|
||||||
- title: "GitHub"
|
- title: "GitHub"
|
||||||
url: https://github.com/garraflavatra/alphabet.js
|
url: https://github.com/garraflavatra/alphabets
|
||||||
|
@ -2,9 +2,11 @@
|
|||||||
title: Alphabets
|
title: Alphabets
|
||||||
---
|
---
|
||||||
|
|
||||||
A tiny JS dependency (<800 bytes!) which exports many alphabets for many use
|
A tiny JS dependency (<2kb!) which exports many alphabets for many use
|
||||||
cases.
|
cases.
|
||||||
|
|
||||||
|
[](https://github.com/garraflavatra/alphabets/actions/workflows/test.yml)
|
||||||
|
|
||||||
## Why would I use this?
|
## Why would I use this?
|
||||||
|
|
||||||
### Why?
|
### Why?
|
||||||
@ -121,6 +123,11 @@ Usage: see [Usage](#usage).
|
|||||||
|
|
||||||
| Name | Export name |
|
| Name | Export name |
|
||||||
|------|-------------|
|
|------|-------------|
|
||||||
| Latin | `latin` |
|
| Danish | `danish` |
|
||||||
|
| Faroese | `faroese` |
|
||||||
| Greek (modern) | `greek` |
|
| Greek (modern) | `greek` |
|
||||||
| Greek (ancient/polytonic) | `greekPolytonic` |
|
| Greek (ancient/polytonic) | `greekPolytonic` |
|
||||||
|
| Icelandic | `icelandic` |
|
||||||
|
| Latin | `latin` |
|
||||||
|
| Norwegian | `norwegian` |
|
||||||
|
| Swedish | `swedish` |
|
||||||
|
12526
package-lock.json
generated
12526
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
11
package.json
11
package.json
@ -1,17 +1,24 @@
|
|||||||
{
|
{
|
||||||
"name": "alphabets",
|
"name": "alphabets",
|
||||||
"version": "1.0.0",
|
"version": "1.1.0",
|
||||||
"description": "Exports many alphabets for many use cases",
|
"description": "Exports many alphabets for many use cases",
|
||||||
"main": "dist/bundle.js",
|
"main": "dist/bundle.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "rollup -c",
|
"build": "rollup -c",
|
||||||
"prepare": "husky install"
|
"prepare": "husky install",
|
||||||
|
"test": "jest"
|
||||||
},
|
},
|
||||||
"keywords": [],
|
"keywords": [],
|
||||||
"author": "Romein van Buren <romein@vburen.eu>",
|
"author": "Romein van Buren <romein@vburen.eu>",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
"homepage": "https://alphabets.romeinvanburen.nl",
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/garraflavatra/alphabets.git"
|
||||||
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"husky": "^6.0.0",
|
"husky": "^6.0.0",
|
||||||
|
"jest": "^26.6.3",
|
||||||
"rollup": "^2.49.0",
|
"rollup": "^2.49.0",
|
||||||
"rollup-plugin-clear": "^2.0.7",
|
"rollup-plugin-clear": "^2.0.7",
|
||||||
"rollup-plugin-terser": "^7.0.2"
|
"rollup-plugin-terser": "^7.0.2"
|
||||||
|
19
src/bundle.test.js
Normal file
19
src/bundle.test.js
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
// These tests are just samples and not every alphabet is tested (that's boring).
|
||||||
|
|
||||||
|
const alphabets = require("../dist/bundle.js");
|
||||||
|
|
||||||
|
const greek = ["α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "σ", "τ", "υ", "φ", "χ", "ψ", "ω"];
|
||||||
|
const greekPolytonic = ["α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "σ", "τ", "υ", "φ", "χ", "ψ", "ω"];
|
||||||
|
const latin = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
|
||||||
|
|
||||||
|
test('alphabets.latin should return Latin alphabet', () => {
|
||||||
|
expect(alphabets.latin).toStrictEqual(latin);
|
||||||
|
});
|
||||||
|
|
||||||
|
test('alphabets.greek should return Greek alphabet', () => {
|
||||||
|
expect(alphabets.greek).toStrictEqual(greek);
|
||||||
|
});
|
||||||
|
|
||||||
|
test('alphabets.greekPolytonic should return Greek (Polytonic) alphabet', () => {
|
||||||
|
expect(alphabets.greekPolytonic).toStrictEqual(greekPolytonic);
|
||||||
|
});
|
30
src/main.js
30
src/main.js
@ -1,17 +1,21 @@
|
|||||||
export const latin = [
|
export const danish = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'æ', 'ø', 'å'];
|
||||||
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"
|
export const elfadian = ['a', 'ą', 'b', 'd', 'ð', 'e', 'ę', 'f', 'g', 'h', 'i', 'į', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'r', 's', 't', 'u', 'ų', 'v', 'w', 'y', 'y̨', 'å', 'ą̊', 'ä', 'ö'];
|
||||||
];
|
export const faroese = ['a', 'á', 'b', 'd', 'ð', 'e', 'f', 'g', 'h', 'i', 'í', 'j', 'k', 'l', 'm', 'n', 'o', 'ó', 'p', 'r', 's', 't', 'u', 'ú', 'v', 'y', 'ý', 'æ', 'ø'];
|
||||||
|
export const greek = ["α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "σ", "τ", "υ", "φ", "χ", "ψ", "ω"];
|
||||||
export const greek = [
|
export const greekPolytonic = ["α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "σ", "τ", "υ", "φ", "χ", "ψ", "ω"];
|
||||||
"α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "σ", "τ", "υ", "φ", "χ", "ψ", "ω"
|
export const icelandic = ['a', 'á', 'b', 'd', 'ð', 'e', 'é', 'f', 'g', 'h', 'i', 'í', 'j', 'k', 'l', 'm', 'n', 'o', 'ó', 'p', 'r', 's', 't', 'u', 'ú', 'v', 'x', 'y', 'ý', 'þ', 'æ', 'ö'];
|
||||||
]
|
export const latin = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
|
||||||
|
export const norwegian = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'æ', 'ø', 'å'];
|
||||||
export const greekPolytonic = [
|
export const swedish = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'å', 'ä', 'ö'];
|
||||||
"α", "β", "γ", "δ", "ε", "ζ", "η", "θ", "ι", "κ", "λ", "μ", "ν", "ξ", "ο", "π", "ρ", "σ", "τ", "υ", "φ", "χ", "ψ", "ω"
|
|
||||||
]
|
|
||||||
|
|
||||||
export default [
|
export default [
|
||||||
latin,
|
danish,
|
||||||
|
elfadian,
|
||||||
|
faroese,
|
||||||
greek,
|
greek,
|
||||||
greekPolytonic,
|
greekPolytonic,
|
||||||
];
|
icelandic,
|
||||||
|
latin,
|
||||||
|
norwegian,
|
||||||
|
swedish,
|
||||||
|
];
|
||||||
|
Reference in New Issue
Block a user