adminforth 1.1.1 → 1.1.3

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.
Files changed (60) hide show
  1. package/dist/index.js +23 -7
  2. package/dist/modules/codeInjector.js +9 -9
  3. package/dist/plugins/ForeignInlineListPlugin/index.js +2 -1
  4. package/dist/spa/spa/src/App.vue +1 -1
  5. package/dist/spa/spa/src/components/ResourceListTable.vue +363 -0
  6. package/dist/spa/spa/src/stores/core.ts +7 -9
  7. package/dist/spa/spa/src/utils.ts +2 -2
  8. package/dist/spa/spa/src/views/CreateView.vue +3 -0
  9. package/dist/spa/spa/src/views/EditView.vue +3 -0
  10. package/dist/spa/spa/src/views/ListView.vue +24 -317
  11. package/dist/spa/spa/src/views/ShowView.vue +8 -11
  12. package/index.ts +29 -11
  13. package/modules/codeInjector.ts +12 -12
  14. package/modules/styles.ts +52 -0
  15. package/package.json +1 -1
  16. package/plugins/ForeignInlineListPlugin/custom/InlineList.vue +110 -2
  17. package/plugins/ForeignInlineListPlugin/index.ts +2 -2
  18. package/spa/src/App.vue +1 -1
  19. package/spa/src/components/ResourceListTable.vue +363 -0
  20. package/spa/src/stores/core.ts +7 -9
  21. package/spa/src/utils.ts +2 -2
  22. package/spa/src/views/CreateView.vue +3 -0
  23. package/spa/src/views/EditView.vue +3 -0
  24. package/spa/src/views/ListView.vue +24 -317
  25. package/spa/src/views/ShowView.vue +8 -11
  26. package/types/AdminForthConfig.ts +79 -23
  27. package/documentation/README.md +0 -41
  28. package/documentation/babel.config.js +0 -3
  29. package/documentation/blog/2019-05-28-first-blog-post.md +0 -12
  30. package/documentation/blog/2019-05-29-long-blog-post.md +0 -44
  31. package/documentation/blog/2021-08-01-mdx-blog-post.mdx +0 -20
  32. package/documentation/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
  33. package/documentation/blog/2021-08-26-welcome/index.md +0 -25
  34. package/documentation/blog/authors.yml +0 -17
  35. package/documentation/blog/tags.yml +0 -16
  36. package/documentation/docs/Getting Started.md +0 -374
  37. package/documentation/docs/Glossary.md +0 -37
  38. package/documentation/docs/image.png +0 -0
  39. package/documentation/docusaurus.config.ts +0 -171
  40. package/documentation/package-lock.json +0 -14655
  41. package/documentation/package.json +0 -51
  42. package/documentation/sidebars.ts +0 -51
  43. package/documentation/src/components/HomepageFeatures/index.tsx +0 -68
  44. package/documentation/src/components/HomepageFeatures/styles.module.css +0 -11
  45. package/documentation/src/css/custom.css +0 -30
  46. package/documentation/src/pages/index.module.css +0 -24
  47. package/documentation/src/pages/index.tsx +0 -43
  48. package/documentation/src/pages/markdown-page.md +0 -7
  49. package/documentation/static/.nojekyll +0 -0
  50. package/documentation/static/CNAME +0 -1
  51. package/documentation/static/img/css.png +0 -0
  52. package/documentation/static/img/db.png +0 -0
  53. package/documentation/static/img/db2.png +0 -0
  54. package/documentation/static/img/favicon.png +0 -0
  55. package/documentation/static/img/gen.sh +0 -24
  56. package/documentation/static/img/logo.svg +0 -19
  57. package/documentation/static/img/tail.png +0 -0
  58. package/documentation/static/img/vue.png +0 -0
  59. package/documentation/typedoc-plugin.mjs +0 -11
  60. /package/{styles.js → dist/modules/styles.js} +0 -0
