Skip to content

Commit dcaa6bb

Browse files
committed
initial project
1 parent 3087236 commit dcaa6bb

File tree

235 files changed

+29228
-0
lines changed

Some content is hidden

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

235 files changed

+29228
-0
lines changed

.eslintrc.cjs

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
// @ts-check
2+
3+
/** @type {import('eslint').Linter.Config} */
4+
const config = {
5+
root: true,
6+
parser: "@typescript-eslint/parser",
7+
plugins: ["@typescript-eslint", "compat", "import"],
8+
extends: [
9+
"plugin:@typescript-eslint/eslint-recommended",
10+
"plugin:@typescript-eslint/recommended",
11+
"plugin:compat/recommended",
12+
"plugin:import/recommended",
13+
"plugin:import/typescript",
14+
"prettier",
15+
],
16+
env: {
17+
browser: true,
18+
es2020: true,
19+
},
20+
parserOptions: {
21+
tsconfigRootDir: __dirname,
22+
project: "./tsconfig.json",
23+
sourceType: "module",
24+
ecmaVersion: 2020,
25+
},
26+
settings: {
27+
"import/parsers": {
28+
"@typescript-eslint/parser": [".ts", ".tsx"],
29+
},
30+
"import/resolver": {
31+
typescript: true,
32+
},
33+
react: {
34+
version: "detect",
35+
},
36+
},
37+
rules: {
38+
"@typescript-eslint/ban-types": "off",
39+
"@typescript-eslint/ban-ts-comment": "off",
40+
"@typescript-eslint/consistent-type-imports": "error",
41+
"@typescript-eslint/explicit-module-boundary-types": "off",
42+
"@typescript-eslint/no-empty-interface": "off",
43+
"@typescript-eslint/no-explicit-any": "off",
44+
"@typescript-eslint/no-non-null-assertion": "off",
45+
"@typescript-eslint/no-unnecessary-condition": "error",
46+
"@typescript-eslint/no-inferrable-types": [
47+
"error",
48+
{
49+
ignoreParameters: true,
50+
},
51+
],
52+
"no-shadow": "error",
53+
"import/no-cycle": "error",
54+
"import/no-unresolved": ["error", { ignore: ["^@tanstack/"] }],
55+
"import/no-unused-modules": ["off", { unusedExports: true }],
56+
"no-redeclare": "off",
57+
},
58+
overrides: [
59+
{
60+
files: ["**/*.test.{ts,tsx}"],
61+
rules: {
62+
"@typescript-eslint/no-unnecessary-condition": "off",
63+
},
64+
},
65+
],
66+
};
67+
68+
module.exports = config;

.github/workflows/publish.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Publish to NPM
2+
3+
on:
4+
release:
5+
types: [created]
6+
7+
jobs:
8+
publish:
9+
runs-on: ubuntu-latest
10+
if: ${{ github.repository == 'Ez-Kits/form' && github.repository_owner == 'Ez-Kits' }}
11+
steps:
12+
- uses: actions/checkout@v3
13+
with:
14+
fetch-depth: 0
15+
- uses: actions/setup-node@v3
16+
with:
17+
node-version: 18
18+
cache: yarn
19+
registry-url: "https://registry.npmjs.org"
20+
21+
- name: Install dependencies
22+
run: yarn install --frozen-lockfile
23+
24+
- name: Build
25+
run: yarn build
26+
27+
- name: Publish
28+
run: yarn publish-packages ${{ github.ref_name }}
29+
env:
30+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

.gitignore

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
2+
.nx/installation
3+
.nx/cache
4+
5+
dist
6+
node_modules
7+
8+
docs/*/.vitepress/cache/
9+
coverage/

.nxignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
dist
2+
build

.vscode/css_custom_data.json

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
{
2+
"version": 1.1,
3+
"atDirectives": [
4+
{
5+
"name": "@tailwind",
6+
"description": "Use the `@tailwind` directive to insert Tailwind's `base`, `components`, `utilities` and `screens` styles into your CSS.",
7+
"references": [
8+
{
9+
"name": "Tailwind Documentation",
10+
"url": "https://tailwindcss.com/docs/functions-and-directives#tailwind"
11+
}
12+
]
13+
},
14+
{
15+
"name": "@responsive",
16+
"description": "You can generate responsive variants of your own classes by wrapping their definitions in the `@responsive` directive:\n```css\n@responsive {\n .alert {\n background-color: #E53E3E;\n }\n}\n```\n",
17+
"references": [
18+
{
19+
"name": "Tailwind Documentation",
20+
"url": "https://tailwindcss.com/docs/functions-and-directives#responsive"
21+
}
22+
]
23+
},
24+
{
25+
"name": "@screen",
26+
"description": "The `@screen` directive allows you to create media queries that reference your breakpoints by **name** instead of duplicating their values in your own CSS:\n```css\n@screen sm {\n /* ... */\n}\n```\n…gets transformed into this:\n```css\n@media (min-width: 640px) {\n /* ... */\n}\n```\n",
27+
"references": [
28+
{
29+
"name": "Tailwind Documentation",
30+
"url": "https://tailwindcss.com/docs/functions-and-directives#screen"
31+
}
32+
]
33+
},
34+
{
35+
"name": "@variants",
36+
"description": "Generate `hover`, `focus`, `active` and other **variants** of your own utilities by wrapping their definitions in the `@variants` directive:\n```css\n@variants hover, focus {\n .btn-brand {\n background-color: #3182CE;\n }\n}\n```\n",
37+
"references": [
38+
{
39+
"name": "Tailwind Documentation",
40+
"url": "https://tailwindcss.com/docs/functions-and-directives#variants"
41+
}
42+
]
43+
}
44+
]
45+
}

