stacks 0.47.4 โ 0.48.2
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.
- package/buddy/art/social.png +0 -0
- package/buddy/package.json +1 -1
- package/buddy/src/commands/make.ts +27 -12
- package/buddy/src/commands/test.ts +40 -2
- package/core/actions/package.json +2 -2
- package/core/actions/src/helpers/utils.ts +29 -3
- package/core/actions/src/make.ts +37 -6
- package/core/actions/src/test-coverage.ts +1 -1
- package/core/actions/src/test-feature.ts +5 -0
- package/core/actions/src/test-unit.ts +5 -0
- package/core/ai/package.json +1 -1
- package/core/alias/package.json +1 -1
- package/core/arrays/package.json +1 -1
- package/core/auth/package.json +1 -1
- package/core/build/package.json +3 -3
- package/core/cache/package.json +3 -3
- package/core/chat/README.md +33 -40
- package/core/chat/package.json +1 -1
- package/core/cli/package.json +1 -1
- package/core/cloud/package.json +1 -1
- package/core/collections/package.json +1 -1
- package/core/config/package.json +1 -1
- package/core/dashboard/package.json +1 -1
- package/core/database/package.json +1 -1
- package/core/datetime/package.json +1 -1
- package/core/desktop/package.json +1 -1
- package/core/docs/node_modules/.bin/vitepress +2 -2
- package/core/docs/package.json +2 -2
- package/core/domains/package.json +1 -1
- package/core/drivers/package.json +1 -1
- package/core/email/README.md +101 -35
- package/core/email/package.json +1 -1
- package/core/error-handling/package.json +2 -2
- package/core/events/package.json +1 -1
- package/core/git/package.json +1 -1
- package/core/health/package.json +1 -1
- package/core/lint/node_modules/.bin/eslint +2 -2
- package/core/lint/package.json +3 -3
- package/core/logging/package.json +1 -1
- package/core/modules/package.json +1 -1
- package/core/notifications/README.md +7 -2
- package/core/notifications/package.json +1 -1
- package/core/notifications/src/index.ts +37 -9
- package/core/notifications/tests/chat/Slack.test.ts +5 -4
- package/core/notifications/tests/email/Mailgun.test.ts +4 -3
- package/core/notifications/tests/email/Sendgrid.test.ts +3 -3
- package/core/notifications/tests/sms/Twilio.test.ts +3 -3
- package/core/objects/package.json +1 -1
- package/core/path/package.json +1 -1
- package/core/path/src/index.ts +5 -0
- package/core/payments/package.json +1 -1
- package/core/push/README.md +24 -42
- package/core/push/package.json +1 -1
- package/core/realtime/package.json +1 -1
- package/core/router/package.json +1 -1
- package/core/search-engine/package.json +1 -1
- package/core/security/package.json +1 -1
- package/core/server/package.json +1 -1
- package/core/sms/README.md +82 -35
- package/core/sms/package.json +1 -1
- package/core/storage/package.json +1 -1
- package/core/storage/src/index.ts +13 -0
- package/core/strings/README.md +10 -2
- package/core/strings/package.json +4 -2
- package/core/strings/src/case.ts +14 -0
- package/core/strings/src/index.ts +4 -97
- package/core/strings/src/pluralize.ts +1 -0
- package/core/strings/src/utils.ts +80 -0
- package/core/strings/src/validation.ts +182 -0
- package/core/tables/README.md +109 -0
- package/core/tables/examples/vue/App.vue +12 -0
- package/core/tables/examples/vue/favicon.png +0 -0
- package/core/tables/examples/vue/index.html +20 -0
- package/core/tables/examples/web/favicon.png +0 -0
- package/core/tables/examples/web/index.html +13 -0
- package/core/tables/node_modules/.bin/mkdist +17 -0
- package/core/tables/node_modules/.bin/tsc +17 -0
- package/core/tables/node_modules/.bin/tsserver +17 -0
- package/core/tables/node_modules/.bin/unbuild +17 -0
- package/core/tables/package.json +97 -0
- package/core/tables/src/cli/index.ts +1 -0
- package/core/tables/src/components/Demo.vue +89 -0
- package/core/tables/src/components/README.md +111 -0
- package/core/tables/src/components/Table.vue +342 -0
- package/core/tables/src/components/TableBody.vue +33 -0
- package/core/tables/src/components/TableCellActionItems.vue +9 -0
- package/core/tables/src/components/TableFilters.vue +703 -0
- package/core/tables/src/components/TableHead.vue +87 -0
- package/core/tables/src/components/TablePagination.vue +146 -0
- package/core/tables/src/components/TableRow.vue +78 -0
- package/core/tables/src/components/TableSearch.vue +38 -0
- package/core/tables/src/components/Tooltip.vue +10 -0
- package/core/tables/src/config/tables.ts +1 -0
- package/core/tables/src/docs/index.md +0 -0
- package/core/tables/src/functions/README.md +8 -0
- package/core/tables/src/functions/dark.ts +3 -0
- package/core/tables/src/functions/index.ts +2 -0
- package/core/tables/src/functions/table.ts +180 -0
- package/core/tables/tests/example.test.ts +7 -0
- package/core/testing/node_modules/.bin/vitest +2 -2
- package/core/testing/package.json +9 -6
- package/core/types/node_modules/.bin/vitepress +2 -2
- package/core/types/package.json +4 -3
- package/core/types/src/cli.ts +10 -2
- package/core/types/src/hashing.ts +15 -0
- package/core/types/src/index.ts +2 -0
- package/core/types/src/notifications.ts +1 -0
- package/core/types/src/reactivity.ts +3 -0
- package/core/types/src/tables.ts +48 -0
- package/core/ui/node_modules/.bin/vue-tsc +2 -2
- package/core/ui/package.json +2 -2
- package/core/utils/package.json +1 -1
- package/core/x-ray/package.json +1 -1
- package/package.json +3 -2
- package/tsconfig.json +8 -0
- package/vitest.config.ts +2 -0
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
# Table Stack
|
|
2
|
+
|
|
3
|
+
The easy & modern way to work with tables of any size. Blazing-fast searching, filtering, sorting, and paginating. Powered by your search engine of choice. Kick-start the development of a feature-rich & configurable table UI, including a beautiful default UX.
|
|
4
|
+
|
|
5
|
+
## ๐ Features
|
|
6
|
+
|
|
7
|
+
This Vue component library comes with the following features, improvements to the `table` element:
|
|
8
|
+
|
|
9
|
+
- `<table-v2 />`
|
|
10
|
+
- quickly spin up a highly-configurable table UI without worrying about the backend
|
|
11
|
+
- "facet-filtering" & "table head sorting" natively built-in
|
|
12
|
+
- Meilisearch & Laravel Scout API compatible
|
|
13
|
+
- Enterprise-ready
|
|
14
|
+
- _Soon: Algolia & Typesense integration_
|
|
15
|
+
|
|
16
|
+
Get granular control over the table appearance & behavior, with the following (optional) components:
|
|
17
|
+
|
|
18
|
+
- `<table-search />`
|
|
19
|
+
- configure your search input for blazing fast search results
|
|
20
|
+
|
|
21
|
+
- `<table-filters />`
|
|
22
|
+
- overwrite the default display of your table's filters
|
|
23
|
+
|
|
24
|
+
- `<table-pagination />`
|
|
25
|
+
- easily configure the pagination of your table
|
|
26
|
+
|
|
27
|
+
- `<table-configure />`
|
|
28
|
+
- simple way to configure the table in HTML semantic fashion
|
|
29
|
+
|
|
30
|
+
Read more about these features in their respective [docs](https://ow3.org/docs).
|
|
31
|
+
|
|
32
|
+
## ๐ก Get Started
|
|
33
|
+
|
|
34
|
+
To get started, you simply need to install the `@ow3/table-vue` npm package.
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
npm install @ow3/table-vue
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Next up, we need to make use of the components.
|
|
41
|
+
|
|
42
|
+
```vue
|
|
43
|
+
<script setup>
|
|
44
|
+
import { Table as TableV2 } from 'table-vue'
|
|
45
|
+
</script>
|
|
46
|
+
|
|
47
|
+
<template>
|
|
48
|
+
<!-- the `type`-property indicates to to the search engine the "index" you want to target -->
|
|
49
|
+
<TableV2 type="movies" />
|
|
50
|
+
|
|
51
|
+
<!-- these are the default properties (all of them are optional) -->
|
|
52
|
+
<TableV2
|
|
53
|
+
source="127.0.0.1:7700"
|
|
54
|
+
columns="*"
|
|
55
|
+
:searchable="true"
|
|
56
|
+
:filterable="true"
|
|
57
|
+
:sortable="true"
|
|
58
|
+
:actionable="true"
|
|
59
|
+
:selectable="false"
|
|
60
|
+
:per-page="20"
|
|
61
|
+
/>
|
|
62
|
+
|
|
63
|
+
<!-- another "data table" example -->
|
|
64
|
+
<TableV2
|
|
65
|
+
source="127.0.0.1:7700"
|
|
66
|
+
password="NtUvZv5Q87e355b807622149c350ac38679645b4e2603a1d3eb48cda080f977e76329aeb"
|
|
67
|
+
type="orders"
|
|
68
|
+
columns="id: Order, customer_name: Customer, customer_po: PO#, part_name: Part, created_at: Ordered, due_at: Due, stage_name: Status"
|
|
69
|
+
sort="id:desc"
|
|
70
|
+
sorts="id, customer_name, customer_po, part_name, stage_name, due_at, created_at"
|
|
71
|
+
filters="customer_name, vendor_name, part_name, document_types"
|
|
72
|
+
actions="Edit"
|
|
73
|
+
per-page="10"
|
|
74
|
+
selectable="true"
|
|
75
|
+
/>
|
|
76
|
+
</template>
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
To learn more about what's possible & how to best build modern data tables, check out our documentation.
|
|
80
|
+
|
|
81
|
+
## ๐งช Testing
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
yarn test
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## ๐ Changelog
|
|
88
|
+
|
|
89
|
+
Please see our [releases](https://github.com/stacksjs/table/releases) page for more information on what has changed recently.
|
|
90
|
+
|
|
91
|
+
## ๐ช๐ผ Contributing
|
|
92
|
+
|
|
93
|
+
Please see [CONTRIBUTING](.github/CONTRIBUTING.md) for details.
|
|
94
|
+
|
|
95
|
+
## ๐ Community
|
|
96
|
+
|
|
97
|
+
For help, discussion about best practices, or any other conversation that would benefit from being searchable:
|
|
98
|
+
|
|
99
|
+
[Table Elements on GitHub](https://github.com/stacksjs/table/discussions)
|
|
100
|
+
|
|
101
|
+
For casual chit-chat with others using this package:
|
|
102
|
+
|
|
103
|
+
[Join the Open Web Discord Server](https://discord.ow3.org)
|
|
104
|
+
|
|
105
|
+
## ๐ License
|
|
106
|
+
|
|
107
|
+
The MIT License (MIT). Please see [LICENSE](LICENSE.md) for more information.
|
|
108
|
+
|
|
109
|
+
Made with โค๏ธ by Open Web Labs.
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
This is how you would implement your generated
|
|
3
|
+
library into your own frontend. You may import
|
|
4
|
+
any of the components developed.
|
|
5
|
+
-->
|
|
6
|
+
<script setup lang="ts">
|
|
7
|
+
import { Demo } from './dist/index.mjs'
|
|
8
|
+
</script>
|
|
9
|
+
|
|
10
|
+
<template>
|
|
11
|
+
<Demo />
|
|
12
|
+
</template>
|
|
Binary file
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<link rel="icon" href="./favicon.png" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
+
<title>Stacks Vue Example</title>
|
|
8
|
+
<link rel="stylesheet" href="./dist/style.css">
|
|
9
|
+
</head>
|
|
10
|
+
<body>
|
|
11
|
+
<div id="app"></div>
|
|
12
|
+
|
|
13
|
+
<script type="module">
|
|
14
|
+
import { createApp } from 'vue'
|
|
15
|
+
import App from './App.vue'
|
|
16
|
+
|
|
17
|
+
createApp(App).mount('#app')
|
|
18
|
+
</script>
|
|
19
|
+
</body>
|
|
20
|
+
</html>
|
|
Binary file
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<link rel="icon" href="./favicon.png" />
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
|
+
<title>Stacks Web Component Example</title>
|
|
8
|
+
</head>
|
|
9
|
+
<body>
|
|
10
|
+
<script type="module" src="./dist/index.mjs"></script>
|
|
11
|
+
<hello-world></hello-world>
|
|
12
|
+
</body>
|
|
13
|
+
</html>
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
|
|
6
|
+
esac
|
|
7
|
+
|
|
8
|
+
if [ -z "$NODE_PATH" ]; then
|
|
9
|
+
export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
|
|
10
|
+
else
|
|
11
|
+
export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
|
|
12
|
+
fi
|
|
13
|
+
if [ -x "$basedir/node" ]; then
|
|
14
|
+
exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/mkdist@1.0.0_typescript@4.9.4/node_modules/mkdist/dist/cli.cjs" "$@"
|
|
15
|
+
else
|
|
16
|
+
exec node "$basedir/../../../../../node_modules/.pnpm/mkdist@1.0.0_typescript@4.9.4/node_modules/mkdist/dist/cli.cjs" "$@"
|
|
17
|
+
fi
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
|
|
6
|
+
esac
|
|
7
|
+
|
|
8
|
+
if [ -z "$NODE_PATH" ]; then
|
|
9
|
+
export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
|
|
10
|
+
else
|
|
11
|
+
export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
|
|
12
|
+
fi
|
|
13
|
+
if [ -x "$basedir/node" ]; then
|
|
14
|
+
exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/typescript@4.9.4/node_modules/typescript/bin/tsc" "$@"
|
|
15
|
+
else
|
|
16
|
+
exec node "$basedir/../../../../../node_modules/.pnpm/typescript@4.9.4/node_modules/typescript/bin/tsc" "$@"
|
|
17
|
+
fi
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
|
|
6
|
+
esac
|
|
7
|
+
|
|
8
|
+
if [ -z "$NODE_PATH" ]; then
|
|
9
|
+
export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
|
|
10
|
+
else
|
|
11
|
+
export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
|
|
12
|
+
fi
|
|
13
|
+
if [ -x "$basedir/node" ]; then
|
|
14
|
+
exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/typescript@4.9.4/node_modules/typescript/bin/tsserver" "$@"
|
|
15
|
+
else
|
|
16
|
+
exec node "$basedir/../../../../../node_modules/.pnpm/typescript@4.9.4/node_modules/typescript/bin/tsserver" "$@"
|
|
17
|
+
fi
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
|
|
6
|
+
esac
|
|
7
|
+
|
|
8
|
+
if [ -z "$NODE_PATH" ]; then
|
|
9
|
+
export NODE_PATH="/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
|
|
10
|
+
else
|
|
11
|
+
export NODE_PATH="$NODE_PATH:/home/runner/work/stacks/stacks/node_modules/.pnpm/node_modules"
|
|
12
|
+
fi
|
|
13
|
+
if [ -x "$basedir/node" ]; then
|
|
14
|
+
exec "$basedir/node" "$basedir/../../../../../node_modules/.pnpm/unbuild@1.0.2/node_modules/unbuild/dist/cli.mjs" "$@"
|
|
15
|
+
else
|
|
16
|
+
exec node "$basedir/../../../../../node_modules/.pnpm/unbuild@1.0.2/node_modules/unbuild/dist/cli.mjs" "$@"
|
|
17
|
+
fi
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@stacksjs/tables",
|
|
3
|
+
"version": "0.48.2",
|
|
4
|
+
"description": "The easy & modern way to work with tables. Facet filtering, searching, pagination, ...",
|
|
5
|
+
"author": "Open Web Labs",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "https://github.com/stacksjs/tables.git"
|
|
10
|
+
},
|
|
11
|
+
"bugs": {
|
|
12
|
+
"url": "https://github.com/stacksjs/tables/issues"
|
|
13
|
+
},
|
|
14
|
+
"keywords": [
|
|
15
|
+
"tables",
|
|
16
|
+
"filters",
|
|
17
|
+
"pagination",
|
|
18
|
+
"sorting",
|
|
19
|
+
"search",
|
|
20
|
+
"component",
|
|
21
|
+
"library",
|
|
22
|
+
"vue",
|
|
23
|
+
"typescript",
|
|
24
|
+
"javascript"
|
|
25
|
+
],
|
|
26
|
+
"contributors": [
|
|
27
|
+
"Chris Breuer <chris@ow3.org>"
|
|
28
|
+
],
|
|
29
|
+
"engines": {
|
|
30
|
+
"node": ">=v18.12.1",
|
|
31
|
+
"pnpm": ">=7.21.0"
|
|
32
|
+
},
|
|
33
|
+
"scripts": {
|
|
34
|
+
"dev": "pnpm buddy dev",
|
|
35
|
+
"dev:components": "pnpm buddy dev:components",
|
|
36
|
+
"dev:docs": "pnpm buddy dev:docs",
|
|
37
|
+
"dev:functions": "pnpm buddy dev:functions // todo: opens the auto-generated web server of functions",
|
|
38
|
+
"development": "pnpm buddy dev",
|
|
39
|
+
"build": "pnpm buddy build",
|
|
40
|
+
"build:components": "pnpm buddy build:components",
|
|
41
|
+
"build:vue-components": "pnpm buddy build:web-components",
|
|
42
|
+
"build:web-components": "pnpm buddy build:web-components",
|
|
43
|
+
"build:functions": "pnpm buddy build:functions // needs to have option to ",
|
|
44
|
+
"build:docs": "pnpm buddy build:docs",
|
|
45
|
+
"prod": "pnpm buddy build",
|
|
46
|
+
"prod:components": "pnpm buddy build:components",
|
|
47
|
+
"prod:vue-components": "pnpm buddy build:web-components",
|
|
48
|
+
"prod:web-components": "pnpm buddy build:web-components",
|
|
49
|
+
"prod:functions": "pnpm buddy build:functions // needs to have option to ",
|
|
50
|
+
"prod:docs": "pnpm buddy build:docs",
|
|
51
|
+
"production": "pnpm buddy build",
|
|
52
|
+
"deploy": "pnpm buddy deploy",
|
|
53
|
+
"deploy:functions": "pnpm buddy deploy:functions",
|
|
54
|
+
"deploy:pages": "pnpm buddy deploy:functions",
|
|
55
|
+
"deploy:docs": "pnpm buddy deploy:docs",
|
|
56
|
+
"deploy:all": "pnpm buddy deploy:all",
|
|
57
|
+
"lint": "pnpm buddy lint",
|
|
58
|
+
"lint:fix": "pnpm buddy lint:fix",
|
|
59
|
+
"serve": "pnpm buddy dev",
|
|
60
|
+
"serve:pages": "pnpm buddy dev:pages",
|
|
61
|
+
"serve:functions": "pnpm buddy dev:functions",
|
|
62
|
+
"make": "pnpm buddy make",
|
|
63
|
+
"make:table": "pnpm buddy make:table",
|
|
64
|
+
"commit": "pnpm buddy commit",
|
|
65
|
+
"release": "pnpm buddy release",
|
|
66
|
+
"changelog": "pnpm buddy changelog",
|
|
67
|
+
"generate": "pnpm buddy generate",
|
|
68
|
+
"generate:entries": "pnpm buddy generate:entries",
|
|
69
|
+
"generate:vue-compat": "pnpm buddy generate:vue-compat",
|
|
70
|
+
"generate:vscode-custom-data": "pnpm buddy generate:vscode-custom-data",
|
|
71
|
+
"generate:web-types": "pnpm buddy generate:web-types",
|
|
72
|
+
"generate:component-meta": "pnpm buddy generate:component-meta",
|
|
73
|
+
"test": "pnpm buddy test",
|
|
74
|
+
"test:coverage": "pnpm buddy test:coverage",
|
|
75
|
+
"test:types": "pnpm buddy test:types"
|
|
76
|
+
},
|
|
77
|
+
"peerDependencies": {
|
|
78
|
+
"@stacksjs/types": "workspace:*",
|
|
79
|
+
"@stacksjs/utils": "workspace:*",
|
|
80
|
+
"@vueform/multiselect": "^2.5.8",
|
|
81
|
+
"meilisearch": "^0.30.0"
|
|
82
|
+
},
|
|
83
|
+
"devDependencies": {
|
|
84
|
+
"@stacksjs/testing": "workspace:*",
|
|
85
|
+
"mkdist": "^1.0.0",
|
|
86
|
+
"typescript": "^4.9.4",
|
|
87
|
+
"unbuild": "^1.0.2"
|
|
88
|
+
},
|
|
89
|
+
"lint-staged": {
|
|
90
|
+
"*.{js,jsx,ts,tsx,vue}": "eslint --fix"
|
|
91
|
+
},
|
|
92
|
+
"config": {
|
|
93
|
+
"commitizen": {
|
|
94
|
+
"path": ".stacks/node_modules/cz-git"
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
import { Table as TableV2 } from './main'
|
|
3
|
+
|
|
4
|
+
const filterValues = {
|
|
5
|
+
website_access: [{
|
|
6
|
+
label: 'Yes',
|
|
7
|
+
value: 1,
|
|
8
|
+
}, {
|
|
9
|
+
label: 'No',
|
|
10
|
+
value: 0,
|
|
11
|
+
}],
|
|
12
|
+
disposition: [{
|
|
13
|
+
label: 'Active',
|
|
14
|
+
value: 'Active',
|
|
15
|
+
}, {
|
|
16
|
+
label: 'Released',
|
|
17
|
+
value: 'Released',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
label: 'Terminated',
|
|
21
|
+
value: 'Terminated',
|
|
22
|
+
}],
|
|
23
|
+
}
|
|
24
|
+
</script>
|
|
25
|
+
|
|
26
|
+
<template>
|
|
27
|
+
<div class="font-sans">
|
|
28
|
+
<Suspense>
|
|
29
|
+
<TableSearch />
|
|
30
|
+
</Suspense>
|
|
31
|
+
|
|
32
|
+
<Suspense>
|
|
33
|
+
<TableFilters :filter-values="filterValues" />
|
|
34
|
+
</Suspense>
|
|
35
|
+
<Suspense>
|
|
36
|
+
<TableV2
|
|
37
|
+
source="http://127.0.0.1:7700/"
|
|
38
|
+
password=""
|
|
39
|
+
type="users"
|
|
40
|
+
columns="
|
|
41
|
+
id: ID,
|
|
42
|
+
first_name: First Name,
|
|
43
|
+
last_name: Last Name,
|
|
44
|
+
npn: NPN,
|
|
45
|
+
email: Email,
|
|
46
|
+
website_access: Website Access,
|
|
47
|
+
disposition: Disposition"
|
|
48
|
+
sort="id:desc"
|
|
49
|
+
sorts="id, email, npn"
|
|
50
|
+
filters=""
|
|
51
|
+
actions="Info"
|
|
52
|
+
per-page="50"
|
|
53
|
+
selectable="true"
|
|
54
|
+
>
|
|
55
|
+
<template #id="id">
|
|
56
|
+
<a
|
|
57
|
+
href="#"
|
|
58
|
+
class="flex font-medium text-yellow-600"
|
|
59
|
+
>
|
|
60
|
+
{{ id.value }}
|
|
61
|
+
</a>
|
|
62
|
+
</template>
|
|
63
|
+
|
|
64
|
+
<template #customer_name="customerName">
|
|
65
|
+
<a
|
|
66
|
+
href="#"
|
|
67
|
+
class="flex font-medium text-yellow-600"
|
|
68
|
+
>
|
|
69
|
+
{{ customerName.value }}
|
|
70
|
+
</a>
|
|
71
|
+
</template>
|
|
72
|
+
<template #part_name="parts">
|
|
73
|
+
<a
|
|
74
|
+
v-for="(part, index) in parts.value"
|
|
75
|
+
:key="index"
|
|
76
|
+
href="#"
|
|
77
|
+
class="flex font-medium text-yellow-600"
|
|
78
|
+
>
|
|
79
|
+
{{ part }}
|
|
80
|
+
</a>
|
|
81
|
+
</template>
|
|
82
|
+
</TableV2>
|
|
83
|
+
</Suspense>
|
|
84
|
+
|
|
85
|
+
<Suspense>
|
|
86
|
+
<TablePagination />
|
|
87
|
+
</Suspense>
|
|
88
|
+
</div>
|
|
89
|
+
</template>
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# Your Component Library
|
|
2
|
+
|
|
3
|
+
This is where you create your components.
|
|
4
|
+
|
|
5
|
+
> **Note**
|
|
6
|
+
> If your project does not require any UI components, you can remove this folder. If your library does include components, you may use this readme as the boilerplate of your component library.
|
|
7
|
+
|
|
8
|
+
## ๐ก Get Started
|
|
9
|
+
|
|
10
|
+
It's easy to get started. The only prerequisite is a basic understanding HTML, sprinkled with *minimal* JavaScript. In other words, there is virtually no learning curve.
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
# you may use this GitHub template or the following command:
|
|
14
|
+
npx stacks new hello-world
|
|
15
|
+
cd hello-world
|
|
16
|
+
|
|
17
|
+
pnpm i # install deps for all packages
|
|
18
|
+
pnpm dev # stubs the packages for local use
|
|
19
|
+
pnpm dev:vite-vue # starts the dev server
|
|
20
|
+
pnpm build # builds the packages for production-ready use
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Additionally, the `package.json` contains some useful snippets you likely want to be aware of.
|
|
24
|
+
|
|
25
|
+
## ๐ค Usage
|
|
26
|
+
|
|
27
|
+
Because this project is optimized toward the development of easily reusable & composable component libraries, it's very easy to use (and distribute):
|
|
28
|
+
|
|
29
|
+
```vue
|
|
30
|
+
<script setup lang="ts">
|
|
31
|
+
import HelloWorld from 'hello-world-stack'
|
|
32
|
+
</script>
|
|
33
|
+
|
|
34
|
+
<template>
|
|
35
|
+
<HelloWorld name="J Doe" />
|
|
36
|
+
</template>
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Tips
|
|
40
|
+
|
|
41
|
+
This project also includes a simple way to handle your versioning. Through semantic commit names, it will also generate the two changelogs: one as part of the GitHub releases & the one markdown file that's stored within the root of the project.
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
# how to create a git commit?
|
|
45
|
+
git add . # select the changes you want to commit
|
|
46
|
+
pnpm run commit # then simply follow the prompts
|
|
47
|
+
|
|
48
|
+
# after you successfully committed, you may create a "release"
|
|
49
|
+
pnpm run release # automates git commits, versioning, and CHANGELOG generation
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Read more about these tips in the docs.
|
|
53
|
+
|
|
54
|
+
### Dev Tools
|
|
55
|
+
|
|
56
|
+
- [TypeScript 4.9](https://www.typescriptlang.org/)
|
|
57
|
+
- [Vite 3.1](https://vitejs.dev/) - "Next Generation Frontend Tooling"
|
|
58
|
+
- [Vue 3.2](https://vuejs.org/) - make easy use of Vue's powerful SFCs
|
|
59
|
+
- [UnoCSS](https://github.com/unocss/unocss) - create your own style guide with ease (e.g. Tailwind CSS)
|
|
60
|
+
- [Commitizen & git-cz](https://www.npmjs.com/package/git-cz) - Automate git commits, versioning, and CHANGELOG generation
|
|
61
|
+
- [Vitest](https://github.com/vitest-dev/vitest) - Unit & E2E testing powered by Vite
|
|
62
|
+
- [Renovate](https://renovatebot.com/) - automatic PR dependency updates
|
|
63
|
+
- [GitHub Actions](https://github.com/features/actions) - automatically fixes code style issues, tags releases, and runs the test suite
|
|
64
|
+
- [VS Code Extensions](./.vscode/extensions.json)
|
|
65
|
+
- [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar) - Vue 3 `<script setup>` IDE support
|
|
66
|
+
- [cspell](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker) - spell checking
|
|
67
|
+
- [Intellisense](https://marketplace.visualstudio.com/items?itemName=voorjaar.windicss-intellisense) - Tailwind CSS (or Windi CSS) class name sorter
|
|
68
|
+
|
|
69
|
+
### Plugins
|
|
70
|
+
|
|
71
|
+
- [`unplugin-vue-components`](https://github.com/antfu/unplugin-vue-components) - components auto import
|
|
72
|
+
- [`unplugin-auto-import`](https://github.com/antfu/unplugin-auto-import) - Directly use Vue Composition API and others without importing
|
|
73
|
+
- [VueUse](https://github.com/antfu/vueuse) - Collection of useful composition APIs
|
|
74
|
+
- [Collect.js](https://github.com/ecrmnn/collect.js) - Easily work with object via Laravel-like collections
|
|
75
|
+
|
|
76
|
+
### Coding Style
|
|
77
|
+
|
|
78
|
+
- Composition API with [`<script setup>` SFC syntax](https://github.com/vuejs/rfcs/pull/227)
|
|
79
|
+
- [ESLint](https://eslint.org/) - statically analyzes, fixes and formats your code without the need for Prettier
|
|
80
|
+
|
|
81
|
+
When using this template, feel free to adjust it to your needs. It is a framework to help you quickly & efficiently bootstrap & design component libraries using industry best practices.
|
|
82
|
+
|
|
83
|
+
## ๐งช Testing
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
pnpm test
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## ๐ Changelog
|
|
90
|
+
|
|
91
|
+
Please see our [releases](https://github.com/stacksjs/vue-components-library-starter/releases) page for more information on what has changed recently.
|
|
92
|
+
|
|
93
|
+
## ๐ช๐ผ Contributing
|
|
94
|
+
|
|
95
|
+
Please review the [Contributing Guide](https://github.com/stacksjs/contributing) for details.
|
|
96
|
+
|
|
97
|
+
## ๐ Community
|
|
98
|
+
|
|
99
|
+
For help, discussion about best practices, or any other conversation that would benefit from being searchable:
|
|
100
|
+
|
|
101
|
+
[Discussions on GitHub](https://github.com/stacksjs/stacks/discussions)
|
|
102
|
+
|
|
103
|
+
For casual chit-chat with others using this package:
|
|
104
|
+
|
|
105
|
+
[Join the Stacks Discord Server](https://discord.ow3.org)
|
|
106
|
+
|
|
107
|
+
## ๐ License
|
|
108
|
+
|
|
109
|
+
The MIT License (MIT). Please see [LICENSE](https://github.com/stacksjs/stacks/tree/main/LICENSE.md) for more information.
|
|
110
|
+
|
|
111
|
+
Made with โค๏ธ
|