@ceylar/ada 0.0.6 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,30 @@
1
+ name: Publish Package to npm
2
+
3
+ on:
4
+ pull_request:
5
+ types: [closed]
6
+ branches: [main]
7
+
8
+ jobs:
9
+ build:
10
+ runs-on: ubuntu-latest
11
+
12
+ steps:
13
+ - uses: actions/checkout@v3
14
+
15
+ - name: Setup Node.js
16
+ uses: actions/setup-node@v3
17
+ with:
18
+ node-version: 22
19
+ registry-url: 'https://registry.npmjs.org'
20
+
21
+ - name: Install dependencies
22
+ run: yarn install --frozen-lockfile
23
+
24
+ - name: Build package
25
+ run: yarn build
26
+
27
+ - name: Publish to npm
28
+ run: yarn publish
29
+ env:
30
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
@@ -0,0 +1,38 @@
1
+ name: Version Check
2
+
3
+ on:
4
+ pull_request:
5
+ branches: [main]
6
+
7
+ jobs:
8
+ check-version:
9
+ runs-on: ubuntu-latest
10
+ steps:
11
+ - uses: actions/checkout@v4
12
+ with:
13
+ fetch-depth: 0
14
+
15
+ - name: Get base (target) branch version
16
+ id: base-version
17
+ run: |
18
+ git fetch origin ${{ github.base_ref }}
19
+ BASE_VERSION=$(git show origin/${{ github.base_ref }}:package.json | jq -r .version)
20
+ echo "base_version=$BASE_VERSION" >> $GITHUB_OUTPUT
21
+
22
+ - name: Get current (PR) branch version
23
+ id: pr-version
24
+ run: |
25
+ PR_VERSION=$(jq -r .version package.json)
26
+ echo "pr_version=$PR_VERSION" >> $GITHUB_OUTPUT
27
+
28
+ - name: Compare versions
29
+ run: |
30
+ BASE=${{ steps.base-version.outputs.base_version }}
31
+ PR=${{ steps.pr-version.outputs.pr_version }}
32
+
33
+ if [ "$BASE" = "$PR" ]; then
34
+ echo "::error::Version in package.json must be incremented! Current: $PR, expected higher than $BASE"
35
+ exit 1
36
+ fi
37
+
38
+ echo "Version increased from $BASE to $PR - validation passed"
package/babel.config.json CHANGED
@@ -1,9 +1,9 @@
1
- {
2
- "presets": [
3
- "@babel/preset-env",
4
- "@babel/preset-typescript"
5
- ],
6
- "targets": {
7
- "node": "current"
8
- }
1
+ {
2
+ "presets": [
3
+ "@babel/preset-env",
4
+ "@babel/preset-typescript"
5
+ ],
6
+ "targets": {
7
+ "node": "current"
8
+ }
9
9
  }
package/eslint.config.mjs CHANGED
@@ -1,63 +1,63 @@
1
- import js from '@eslint/js';
2
-
3
- import react from 'eslint-plugin-react';
4
- import reactHooks from 'eslint-plugin-react-hooks';
5
- import simpleImportSort from 'eslint-plugin-simple-import-sort';
6
- import globals from 'globals';
7
- import ts from 'typescript-eslint';
8
-
9
- /** @type {import('eslint').Linter.Config<Linter.RulesRecord>[]} */
10
- export default ts.config(
11
- js.configs.recommended,
12
- ...ts.configs.recommended,
13
- {
14
- plugins: {
15
- react: react,
16
- 'react-hooks': reactHooks,
17
- 'simple-import-sort': simpleImportSort,
18
- ts: ts.plugin
19
- },
20
- rules: {
21
- 'prefer-const': 'error',
22
- 'no-else-return': 'error',
23
-
24
- 'simple-import-sort/exports': 'error',
25
- 'simple-import-sort/imports': [
26
- 'error',
27
- {
28
- groups: [
29
- ['^@(([\\/.]?\\w)|assets|test-utils)'],
30
- ['^\\u0000'],
31
- ['^\\.\\.(?!/?$)', '^\\.\\./?$'],
32
- ['^\\./(?=.*/)(?!/?$)', '^\\.(?!/?$)', '^\\./?$'],
33
- ['^.+\\.s?css$']
34
- ]
35
- }
36
- ]
37
- },
38
- languageOptions: {
39
- globals: {
40
- ...globals.node,
41
- ...globals.browser,
42
- ...globals.es2022
43
- }
44
- }
45
- },
46
- {
47
- languageOptions: {
48
- parserOptions: {
49
- project: ['tsconfig.json']
50
- }
51
- },
52
- files: ['/src/**/*.ts', '/src/**/*.tsx']
53
- },
54
- {
55
- languageOptions: {
56
- parserOptions: react.configs.recommended.parserOptions
57
- },
58
- files: ['/src/**/*.js', '/src/**/*.jsx']
59
- },
60
- {
61
- ignores: ['node_modules', 'bin']
62
- }
63
- );
1
+ import js from '@eslint/js';
2
+
3
+ import react from 'eslint-plugin-react';
4
+ import reactHooks from 'eslint-plugin-react-hooks';
5
+ import simpleImportSort from 'eslint-plugin-simple-import-sort';
6
+ import globals from 'globals';
7
+ import ts from 'typescript-eslint';
8
+
9
+ /** @type {import('eslint').Linter.Config<Linter.RulesRecord>[]} */
10
+ export default ts.config(
11
+ js.configs.recommended,
12
+ ...ts.configs.recommended,
13
+ {
14
+ plugins: {
15
+ react: react,
16
+ 'react-hooks': reactHooks,
17
+ 'simple-import-sort': simpleImportSort,
18
+ ts: ts.plugin
19
+ },
20
+ rules: {
21
+ 'prefer-const': 'error',
22
+ 'no-else-return': 'error',
23
+
24
+ 'simple-import-sort/exports': 'error',
25
+ 'simple-import-sort/imports': [
26
+ 'error',
27
+ {
28
+ groups: [
29
+ ['^@(([\\/.]?\\w)|assets|test-utils)'],
30
+ ['^\\u0000'],
31
+ ['^\\.\\.(?!/?$)', '^\\.\\./?$'],
32
+ ['^\\./(?=.*/)(?!/?$)', '^\\.(?!/?$)', '^\\./?$'],
33
+ ['^.+\\.s?css$']
34
+ ]
35
+ }
36
+ ]
37
+ },
38
+ languageOptions: {
39
+ globals: {
40
+ ...globals.node,
41
+ ...globals.browser,
42
+ ...globals.es2022
43
+ }
44
+ }
45
+ },
46
+ {
47
+ languageOptions: {
48
+ parserOptions: {
49
+ project: ['tsconfig.json']
50
+ }
51
+ },
52
+ files: ['/src/**/*.ts', '/src/**/*.tsx']
53
+ },
54
+ {
55
+ languageOptions: {
56
+ parserOptions: react.configs.recommended.parserOptions
57
+ },
58
+ files: ['/src/**/*.js', '/src/**/*.jsx']
59
+ },
60
+ {
61
+ ignores: ['node_modules', 'bin']
62
+ }
63
+ );
package/package.json CHANGED
@@ -1,51 +1,51 @@
1
- {
2
- "name": "@ceylar/ada",
3
- "description": "CLI to help you initialize projects",
4
- "version": "0.0.6",
5
- "license": "MIT",
6
- "type": "module",
7
- "bin": {
8
- "ada": "bin/index.js"
9
- },
10
- "scripts": {
11
- "build": "shx rm -rf dist && cross-env NODE_ENV=production rollup -c --bundleConfigAsCjs",
12
- "dev": "shx rm -rf dist && cross-env NODE_ENV=development rollup -c --bundleConfigAsCjs --watch",
13
- "lint": "eslint .",
14
- "lint:fix": "eslint --fix .",
15
- "format": "prettier --check src --ignore-path .gitignore",
16
- "format:fix": "prettier --write src --ignore-path .gitignore"
17
- },
18
- "devDependencies": {
19
- "@babel/core": "^7.26.9",
20
- "@babel/preset-env": "^7.26.9",
21
- "@babel/preset-react": "^7.26.3",
22
- "@babel/preset-typescript": "^7.26.0",
23
- "@eslint/js": "^9.21.0",
24
- "@rollup/plugin-alias": "^5.1.1",
25
- "@rollup/plugin-babel": "^6.0.4",
26
- "@rollup/plugin-commonjs": "^28.0.2",
27
- "@rollup/plugin-json": "^6.1.0",
28
- "@rollup/plugin-node-resolve": "^16.0.0",
29
- "@rollup/plugin-typescript": "^12.1.2",
30
- "@types/node": "^22.13.4",
31
- "cross-env": "^7.0.3",
32
- "eslint": "^9.21.0",
33
- "eslint-plugin-react": "^7.37.4",
34
- "eslint-plugin-react-hooks": "^5.1.0",
35
- "eslint-plugin-simple-import-sort": "^12.1.1",
36
- "globals": "^16.0.0",
37
- "prettier": "^3.5.2",
38
- "rollup": "^4.34.8",
39
- "rollup-plugin-copy": "^3.5.0",
40
- "shx": "^0.3.4",
41
- "tslib": "^2.8.1",
42
- "typescript": "^5.7.3",
43
- "typescript-eslint": "^8.24.1"
44
- },
45
- "dependencies": {
46
- "commander": "^13.1.0",
47
- "zod": "^3.24.2"
48
- },
49
- "repository": "https://github.com/Ceylar37/ada.git",
50
- "author": "ceylar37 <ceylar37@gmail.com>"
51
- }
1
+ {
2
+ "name": "@ceylar/ada",
3
+ "description": "CLI to help you initialize projects",
4
+ "version": "0.0.8",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "bin": {
8
+ "ada": "bin/index.js"
9
+ },
10
+ "scripts": {
11
+ "build": "shx rm -rf dist && cross-env NODE_ENV=production rollup -c --bundleConfigAsCjs",
12
+ "dev": "shx rm -rf dist && cross-env NODE_ENV=development rollup -c --bundleConfigAsCjs --watch",
13
+ "lint": "eslint .",
14
+ "lint:fix": "eslint --fix .",
15
+ "format": "prettier --check src --ignore-path .gitignore",
16
+ "format:fix": "prettier --write src --ignore-path .gitignore"
17
+ },
18
+ "devDependencies": {
19
+ "@babel/core": "^7.26.9",
20
+ "@babel/preset-env": "^7.26.9",
21
+ "@babel/preset-react": "^7.26.3",
22
+ "@babel/preset-typescript": "^7.26.0",
23
+ "@eslint/js": "^9.21.0",
24
+ "@rollup/plugin-alias": "^5.1.1",
25
+ "@rollup/plugin-babel": "^6.0.4",
26
+ "@rollup/plugin-commonjs": "^28.0.2",
27
+ "@rollup/plugin-json": "^6.1.0",
28
+ "@rollup/plugin-node-resolve": "^16.0.0",
29
+ "@rollup/plugin-typescript": "^12.1.2",
30
+ "@types/node": "^22.13.4",
31
+ "cross-env": "^7.0.3",
32
+ "eslint": "^9.21.0",
33
+ "eslint-plugin-react": "^7.37.4",
34
+ "eslint-plugin-react-hooks": "^5.1.0",
35
+ "eslint-plugin-simple-import-sort": "^12.1.1",
36
+ "globals": "^16.0.0",
37
+ "prettier": "^3.5.2",
38
+ "rollup": "^4.34.8",
39
+ "rollup-plugin-copy": "^3.5.0",
40
+ "shx": "^0.3.4",
41
+ "tslib": "^2.8.1",
42
+ "typescript": "^5.7.3",
43
+ "typescript-eslint": "^8.24.1"
44
+ },
45
+ "dependencies": {
46
+ "commander": "^13.1.0",
47
+ "zod": "^3.24.2"
48
+ },
49
+ "repository": "https://github.com/Ceylar37/ada.git",
50
+ "author": "ceylar37 <ceylar37@gmail.com>"
51
+ }
@@ -1,12 +1,12 @@
1
- /** @type {import('prettier').Config} */
2
- export default {
3
- printWidth: 120,
4
- singleQuote: true,
5
- jsxSingleQuote: true,
6
- trailingComma: 'none',
7
- semi: true,
8
- tabWidth: 2,
9
- useTabs: false,
10
- endOfLine: 'crlf',
11
- arrowParens: 'always'
12
- };
1
+ /** @type {import('prettier').Config} */
2
+ export default {
3
+ printWidth: 120,
4
+ singleQuote: true,
5
+ jsxSingleQuote: true,
6
+ trailingComma: 'none',
7
+ semi: true,
8
+ tabWidth: 2,
9
+ useTabs: false,
10
+ endOfLine: 'crlf',
11
+ arrowParens: 'always'
12
+ };
package/readme.md CHANGED
@@ -1,3 +1,3 @@
1
- ### ada
2
-
3
- CLI to help you initialize your javascript projects
1
+ ### ada
2
+
3
+ CLI to help you initialize your javascript projects
@@ -1,67 +1,67 @@
1
- import js from '@eslint/js';
2
- import react from 'eslint-plugin-react';
3
- import reactHooks from 'eslint-plugin-react-hooks';
4
- import simpleImportSort from 'eslint-plugin-simple-import-sort';
5
- import globals from 'globals';
6
- import ts from 'typescript-eslint';
7
-
8
- /** @type {import('eslint').Linter.Config<Linter.RulesRecord>[]} */
9
- export default ts.config(
10
- js.configs.recommended,
11
- ...ts.configs.recommended,
12
- {
13
- plugins: {
14
- react: react,
15
- 'react-hooks': reactHooks,
16
- 'simple-import-sort': simpleImportSort,
17
- ts: ts.plugin
18
- },
19
- rules: {
20
- 'prefer-const': 'error',
21
- 'no-else-return': 'error',
22
-
23
- 'react-hooks/exhaustive-deps': 'off',
24
-
25
- 'no-console': 'warn',
26
-
27
- 'simple-import-sort/exports': 'error',
28
- 'simple-import-sort/imports': [
29
- 'error',
30
- {
31
- groups: [
32
- ['^react', '^@?\\w'],
33
- ['^@(([\\/.]?\\w)|assets|test-utils)'],
34
- ['^\\u0000'],
35
- ['^\\.\\.(?!/?$)', '^\\.\\./?$'],
36
- ['^\\./(?=.*/)(?!/?$)', '^\\.(?!/?$)', '^\\./?$'],
37
- ['^.+\\.s?css$']
38
- ]
39
- }
40
- ]
41
- },
42
- languageOptions: {
43
- globals: {
44
- ...globals.node,
45
- ...globals.browser,
46
- ...globals.es2022
47
- }
48
- }
49
- },
50
- {
51
- languageOptions: {
52
- parserOptions: {
53
- project: ['tsconfig.json']
54
- }
55
- },
56
- files: ['/src/**/*.ts', '/src/**/*.tsx']
57
- },
58
- {
59
- languageOptions: {
60
- parserOptions: react.configs.recommended.parserOptions
61
- },
62
- files: ['/src/**/*.js', '/src/**/*.jsx']
63
- },
64
- {
65
- ignores: ['node_modules', 'build', 'dist']
66
- }
67
- );
1
+ import js from '@eslint/js';
2
+ import react from 'eslint-plugin-react';
3
+ import reactHooks from 'eslint-plugin-react-hooks';
4
+ import simpleImportSort from 'eslint-plugin-simple-import-sort';
5
+ import globals from 'globals';
6
+ import ts from 'typescript-eslint';
7
+
8
+ /** @type {import('eslint').Linter.Config<Linter.RulesRecord>[]} */
9
+ export default ts.config(
10
+ js.configs.recommended,
11
+ ...ts.configs.recommended,
12
+ {
13
+ plugins: {
14
+ react: react,
15
+ 'react-hooks': reactHooks,
16
+ 'simple-import-sort': simpleImportSort,
17
+ ts: ts.plugin
18
+ },
19
+ rules: {
20
+ 'prefer-const': 'error',
21
+ 'no-else-return': 'error',
22
+
23
+ 'react-hooks/exhaustive-deps': 'off',
24
+
25
+ 'no-console': 'warn',
26
+
27
+ 'simple-import-sort/exports': 'error',
28
+ 'simple-import-sort/imports': [
29
+ 'error',
30
+ {
31
+ groups: [
32
+ ['^react', '^@?\\w'],
33
+ ['^@(([\\/.]?\\w)|assets|test-utils)'],
34
+ ['^\\u0000'],
35
+ ['^\\.\\.(?!/?$)', '^\\.\\./?$'],
36
+ ['^\\./(?=.*/)(?!/?$)', '^\\.(?!/?$)', '^\\./?$'],
37
+ ['^.+\\.s?css$']
38
+ ]
39
+ }
40
+ ]
41
+ },
42
+ languageOptions: {
43
+ globals: {
44
+ ...globals.node,
45
+ ...globals.browser,
46
+ ...globals.es2022
47
+ }
48
+ }
49
+ },
50
+ {
51
+ languageOptions: {
52
+ parserOptions: {
53
+ project: ['tsconfig.json']
54
+ }
55
+ },
56
+ files: ['/src/**/*.ts', '/src/**/*.tsx']
57
+ },
58
+ {
59
+ languageOptions: {
60
+ parserOptions: react.configs.recommended.parserOptions
61
+ },
62
+ files: ['/src/**/*.js', '/src/**/*.jsx']
63
+ },
64
+ {
65
+ ignores: ['node_modules', 'build', 'dist']
66
+ }
67
+ );
@@ -1,12 +1,12 @@
1
- /** @type {import('prettier').Config} */
2
- export default {
3
- printWidth: 120,
4
- singleQuote: true,
5
- jsxSingleQuote: true,
6
- trailingComma: 'none',
7
- semi: true,
8
- tabWidth: 2,
9
- useTabs: false,
10
- endOfLine: 'crlf',
11
- arrowParens: 'always'
12
- };
1
+ /** @type {import('prettier').Config} */
2
+ export default {
3
+ printWidth: 120,
4
+ singleQuote: true,
5
+ jsxSingleQuote: true,
6
+ trailingComma: 'none',
7
+ semi: true,
8
+ tabWidth: 2,
9
+ useTabs: false,
10
+ endOfLine: 'crlf',
11
+ arrowParens: 'always'
12
+ };
@@ -1,7 +1,7 @@
1
- /** @type {import('stylelint').Config} */
2
- export default {
3
- extends: 'stylelint-config-standard-scss',
4
- rules: {
5
- 'selector-class-pattern': ['^[a-z][a-zA-Z0-9]*$', { message: 'Selector should be in camelCase' }]
6
- }
7
- };
1
+ /** @type {import('stylelint').Config} */
2
+ export default {
3
+ extends: 'stylelint-config-standard-scss',
4
+ rules: {
5
+ 'selector-class-pattern': ['^[a-z][a-zA-Z0-9]*$', { message: 'Selector should be in camelCase' }]
6
+ }
7
+ };
@@ -1,37 +1,37 @@
1
- {
2
- "compilerOptions": {
3
- "target": "esnext",
4
- "lib": [
5
- "dom",
6
- "dom.iterable",
7
- "esnext"
8
- ],
9
- "allowJs": true,
10
- "skipLibCheck": true,
11
- "esModuleInterop": true,
12
- "allowSyntheticDefaultImports": true,
13
- "strict": true,
14
- "forceConsistentCasingInFileNames": true,
15
- "module": "esnext",
16
- "newLine": "lf",
17
- "moduleResolution": "bundler",
18
- "isolatedModules": true,
19
- "resolveJsonModule": true,
20
- "noEmit": true,
21
- "jsx": "react-jsx",
22
- "sourceMap": true,
23
- "noUnusedLocals": true,
24
- "noUnusedParameters": true,
25
- "noFallthroughCasesInSwitch": true,
26
- "baseUrl": ".",
27
- "paths": {
28
- "@/*": [
29
- "./src/*"
30
- ],
31
- }
32
- },
33
- "exclude": [
34
- "dist",
35
- "node_modules",
36
- ]
1
+ {
2
+ "compilerOptions": {
3
+ "target": "esnext",
4
+ "lib": [
5
+ "dom",
6
+ "dom.iterable",
7
+ "esnext"
8
+ ],
9
+ "allowJs": true,
10
+ "skipLibCheck": true,
11
+ "esModuleInterop": true,
12
+ "allowSyntheticDefaultImports": true,
13
+ "strict": true,
14
+ "forceConsistentCasingInFileNames": true,
15
+ "module": "esnext",
16
+ "newLine": "lf",
17
+ "moduleResolution": "bundler",
18
+ "isolatedModules": true,
19
+ "resolveJsonModule": true,
20
+ "noEmit": true,
21
+ "jsx": "react-jsx",
22
+ "sourceMap": true,
23
+ "noUnusedLocals": true,
24
+ "noUnusedParameters": true,
25
+ "noFallthroughCasesInSwitch": true,
26
+ "baseUrl": ".",
27
+ "paths": {
28
+ "@/*": [
29
+ "./src/*"
30
+ ],
31
+ }
32
+ },
33
+ "exclude": [
34
+ "dist",
35
+ "node_modules",
36
+ ]
37
37
  }