create-jwn-js 1.0.2 → 1.0.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 (41) hide show
  1. package/index.js +11 -0
  2. package/package.json +1 -1
  3. package/template-vite-vue3-ts/.gitignore +5 -0
  4. package/template-vite-vue3-ts/connect-template.json +36 -0
  5. package/template-vite-vue3-ts/cron.js +90 -0
  6. package/template-vite-vue3-ts/docs/index.md +27 -0
  7. package/template-vite-vue3-ts/index.html +18 -0
  8. package/template-vite-vue3-ts/jest.config.ts +38 -0
  9. package/template-vite-vue3-ts/package.json +57 -0
  10. package/template-vite-vue3-ts/postcss.config.js +28 -0
  11. package/template-vite-vue3-ts/src/backend/server/helpers/createConfigServer.ts +16 -0
  12. package/template-vite-vue3-ts/src/backend/server/helpers/createMariadb.ts +16 -0
  13. package/template-vite-vue3-ts/src/backend/server/helpers/createMemcached.ts +15 -0
  14. package/template-vite-vue3-ts/src/backend/server/helpers/readManifest.ts +16 -0
  15. package/template-vite-vue3-ts/src/backend/server/index.ts +51 -0
  16. package/template-vite-vue3-ts/src/backend/server/site-schema.ts +21 -0
  17. package/template-vite-vue3-ts/src/backend/server/web-routes/index.ts +9 -0
  18. package/template-vite-vue3-ts/src/backend/views/Index/IndexController.ts +16 -0
  19. package/template-vite-vue3-ts/src/frontend/App.vue +30 -0
  20. package/template-vite-vue3-ts/src/frontend/entry-client.ts +2 -0
  21. package/template-vite-vue3-ts/src/frontend/entry-server.ts +4 -0
  22. package/template-vite-vue3-ts/src/frontend/helpers/customerPrefetch.ts +46 -0
  23. package/template-vite-vue3-ts/src/frontend/main.ts +68 -0
  24. package/template-vite-vue3-ts/src/frontend/routes/index.ts +42 -0
  25. package/template-vite-vue3-ts/src/frontend/shims-plugins.d.ts +18 -0
  26. package/template-vite-vue3-ts/src/frontend/shims-vue.d.ts +5 -0
  27. package/template-vite-vue3-ts/src/frontend/shims-vuex.d.ts +10 -0
  28. package/template-vite-vue3-ts/src/frontend/store/fetch.ts +174 -0
  29. package/template-vite-vue3-ts/src/frontend/store/index.ts +131 -0
  30. package/template-vite-vue3-ts/src/frontend/store/types.d.ts +83 -0
  31. package/template-vite-vue3-ts/src/frontend/views/Error/Error.vue +62 -0
  32. package/template-vite-vue3-ts/src/frontend/views/Index/Index.vue +27 -0
  33. package/template-vite-vue3-ts/src/frontend/views/Index/__tests__/Index.spec.ts +31 -0
  34. package/template-vite-vue3-ts/src/frontend/vite-env.d.ts +1 -0
  35. package/template-vite-vue3-ts/src/helpers/langLink.ts +17 -0
  36. package/template-vite-vue3-ts/src/helpers/parseLang.ts +10 -0
  37. package/template-vite-vue3-ts/src/scripts/jest.global.setup.ts +23 -0
  38. package/template-vite-vue3-ts/src/scripts/jest.global.teardown.ts +10 -0
  39. package/template-vite-vue3-ts/src/scripts/jest.setup.ts +16 -0
  40. package/template-vite-vue3-ts/tsconfig.json +47 -0
  41. package/template-vite-vue3-ts/vite.config.ts +87 -0
