23 changed files with 10549 additions and 3269 deletions
@ -0,0 +1 @@ |
|||||||
|
[{"/Users/antoine/Desktop/superdiff/eslint.config.mjs":"1","/Users/antoine/Desktop/superdiff/index.ts":"2","/Users/antoine/Desktop/superdiff/tsup.config.ts":"3","/Users/antoine/Desktop/superdiff/src/index.ts":"4","/Users/antoine/Desktop/superdiff/src/list-diff.ts":"5","/Users/antoine/Desktop/superdiff/src/model.ts":"6","/Users/antoine/Desktop/superdiff/src/object-diff.ts":"7","/Users/antoine/Desktop/superdiff/src/utils.ts":"8","/Users/antoine/Desktop/superdiff/test/list-diff.test.ts":"9","/Users/antoine/Desktop/superdiff/test/object-diff.test.ts":"10","/Users/antoine/Desktop/superdiff/test/utils.test.ts":"11"},{"size":426,"mtime":1727602294779,"results":"12","hashOfConfig":"13"},{"size":0,"mtime":1727601340027,"results":"14","hashOfConfig":"15"},{"size":222,"mtime":1727601767512,"results":"16","hashOfConfig":"15"},{"size":160,"mtime":1727601340028,"results":"17","hashOfConfig":"15"},{"size":4697,"mtime":1727601897826,"results":"18","hashOfConfig":"15"},{"size":1903,"mtime":1727601897832,"results":"19","hashOfConfig":"15"},{"size":9363,"mtime":1727602282176,"results":"20","hashOfConfig":"15"},{"size":1150,"mtime":1727601897855,"results":"21","hashOfConfig":"15"},{"size":18523,"mtime":1727601897889,"results":"22","hashOfConfig":"15"},{"size":23198,"mtime":1727601897918,"results":"23","hashOfConfig":"15"},{"size":3560,"mtime":1727601897925,"results":"24","hashOfConfig":"15"},{"filePath":"25","messages":"26","suppressedMessages":"27","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"13i3tau",{"filePath":"28","messages":"29","suppressedMessages":"30","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"a3qfx6",{"filePath":"31","messages":"32","suppressedMessages":"33","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"34","messages":"35","suppressedMessages":"36","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"37","messages":"38","suppressedMessages":"39","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"40","messages":"41","suppressedMessages":"42","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"43","messages":"44","suppressedMessages":"45","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"46","messages":"47","suppressedMessages":"48","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"49","messages":"50","suppressedMessages":"51","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"52","messages":"53","suppressedMessages":"54","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"55","messages":"56","suppressedMessages":"57","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/Users/antoine/Desktop/superdiff/eslint.config.mjs",[],[],"/Users/antoine/Desktop/superdiff/index.ts",[],[],"/Users/antoine/Desktop/superdiff/tsup.config.ts",[],[],"/Users/antoine/Desktop/superdiff/src/index.ts",[],[],"/Users/antoine/Desktop/superdiff/src/list-diff.ts",[],[],"/Users/antoine/Desktop/superdiff/src/model.ts",[],[],"/Users/antoine/Desktop/superdiff/src/object-diff.ts",[],[],"/Users/antoine/Desktop/superdiff/src/utils.ts",[],[],"/Users/antoine/Desktop/superdiff/test/list-diff.test.ts",[],[],"/Users/antoine/Desktop/superdiff/test/object-diff.test.ts",[],[],"/Users/antoine/Desktop/superdiff/test/utils.test.ts",[],[]] |
@ -0,0 +1,47 @@ |
|||||||
|
name: CD Pipeline |
||||||
|
|
||||||
|
on: |
||||||
|
workflow_run: |
||||||
|
workflows: ["CI Pipeline"] |
||||||
|
types: |
||||||
|
- completed |
||||||
|
branches: |
||||||
|
- master |
||||||
|
|
||||||
|
jobs: |
||||||
|
publish: |
||||||
|
if: ${{ github.event.workflow_run.conclusion == 'success' }} |
||||||
|
runs-on: ubuntu-latest |
||||||
|
permissions: |
||||||
|
contents: write |
||||||
|
issues: write |
||||||
|
pull-requests: write |
||||||
|
id-token: write |
||||||
|
|
||||||
|
steps: |
||||||
|
- name: Checkout |
||||||
|
uses: actions/checkout@v4 |
||||||
|
with: |
||||||
|
fetch-depth: 0 |
||||||
|
|
||||||
|
- name: Setup Node.js |
||||||
|
uses: actions/setup-node@v4 |
||||||
|
with: |
||||||
|
node-version: "20" |
||||||
|
cache: "npm" |
||||||
|
registry-url: https://registry.npmjs.org |
||||||
|
cache-dependency-path: package-lock.json |
||||||
|
env: |
||||||
|
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} |
||||||
|
|
||||||
|
- name: Install dependencies |
||||||
|
run: npm install |
||||||
|
|
||||||
|
- name: Build the project |
||||||
|
run: npm run build |
||||||
|
|
||||||
|
- name: Release |
||||||
|
env: |
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
||||||
|
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} |
||||||
|
run: npx semantic-release |
@ -0,0 +1,50 @@ |
|||||||
|
name: CI Pipeline |
||||||
|
|
||||||
|
on: |
||||||
|
push: |
||||||
|
branches: |
||||||
|
- master |
||||||
|
pull_request: |
||||||
|
branches: |
||||||
|
- master |
||||||
|
|
||||||
|
jobs: |
||||||
|
build: |
||||||
|
runs-on: ubuntu-latest |
||||||
|
|
||||||
|
steps: |
||||||
|
- name: Checkout code |
||||||
|
uses: actions/checkout@v4 |
||||||
|
|
||||||
|
- name: Setup Node.js |
||||||
|
uses: actions/setup-node@v4 |
||||||
|
with: |
||||||
|
node-version: "20" |
||||||
|
cache: "npm" |
||||||
|
registry-url: https://registry.npmjs.org |
||||||
|
cache-dependency-path: package-lock.json |
||||||
|
|
||||||
|
- name: Retrieve dependencies |
||||||
|
id: "modules_cache" |
||||||
|
uses: actions/cache@v4 |
||||||
|
with: |
||||||
|
path: node_modules |
||||||
|
key: node-modules-${{ runner.os }}-${{ hashFiles('package-lock.json') }} |
||||||
|
restore-keys: | |
||||||
|
node-modules-${{ runner.os }}- |
||||||
|
|
||||||
|
- name: Install dependencies |
||||||
|
if: steps.modules_cache.outputs.cache-hit != 'true' |
||||||
|
run: npm install |
||||||
|
|
||||||
|
- name: Run typescript |
||||||
|
run: npm run tsc |
||||||
|
|
||||||
|
- name: Run linter |
||||||
|
run: npm run lint |
||||||
|
|
||||||
|
- name: Run tests |
||||||
|
run: npm run test |
||||||
|
|
||||||
|
- name: Build the project |
||||||
|
run: npm run build |
@ -1,29 +0,0 @@ |
|||||||
name: Superdiff CI |
|
||||||
|
|
||||||
on: |
|
||||||
push: |
|
||||||
branches: ["master"] |
|
||||||
pull_request: |
|
||||||
branches: ["master"] |
|
||||||
|
|
||||||
jobs: |
|
||||||
build: |
|
||||||
runs-on: ubuntu-latest |
|
||||||
|
|
||||||
strategy: |
|
||||||
matrix: |
|
||||||
node-version: [18.x] |
|
||||||
|
|
||||||
steps: |
|
||||||
- uses: actions/checkout@v3 |
|
||||||
- name: Use Node.js ${{ matrix.node-version }} |
|
||||||
uses: actions/setup-node@v3 |
|
||||||
with: |
|
||||||
node-version: ${{ matrix.node-version }} |
|
||||||
cache: "npm" |
|
||||||
- name: Install dependencies |
|
||||||
run: npm install |
|
||||||
- name: Build app |
|
||||||
run: npm run build |
|
||||||
- name: Test app |
|
||||||
run: npm test |
|
@ -0,0 +1,8 @@ |
|||||||
|
dist |
||||||
|
.github |
||||||
|
.husky |
||||||
|
jest.config.js |
||||||
|
package-lock.json |
||||||
|
README.md |
||||||
|
tsconfig.json |
||||||
|
tsup.config.ts |
@ -0,0 +1,16 @@ |
|||||||
|
import pluginJs from "@eslint/js"; |
||||||
|
import tseslint from "typescript-eslint"; |
||||||
|
|
||||||
|
export default [ |
||||||
|
{ files: ["**/*.{js,mjs,cjs,ts}"] }, |
||||||
|
{ ignores: ["dist", "jest.config.js"] }, |
||||||
|
{ settings: { react: { version: "detect" } } }, |
||||||
|
pluginJs.configs.recommended, |
||||||
|
...tseslint.configs.recommended, |
||||||
|
{ |
||||||
|
rules: { |
||||||
|
"@typescript-eslint/no-explicit-any": "off", |
||||||
|
"@typescript-eslint/ban-ts-comment": "off" |
||||||
|
}, |
||||||
|
}, |
||||||
|
]; |
@ -1,19 +1,20 @@ |
|||||||
{ |
{ |
||||||
|
"exclude": ["node_modules", "dist"], |
||||||
|
"include": ["src/*.ts"], |
||||||
"compilerOptions": { |
"compilerOptions": { |
||||||
"declaration": true, |
"declaration": true, |
||||||
"declarationDir": "./dist", |
"declarationDir": "./dist", |
||||||
"lib": ["esnext", "dom"], |
"lib": ["esnext", "dom"], |
||||||
"module": "esnext", |
"module": "esnext", |
||||||
|
"target": "esnext", |
||||||
"moduleResolution": "node", |
"moduleResolution": "node", |
||||||
"noUnusedParameters": true, |
"noUnusedParameters": true, |
||||||
"esModuleInterop": true, |
"esModuleInterop": true, |
||||||
"noImplicitAny": true, |
"noImplicitAny": true, |
||||||
"outDir": "./dist", |
"outDir": "./dist", |
||||||
"strict": true, |
"strict": true, |
||||||
"target": "esnext", |
|
||||||
"resolveJsonModule": true, |
"resolveJsonModule": true, |
||||||
"allowSyntheticDefaultImports": true |
"allowSyntheticDefaultImports": true, |
||||||
|
"skipLibCheck": true |
||||||
}, |
}, |
||||||
"include": ["src/*.ts"], |
|
||||||
"exclude": ["node_modules"] |
|
||||||
} |
} |
||||||
|
Loading…
Reference in new issue