@@ -1,51 +0,0 @@
1
- {
2
- "name": "adminforth",
3
- "version": "0.0.0",
4
- "private": true,
5
- "scripts": {
6
- "gendoc": "typedoc",
7
- "docusaurus": "docusaurus",
8
- "start": "docusaurus start",
9
- "build": "docusaurus build",
10
- "swizzle": "docusaurus swizzle",
11
- "deploy": "DEPLOYMENT_BRANCH=main docusaurus deploy",
12
- "clear": "docusaurus clear",
13
- "serve": "docusaurus serve",
14
- "write-translations": "docusaurus write-translations",
15
- "write-heading-ids": "docusaurus write-heading-ids",
16
- "typecheck": "tsc"
17
- },
18
- "dependencies": {
19
- "@docusaurus/core": "3.4.0",
20
- "@docusaurus/preset-classic": "3.4.0",
21
- "@mdx-js/react": "^3.0.0",
22
- "clsx": "^2.0.0",
23
- "prism-react-renderer": "^2.3.0",
24
- "react": "^18.0.0",
25
- "react-dom": "^18.0.0"
26
- },
27
- "devDependencies": {
28
- "@docusaurus/module-type-aliases": "3.4.0",
29
- "@docusaurus/tsconfig": "3.4.0",
30
- "@docusaurus/types": "3.4.0",
31
- "docusaurus-plugin-typedoc": "^1.0.1",
32
- "typedoc": "^0.25.13",
33
- "typedoc-plugin-markdown": "^4.0.3",
34
- "typescript": "~5.2.2"
35
- },
36
- "browserslist": {
37
- "production": [
38
- ">0.5%",
39
- "not dead",
40
- "not op_mini all"
41
- ],
42
- "development": [
43
- "last 3 chrome version",
44
- "last 3 firefox version",
45
- "last 5 safari version"
46
- ]
47
- },
48
- "engines": {
49
- "node": ">=18.0"
50
- }
51
- }
@@ -1,51 +0,0 @@
1
- import type {SidebarsConfig} from '@docusaurus/plugin-content-docs';
2
- import typedocSidebar from "./docs/api/typedoc-sidebar.cjs";
3
-
4
- /**
5
- * Creating a sidebar enables you to:
6
- - create an ordered group of docs
7
- - render a sidebar for each doc of that group
8
- - provide next/previous navigation
9
-
10
- The sidebars can be generated from the filesystem, or explicitly defined here.
11
-
12
- Create as many sidebars as you want.
13
- */
14
- const sidebars: SidebarsConfig = {
15
- // By default, Docusaurus generates a sidebar from the docs folder structure
16
- tutorialSidebar: [
17
- {
18
- type: 'autogenerated',
19
- dirName: '.'
20
- },
21
- ],
22
-
23
- apiSidebar: [
24
- {
25
- type: "category",
26
- label: "API",
27
- link: {
28
- type: "doc",
29
- id: "api/index",
30
- },
31
- items: typedocSidebar,
32
- },
33
- ],
34
-
35
-
36
-
37
- // But you can create a sidebar manually
38
- /*
39
- tutorialSidebar: [
40
- 'intro',
41
- 'hello',
42
- {
43
- type: 'category',
44
- label: 'Tutorial',
45
- items: ['tutorial-basics/create-a-document'],
46
- },
47
- ],
48
- */
49
- };
50
-
51
- export default sidebars;
@@ -1,68 +0,0 @@
1
- import clsx from 'clsx';
2
- import Heading from '@theme/Heading';
3
- import styles from './styles.module.css';
4
-
5
- type FeatureItem = {
6
- title: string;
7
- img: string;
8
- description: JSX.Element;
9
- };
10
-
11
- const FeatureList: FeatureItem[] = [
12
- {
13
- title: 'CRUD Out of the Box',
14
- img: require('@site/static/img/db2.png').default,
15
- description: (
16
- <>
17
- Initialize AdminForth with your database URL and get a full-fledged admin panel to
18
- List, Create, Update, Filter and Delete data with ease.
19
- </>
20
- ),
21
- },
22
- {
23
- title: 'Vue3 Driven',
24
- img: require('@site/static/img/vue.png').default,
25
- description: (
26
- <>
27
- Extend easily by creating own Vue3 components and pages
28
- </>
29
- ),
30
- },
31
- {
32
- title: 'Tailwind Look',
33
- img: require('@site/static/img/css.png').default,
34
- description: (
35
- <>
36
- Look is based on TailwindCSS, with a themes customization and dark mode available
37
- </>
38
- ),
39
- },
40
- ];
41
-
42
- function Feature({title, img, description}: FeatureItem) {
43
- return (
44
- <div className={clsx('col col--4')}>
45
- <div className="text--center">
46
- <img src={img} alt={title} style={{borderRadius: '50px', width: 250}} />
47
- </div>
48
- <div className="text--center padding-horiz--md">
49
- <Heading as="h3">{title}</Heading>
50
- <p>{description}</p>
51
- </div>
52
- </div>
53
- );
54
- }
55
-
56
- export default function HomepageFeatures(): JSX.Element {
57
- return (
58
- <section className={styles.features}>
59
- <div className="container">
60
- <div className="row">
61
- {FeatureList.map((props, idx) => (
62
- <Feature key={idx} {...props} />
63
- ))}
64
- </div>
65
- </div>
66
- </section>
67
- );
68
- }
@@ -1,11 +0,0 @@
1
- .features {
2
- display: flex;
3
- align-items: center;
4
- padding: 2rem 0;
5
- width: 100%;
6
- }
7
-
8
- .featureSvg {
9
- height: 200px;
10
- width: 200px;
11
- }
@@ -1,30 +0,0 @@
1
- /**
2
- * Any CSS included here will be global. The classic template
3
- * bundles Infima by default. Infima is a CSS framework designed to
4
- * work well for content-centric websites.
5
- */
6
-
7
- /* You can override the default Infima variables here. */
8
- :root {
9
- --ifm-color-primary: #2e8555;
10
- --ifm-color-primary-dark: #29784c;
11
- --ifm-color-primary-darker: #277148;
12
- --ifm-color-primary-darkest: #205d3b;
13
- --ifm-color-primary-light: #33925d;
14
- --ifm-color-primary-lighter: #359962;
15
- --ifm-color-primary-lightest: #3cad6e;
16
- --ifm-code-font-size: 95%;
17
- --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1);
18
- }
19
-
20
- /* For readability concerns, you should choose a lighter palette in dark mode. */
21
- [data-theme='dark'] {
22
- --ifm-color-primary: #25c2a0;
23
- --ifm-color-primary-dark: #21af90;
24
- --ifm-color-primary-darker: #1fa588;
25
- --ifm-color-primary-darkest: #1a8870;
26
- --ifm-color-primary-light: #29d5b0;
27
- --ifm-color-primary-lighter: #32d8b4;
28
- --ifm-color-primary-lightest: #4fddbf;
29
- --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
30
- }
@@ -1,24 +0,0 @@
1
- /**
2
- * CSS files with the .module.css suffix will be treated as CSS modules
3
- * and scoped locally.
4
- */
5
-
6
- .heroBanner {
7
- padding: 4rem 0;
8
- text-align: center;
9
- position: relative;
10
- overflow: hidden;
11
- background-color: #48C5FF;
12
- }
13
-
14
- @media screen and (max-width: 996px) {
15
- .heroBanner {
16
- padding: 2rem;
17
- }
18
- }
19
-
20
- .buttons {
21
- display: flex;
22
- align-items: center;
23
- justify-content: center;
24
- }
@@ -1,43 +0,0 @@
1
- import clsx from 'clsx';
2
- import Link from '@docusaurus/Link';
3
- import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
4
- import Layout from '@theme/Layout';
5
- import HomepageFeatures from '@site/src/components/HomepageFeatures';
6
- import Heading from '@theme/Heading';
7
-
8
- import styles from './index.module.css';
9
-
10
- function HomepageHeader() {
11
- const {siteConfig} = useDocusaurusContext();
12
- return (
13
- <header className={clsx('hero hero--primary', styles.heroBanner)}>
14
- <div className="container">
15
- <Heading as="h1" className="hero__title">
16
- {siteConfig.title}
17
- </Heading>
18
- <p className="hero__subtitle">{siteConfig.tagline}</p>
19
- <div className={styles.buttons}>
20
- <Link
21
- className="button button--secondary button--lg"
22
- to="/docs/Getting%20Started">
23
- AdminForth Tutorial - 5min ⏱️
24
- </Link>
25
- </div>
26
- </div>
27
- </header>
28
- );
29
- }
30
-
31
- export default function Home(): JSX.Element {
32
- const {siteConfig} = useDocusaurusContext();
33
- return (
34
- <Layout
35
- title={`Hello from ${siteConfig.title}`}
36
- description="Description will go into a meta tag in <head />">
37
- <HomepageHeader />
38
- <main>
39
- <HomepageFeatures />
40
- </main>
41
- </Layout>
42
- );
43
- }
@@ -1,7 +0,0 @@
1
- ---
2
- title: Markdown page example
3
- ---
4
-
5
- # Markdown page example
6
-
7
- You don't need React to write simple standalone pages.
File without changes
@@ -1 +0,0 @@
1
- adminforth.dev
Binary file
Binary file
Binary file
@@ -1,24 +0,0 @@
1
- DO_N_TIME=10
2
-
3
- for i in $(seq 1 $DO_N_TIME)
4
- do
5
- # curl https://api.openai.com/v1/images/generations \
6
- # -H "Content-Type: application/json" \
7
- # -H "Authorization: Bearer $OPENAI_TOKEN" \
8
- # -d '{
9
- # "model": "dall-e-3",
10
- # "prompt": "A photorealistic image of a cute kitty lying on top of a database symbol. Kitty should have eyes open. The database should be represented as a cylindrical shape, and the kitty should look relaxed and content, possibly curled up or stretched out.",
11
- # "n": 1,
12
- # "size": "1024x1024"
13
- # }'
14
-
15
- curl https://api.openai.com/v1/images/generations \
16
- -H "Content-Type: application/json" \
17
- -H "Authorization: Bearer $OPENAI_TOKEN" \
18
- -d '{
19
- "model": "dall-e-3",
20
- "prompt": "A photorealistic image of a cute kitty playing with nice rectangle box. Box is rounded and has CSS on it. The kitty should look playful and curious",
21
- "n": 1,
22
- "size": "1024x1024"
23
- }'
24
- done
@@ -1,19 +0,0 @@
1
- <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <g clip-path="url(#clip0_1_8)">
3
- <path d="M8.034 6.006V13H6.097V12.194C5.59433 12.8007 4.86633 13.104 3.913 13.104C3.25433 13.104 2.65633 12.9567 2.119 12.662C1.59033 12.3673 1.17433 11.947 0.871 11.401C0.567667 10.855 0.416 10.2223 0.416 9.503C0.416 8.78367 0.567667 8.151 0.871 7.605C1.17433 7.059 1.59033 6.63867 2.119 6.344C2.65633 6.04933 3.25433 5.902 3.913 5.902C4.80567 5.902 5.50333 6.18367 6.006 6.747V6.006H8.034ZM4.264 11.44C4.77533 11.44 5.2 11.2667 5.538 10.92C5.876 10.5647 6.045 10.0923 6.045 9.503C6.045 8.91367 5.876 8.44567 5.538 8.099C5.2 7.74367 4.77533 7.566 4.264 7.566C3.744 7.566 3.315 7.74367 2.977 8.099C2.639 8.44567 2.47 8.91367 2.47 9.503C2.47 10.0923 2.639 10.5647 2.977 10.92C3.315 11.2667 3.744 11.44 4.264 11.44Z" fill="url(#paint0_linear_1_8)"/>
4
- <path d="M13.317 5.538C12.589 5.538 12.0387 5.69833 11.666 6.019C11.2933 6.331 11.107 6.80333 11.107 7.436V7.995H14.851V9.685H11.107V13H9.001V7.449C9.001 6.279 9.365 5.369 10.093 4.719C10.8297 4.069 11.8567 3.744 13.174 3.744C13.694 3.744 14.1837 3.80033 14.643 3.913C15.1023 4.017 15.501 4.173 15.839 4.381L15.189 6.045C14.669 5.707 14.045 5.538 13.317 5.538Z" fill="url(#paint1_linear_1_8)"/>
5
- </g>
6
- <defs>
7
- <linearGradient id="paint0_linear_1_8" x1="1.5" y1="6.93333" x2="7.31883" y2="11.8926" gradientUnits="userSpaceOnUse">
8
- <stop stop-color="#656E7A"/>
9
- <stop offset="1" stop-color="#99A6B8"/>
10
- </linearGradient>
11
- <linearGradient id="paint1_linear_1_8" x1="12.5" y1="3.73333" x2="9.68642" y2="12.7016" gradientUnits="userSpaceOnUse">
12
- <stop stop-color="#48C5FF"/>
13
- <stop offset="1" stop-color="#A1E1FF"/>
14
- </linearGradient>
15
- <clipPath id="clip0_1_8">
16
- <rect width="16" height="16" fill="white"/>
17
- </clipPath>
18
- </defs>
19
- </svg>
Binary file
Binary file
@@ -1,11 +0,0 @@
1
- // @ts-check
2
- /**
3
- * @param {import('typedoc-plugin-markdown').MarkdownApplication} app
4
- */
5
- export function load(app) {
6
- app.renderer.postRenderAsyncJobs.push(async (output) => {
7
- // do something async here
8
- await new Promise((r) => setTimeout(r, 5));
9
- app.logger.info("Post render success");
10
- });
11
- }
File without changes