@@ -0,0 +1,47 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "esnext",
4
+ "module": "esnext",
5
+ "moduleResolution": "node",
6
+ "strict": true,
7
+ "noImplicitThis": true,
8
+ "jsx": "preserve",
9
+ "sourceMap": true,
10
+ "resolveJsonModule": true,
11
+ "esModuleInterop": true,
12
+ "allowSyntheticDefaultImports": true,
13
+ "allowJs": true,
14
+ "noImplicitAny": true,
15
+ "strictFunctionTypes": false,
16
+ "skipLibCheck": true,
17
+ "strictPropertyInitialization": false,
18
+ "experimentalDecorators": true,
19
+ "emitDecoratorMetadata": true,
20
+ "lib": [
21
+ "esnext",
22
+ "dom"
23
+ ],
24
+ "types": [
25
+ "vite/client",
26
+ "@types/jest",
27
+ "node",
28
+ "jest-environment-puppeteer"
29
+ ],
30
+ "baseUrl": ".",
31
+ "paths": {
32
+ "@/*": [
33
+ "./src/*"
34
+ ]
35
+ }
36
+ },
37
+ "include": [
38
+ "src/**/*.ts",
39
+ "src/**/*.d.ts",
40
+ "src/**/*.tsx",
41
+ "src/**/*.vue"
42
+ ],
43
+ "exclude": [
44
+ "node_modules",
45
+ "dist"
46
+ ]
47
+ }
@@ -0,0 +1,87 @@
1
+ import path from "path";
2
+ import {defineConfig, ResolvedConfig} from "vite";
3
+ import vue from "@vitejs/plugin-vue";
4
+ import fetch from "cross-fetch";
5
+ import ssr from "vite-ssr-vue/plugin";
6
+ import svgLoader from "vite-svg-loader";
7
+ import config from "./connect.json";
8
+ import {createConfigServer} from "./src/backend/server/helpers/createConfigServer";
9
+ import {createMemcached} from "./src/backend/server/helpers/createMemcached";
10
+ import {createMariadb} from "./src/backend/server/helpers/createMariadb";
11
+
12
+ declare var process: any;
13
+
14
+ const cnf = createConfigServer(config);
15
+ const {memcachedClient, memcached} = createMemcached();
16
+ const {home, homePool} = createMariadb(config);
17
+ process.server = {
18
+ db: {home},
19
+ memcached
20
+ };
21
+
22
+ export default defineConfig({
23
+ resolve: {
24
+ alias: [
25
+ {
26
+ find: /^~(.+)/,
27
+ replacement: path.resolve("./node_modules") + "/$1"
28
+ },
29
+ {
30
+ find: /@\/(.*)/,
31
+ replacement: path.resolve("./src") + "/$1"
32
+ }
33
+ ],
34
+ },
35
+ server: {
36
+ host: cnf.host,
37
+ port: config.server.development.vite.port,
38
+ proxy: {
39
+ "/web": `http://${cnf.host}:${cnf.port}`
40
+ },
41
+ },
42
+
43
+ //@ts-ignore
44
+ ssr: {
45
+ external: [
46
+ "@jwn-js/plugins",
47
+ "css-select"
48
+ ],
49
+ noExternal: [
50
+ "vuex-router-sync"
51
+ ]
52
+ },
53
+ plugins: [
54
+ ssr({
55
+ ssr: "./src/frontend/entry-server.ts"
56
+ }),
57
+ vue({
58
+ template: {
59
+ ssr: true,
60
+ compilerOptions: {
61
+ directiveTransforms: {
62
+ }
63
+ }
64
+ }
65
+ }),
66
+ svgLoader(),
67
+ {
68
+ name: "close",
69
+ async configResolved(config:ResolvedConfig) {
70
+ if(config.command !== "build") {
71
+ const interval = setInterval(async() => {
72
+ try {
73
+ await fetch(`http://${cnf.host}:${cnf.vitePort}`);
74
+ clearInterval(interval);
75
+ } catch(e) {}
76
+
77
+ }, 50);
78
+ }
79
+ },
80
+ async closeBundle() {
81
+ memcachedClient && memcachedClient.close();
82
+ homePool && await homePool.end();
83
+ process.server.app && await process.server.app.close();
84
+ }
85
+ },
86
+ ]
87
+ });