Skip to content

Commit b82c3cc

Browse files
authored
Merge pull request #581 from charles4221/feat/typescript-rewrite
Rewrite library with TypeScript, update to modern React & Jest conventions
2 parents d989185 + 7786a8f commit b82c3cc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+8540
-6244
lines changed

.editorconfig

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# EditorConfig is awesome: https://EditorConfig.org
2+
3+
# top-most EditorConfig file
4+
root = true
5+
6+
[*]
7+
indent_style = space
8+
indent_size = 2
9+
end_of_line = lf
10+
charset = utf-8
11+
trim_trailing_whitespace = true
12+
insert_final_newline = true

.eslintrc.js

Lines changed: 0 additions & 18 deletions
This file was deleted.

.github/workflows/ci.yml

Lines changed: 19 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,51 @@
11
name: CI
22

3-
on: [push, pull_request]
3+
on: [push, pull_request_target]
44

55
jobs:
66
build:
77
runs-on: ubuntu-latest
88

99
strategy:
1010
matrix:
11-
free-solid-svg-icons: [7.x, 6.x, 5.x]
12-
fontawesome-svg-core: [7.x, 6.x, 1.2.x]
13-
node-version: [20.x, 18.x]
14-
react: [19.x, 18.x, 17.x, 16.x]
11+
free-solid-svg-icons: [7.x, 6.x]
12+
fontawesome-svg-core: [7.x, 6.x]
13+
node-version: [24.x, 22.x, 20.x]
14+
react: [19.x, 18.x]
1515
exclude:
1616
# For v7.x core, allow all icon versions
17-
# For v6.x and v1.2.x core, exclude v7.x icons
17+
# For v6.x exclude v7.x icons
1818
- free-solid-svg-icons: '7.x'
1919
fontawesome-svg-core: '6.x'
20-
- free-solid-svg-icons: '7.x'
21-
fontawesome-svg-core: '1.2.x'
2220

2321
steps:
24-
- uses: actions/checkout@v1
22+
- uses: actions/checkout@v4
2523

2624
- name: Use Node.js ${{ matrix.node-version }}
27-
uses: actions/setup-node@v1
25+
uses: actions/setup-node@v3
2826
with:
2927
node-version: ${{ matrix.node-version }}
28+
registry-url: https://npm.fontawesome.com/
29+
scope: '@fortawesome'
30+
cache: 'npm'
3031

3132
- name: Install base dependencies
32-
run: npm install --no-audit --no-save
33+
run: npm ci --no-audit --no-save
3334

3435
- name: Install React dependencies
35-
run: npm install --no-save react@${{ matrix.react }} react-dom@${{ matrix.react }} react-test-renderer@${{ matrix.react }}
36+
run: npm ci --no-save react@${{ matrix.react }} react-dom@${{ matrix.react }}
3637

3738
- name: Install FontAwesome dependencies
38-
run: npm install --no-save @fortawesome/fontawesome-svg-core@${{ matrix.fontawesome-svg-core }} @fortawesome/free-solid-svg-icons@${{ matrix.free-solid-svg-icons }}
39+
run: npm ci --no-save @fortawesome/fontawesome-svg-core@${{ matrix.fontawesome-svg-core }} @fortawesome/free-solid-svg-icons@${{ matrix.free-solid-svg-icons }}
3940

4041
- name: Verify React version
41-
run: npm list react react-dom react-test-renderer
42+
run: npm list react react-dom
4243

43-
- name: Build and test
44+
- name: Lint and test
4445
run: |
45-
npm run build
4646
npm run lint
47+
npm run format:check
4748
npm run test
4849
49-
- name: Build distribution
50-
run: npm run dist
50+
- name: Build
51+
run: npm run build

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,5 @@ node_modules
22
.DS_Store
33
bin/act
44
fortawesome-react-fontawesome-*.tgz
5+
dist/
6+
coverage/

.npmrc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
@fortawesome:registry=https://npm.fontawesome.com/
2+
@awesome.me:registry=https://npm.fontawesome.com/
3+
//npm.fontawesome.com/:_authToken=${FONTAWESOME_NPM_AUTH_TOKEN}

.prettierignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
/index.*
1+
/dist
2+
/coverage

.prettierrc.js

Lines changed: 0 additions & 6 deletions
This file was deleted.

.prettierrc.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"arrowParens": "always",
3+
"bracketSameLine": true,
4+
"bracketSpacing": true,
5+
"endOfLine": "lf",
6+
"quoteProps": "as-needed",
7+
"singleQuote": true,
8+
"semi": false,
9+
"tabWidth": 2,
10+
"trailingComma": "all",
11+
"useTabs": false
12+
}

.tool-versions

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
nodejs 22.11.0
1+
nodejs 22.17.1
22
python 3.9.19 2.7.18

.vscode/extensions.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"recommendations": [
3+
"dbaeumer.vscode-eslint",
4+
"esbenp.prettier-vscode",
5+
"Orta.vscode-jest"
6+
]
7+
}

0 commit comments

Comments
 (0)