.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+
"esbenp.prettier-vscode",
4+
"dbaeumer.vscode-eslint",
5+
"editorconfig.editorconfig"
6+
]
7+
}

.vscode/settings.json

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{
2+
"editor.formatOnSave": true,
3+
"editor.formatOnPaste": true,
4+
"typescript.preferences.importModuleSpecifier": "non-relative",
5+
"files.eol": "\n",
6+
"html.autoClosingTags": true,
7+
"javascript.autoClosingTags": true,
8+
"typescript.autoClosingTags": true,
9+
"javascript.suggest.autoImports": true,
10+
"typescript.suggest.autoImports": true,
11+
"javascript.updateImportsOnFileMove.enabled": "always",
12+
"typescript.updateImportsOnFileMove.enabled": "always",
13+
"editor.codeActionsOnSave": {
14+
"source.organizeImports": "explicit",
15+
"source.fixAll.eslint": "explicit"
16+
},
17+
"eslint.validate": ["javascript"],
18+
"typescript.tsdk": "node_modules/typescript/lib"
19+
}

README.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<p align="center">
2+
<a href="https://github.com/Ez-Kits/form/" target="_blank">
3+
<img src="https://raw.githubusercontent.com/Ez-Kits/form/main/logo.png" width="200" title="Go to website">
4+
</a>
5+
</p>
6+
7+
<p align="center">
8+
Easy & Fast Form
9+
</p>
10+
11+
<p align="center">
12+
<a href="https://www.npmjs.com/package/@ez-kits/form-core" target="_blank">
13+
<img src="https://img.shields.io/npm/v/@ez-kits/form-core.svg?label=&color=18C75B">
14+
</a>
15+
<a href="https://npm-stat.com/charts.html?package=@ez-kits/form-core" target="_blank">
16+
<img src="https://img.shields.io/npm/dm/@ez-kits/form-core.svg?label=&color=F09E18">
17+
</a>
18+
<!-- <a href="https://ez-kits.github.io/form/" target="_blank">
19+
<img src="https://img.shields.io/badge/-Documentation-09BA4D">
20+
</a> -->
21+
</p>
22+
<br>
23+
<br>
24+
<br>
25+
26+
## ✨ Features
27+
28+
⚡️ **Fast:** Faster form and building form faster too.
29+
30+
🤏 **Minimal:** Only handles form logics. You have full controls of form's input.
31+
32+
**Validation:** Validate your form very easy with Async validator.
33+
34+
🛠️ **Simple:** Starting build your form with no configuration.
35+
36+
🔌 **Devtool:** Inspect your forms with Vue Devtool.
37+
38+
<br>
39+
40+
## 📖 Documentation:
41+
42+
<!-- [Read Documentation](https://niku98.github.io/form/) -->
43+
44+
Documentation is still in progress, please checkout examples folder to know how to use.

examples/react/.eslintrc.cjs

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
/* eslint-env node */
2+
3+
module.exports = {
4+
root: true,
5+
env: { browser: true, es2020: true },
6+
extends: [
7+
"eslint:recommended",
8+
"plugin:@typescript-eslint/recommended",
9+
"plugin:react-hooks/recommended",
10+
],
11+
parser: "@typescript-eslint/parser",
12+
parserOptions: {
13+
ecmaVersion: "latest",
14+
sourceType: "module",
15+
project: true,
16+
tsconfigRootDir: __dirname,
17+
},
18+
plugins: ["react-refresh"],
19+
rules: {
20+
"react-refresh/only-export-components": [
21+
"warn",
22+
{ allowConstantExport: true },
23+
],
24+
"@typescript-eslint/no-non-null-assertion": "off",
25+
},
26+
};

examples/react/.gitignore

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Logs
2+
logs
3+
*.log
4+
npm-debug.log*
5+
yarn-debug.log*
6+
yarn-error.log*
7+
pnpm-debug.log*
8+
lerna-debug.log*
9+
10+
node_modules
11+
dist
12+
dist-ssr
13+
*.local
14+
15+
# Editor directories and files
16+
.vscode/*
17+
!.vscode/extensions.json
18+
.idea
19+
.DS_Store
20+
*.suo
21+
*.ntvs*
22+
*.njsproj
23+
*.sln
24+
*.sw?

0 commit comments

Comments
 (0)