@live-change/frontend-base 0.2.51 → 0.2.53

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/ViewRoot.vue CHANGED
@@ -41,10 +41,10 @@
41
41
 
42
42
  import ProgressSpinner from 'primevue/progressspinner'
43
43
 
44
- import { useMeta } from 'vue-meta'
44
+ import { useHead } from '@vueuse/head'
45
45
  import Page from "./Page.vue"
46
46
 
47
- const { meta } = useMeta({
47
+ const { meta } = useHead({
48
48
  meta: [
49
49
  { charset: 'utf-8' },
50
50
  { name: 'viewport',
package/main.js CHANGED
@@ -1,5 +1,4 @@
1
1
  import { createSSRApp, createApp as createSPAApp } from 'vue'
2
- import { createMetaManager } from 'vue-meta'
3
2
 
4
3
  import { registerComponents } from '@live-change/vue3-components'
5
4
  import ReactiveDaoVue from '@live-change/dao-vue3'
@@ -26,6 +25,8 @@ export async function createApp(config, api, App, createRouter, host, headers, r
26
25
  const isSPA = (typeof window !== 'undefined') && !window.__DAO_CACHE__
27
26
  console.log("IS SPA", isSPA)
28
27
  const app = isSPA ? createSPAApp(App) : createSSRApp(App)
28
+
29
+
29
30
  app.config.devtools = true
30
31
 
31
32
  app.config.globalProperties.$response = response
@@ -74,11 +75,6 @@ export async function createApp(config, api, App, createRouter, host, headers, r
74
75
  // options...
75
76
  })
76
77
 
77
- const meta = createMetaManager({ // TODO: remove this after switching to unhead
78
- isSSR
79
- })
80
- app.use(meta)
81
-
82
78
  const head = createHead()
83
79
  app.use(head)
84
80
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@live-change/frontend-base",
3
- "version": "0.2.51",
3
+ "version": "0.2.53",
4
4
  "scripts": {
5
5
  "memDev": "lcli memDev --enableSessions --initScript ./init.js --templatePath ../../base-frontend/index.html",
6
6
  "localDevInit": "rm tmp.db; lcli localDev --enableSessions --initScript ./init.js",
@@ -20,60 +20,59 @@
20
20
  "debug": "node --inspect-brk server"
21
21
  },
22
22
  "dependencies": {
23
- "@live-change/cli": "0.7.28",
23
+ "@live-change/cli": "0.7.30",
24
24
  "@live-change/dao": "0.5.20",
25
25
  "@live-change/dao-message": "0.5.20",
26
26
  "@live-change/dao-sockjs": "0.5.20",
27
27
  "@live-change/dao-vue3": "0.5.20",
28
28
  "@live-change/dao-websocket": "0.5.20",
29
- "@live-change/email-service": "0.3.28",
30
- "@live-change/password-authentication-service": "0.3.28",
31
- "@live-change/secret-code-service": "0.3.28",
32
- "@live-change/secret-link-service": "0.3.28",
33
- "@live-change/security-frontend": "^0.2.51",
34
- "@live-change/session-service": "0.3.28",
35
- "@live-change/user-service": "0.3.28",
29
+ "@live-change/email-service": "0.3.29",
30
+ "@live-change/password-authentication-service": "0.3.29",
31
+ "@live-change/secret-code-service": "0.3.29",
32
+ "@live-change/secret-link-service": "0.3.29",
33
+ "@live-change/security-frontend": "^0.2.53",
34
+ "@live-change/session-service": "0.3.29",
35
+ "@live-change/user-service": "0.3.29",
36
36
  "@live-change/vue3-components": "0.2.28",
37
37
  "@live-change/vue3-ssr": "0.2.28",
38
- "@unhead/ssr": "^1.1.29",
39
- "@vitejs/plugin-vue": "^2.3.1",
40
- "@vitejs/plugin-vue-jsx": "^1.3.10",
41
- "@vue/compiler-sfc": "^3.2.37",
42
- "@vueuse/core": "^9.1.0",
43
- "@vueuse/head": "^1.1.26",
38
+ "@unhead/ssr": "^1.6.2",
39
+ "@vitejs/plugin-vue": "^4.3.4",
40
+ "@vue/compiler-sfc": "^3.3.4",
41
+ "@vueuse/core": "^10.4.1",
42
+ "@vueuse/head": "^1.3.1",
44
43
  "codeceptjs-assert": "^0.0.5",
45
44
  "compression": "^1.7.4",
46
45
  "cross-env": "^7.0.3",
47
46
  "get-port-sync": "1.0.1",
48
- "primeflex": "^3.3.0",
47
+ "primeflex": "^3.3.1",
49
48
  "primeicons": "^6.0.1",
50
- "primevue": "^3.28.0",
49
+ "primevue": "^3.34.1",
51
50
  "rollup-plugin-node-builtins": "^2.1.2",
52
- "rollup-plugin-visualizer": "5.6.0",
53
- "serialize-javascript": "^6.0.0",
51
+ "rollup-plugin-visualizer": "5.9.2",
52
+ "serialize-javascript": "^6.0.1",
54
53
  "serve-static": "^1.15.0",
55
- "unhead": "^1.1.29",
56
- "v-shared-element": "3.1.0",
54
+ "unhead": "^1.6.2",
55
+ "v-shared-element": "3.1.1",
57
56
  "vite-plugin-compression": "0.5.1",
58
57
  "vite-plugin-vue-images": "^0.6.1",
59
- "vue-i18n": "^9.2.2",
58
+ "vue-i18n": "^9.3.0",
60
59
  "vue-meta": "^3.0.0-alpha.9",
61
- "vue-router": "^4.1.3",
62
- "vue3-lazyload": "0.2.5-beta",
60
+ "vue-router": "^4.2.4",
61
+ "vue3-lazyload": "0.3.8",
63
62
  "vue3-scroll-border": "0.1.5"
64
63
  },
65
64
  "devDependencies": {
66
- "@live-change/codeceptjs-helper": "0.7.28",
67
- "@wdio/selenium-standalone-service": "^7.20.8",
68
- "codeceptjs": "^3.3.4",
65
+ "@live-change/codeceptjs-helper": "0.7.30",
66
+ "@wdio/selenium-standalone-service": "^8.15.0",
67
+ "codeceptjs": "^3.5.4",
69
68
  "generate-password": "1.7.0",
70
- "playwright": "^1.24.2",
69
+ "playwright": "^1.37.1",
71
70
  "random-profile-generator": "^2.3.0",
72
- "txtgen": "^3.0.2",
73
- "webdriverio": "^7.20.9"
71
+ "txtgen": "^3.0.6",
72
+ "webdriverio": "^8.16.6"
74
73
  },
75
74
  "author": "",
76
75
  "license": "BSD-3-Clause",
77
76
  "description": "",
78
- "gitHead": "0fd9d72bb8a5fd8402244756d5ff023028dfcb6d"
77
+ "gitHead": "55ef49d734bc2bd983010f862648e16aaf680d9f"
79
78
  }
package/server-entry.js CHANGED
@@ -1,5 +1,4 @@
1
1
  import { renderToString } from 'vue/server-renderer'
2
- import { renderMetaToString } from 'vue-meta/ssr'
3
2
 
4
3
  import { serverApi } from '@live-change/vue3-ssr/serverApi.js'
5
4
 
@@ -23,10 +22,6 @@ export function serverEntry(App, createRouter, config = {}) {
23
22
 
24
23
  const host = headers['host']
25
24
  console.error('URL', host, url)
26
- const api = await serverApi(dao, {
27
- use: [],
28
- windowId
29
- })
30
25
 
31
26
  const response = {
32
27
  status: 200,
@@ -35,10 +30,16 @@ export function serverEntry(App, createRouter, config = {}) {
35
30
  }
36
31
  }
37
32
 
33
+ const api = await serverApi(dao, {
34
+ use: [],
35
+ windowId
36
+ })
37
+
38
38
  const { app, router, head } = await createApp(
39
39
  config, api, App, createRouter, host, headers, response, url
40
40
  )
41
41
 
42
+
42
43
  app.directive('shared-element', {})
43
44
 
44
45
  // set the router to the desired URL before rendering
@@ -47,7 +48,6 @@ export function serverEntry(App, createRouter, config = {}) {
47
48
 
48
49
  // prefetch data
49
50
  await api.preFetchRoute(router.currentRoute, router)
50
-
51
51
  // passing SSR context object which will be available via useSSRContext()
52
52
  // @vitejs/plugin-vue injects code into a component's setup() that registers
53
53
  // itself on ctx.modules. After the render, ctx.modules would contain all the
@@ -62,21 +62,11 @@ export function serverEntry(App, createRouter, config = {}) {
62
62
  // request.
63
63
 
64
64
  const renderedHead = await renderHeadToString(head)
65
- console.log("HEAD", renderedHead)
66
-
67
- const hed= {
68
- headTags: '<title>IPI Swap</title>\n' +
69
- '<link rel="icon" href="/icon/icon256.png" type="image/png" sizes="256x256">\n' +
70
- '<link rel="icon" href="/icon/icon128.png" type="image/png" sizes="128x128">\n' +
71
- '<link rel="icon" href="/icon/icon64.png" type="image/png" sizes="64x64">\n' +
72
- '<link rel="icon" href="/icon/icon32.png" type="image/png" sizes="32x32">\n' +
73
- '<link rel="icon" href="/icon/icon16.png" type="image/png" sizes="16x16">',
74
- bodyTags: '',
75
- bodyTagsOpen: '',
76
- htmlAttrs: ' lang="en" amp=""',
77
- bodyAttrs: ''
78
- }
79
65
 
66
+ /* const html = 'html'
67
+ const renderedHead= 'head'
68
+ const data = {}
69
+ const ctx = { modules: [] }*/
80
70
 
81
71
  return {html, data, meta: renderedHead, modules: ctx.modules, response}
82
72
  }
package/vite-config.js CHANGED
@@ -13,136 +13,150 @@ const ssrTransformCustomDir = () => {
13
13
  }
14
14
  }
15
15
 
16
- module.exports = async ({ command, mode }) => ({
17
- define: {
18
- ENV_BASE_HREF: JSON.stringify(process.env.BASE_HREF || 'http://localhost:8001')
19
- },
20
- server: {
21
- hmr: {
22
- port: +(process.env.HMR_PORT ?? (await findFreePorts())[0])
16
+ module.exports = async ({ command, mode }) => {
17
+ console.log("VITE CONFIG", command, mode)
18
+ return {
19
+ define: {
20
+ ENV_BASE_HREF: JSON.stringify(process.env.BASE_HREF || 'http://localhost:8001')
23
21
  },
24
- fs: {
25
- allow: [
26
- searchForWorkspaceRoot(process.cwd()),
27
- path.dirname(require.resolve('primeicons/package.json')),
28
- path.dirname(require.resolve('@fortawesome/fontawesome-free/package.json'))
29
- ]
30
- }
31
- },
32
- plugins: [
33
- vuePlugin({
34
- template: {
35
- compilerOptions: {
36
- // whitespace: "preserve",
37
- directiveTransforms: {
38
- 'ripple': ssrTransformCustomDir,
39
- 'styleclass': ssrTransformCustomDir,
40
- 'badge': ssrTransformCustomDir,
41
- 'shared-element': ssrTransformCustomDir,
42
- 'lazy': ssrTransformCustomDir
22
+ server: {
23
+ hmr: {
24
+ port: +(process.env.HMR_PORT ?? (await findFreePorts())[0])
25
+ },
26
+ fs: {
27
+ allow: [
28
+ searchForWorkspaceRoot(process.cwd()),
29
+ path.dirname(require.resolve('primeicons/package.json')),
30
+ path.dirname(require.resolve('@fortawesome/fontawesome-free/package.json'))
31
+ ]
32
+ }
33
+ },
34
+ plugins: [
35
+ vuePlugin({
36
+ template: {
37
+ compilerOptions: {
38
+ // whitespace: "preserve",
39
+ directiveTransforms: {
40
+ 'ripple': ssrTransformCustomDir,
41
+ 'styleclass': ssrTransformCustomDir,
42
+ 'badge': ssrTransformCustomDir,
43
+ 'shared-element': ssrTransformCustomDir,
44
+ 'lazy': ssrTransformCustomDir
45
+ }
43
46
  }
44
- }
47
+ },
48
+ }),
49
+ viteImages({ extensions: ['jpg', 'jpeg', 'png', 'svg', 'webp'] }),
50
+ viteCompression({ algorithm: 'brotliCompress', ext: '.br' }),
51
+ viteCompression({ algorithm: 'gzip', ext: '.gz' }),
52
+ viteCompression({ algorithm: 'deflate', ext: '.zz' }),
53
+ visualizer({
54
+ filename: '../stats.html'
55
+ }),
56
+ ],
57
+ build: {
58
+ minify: false,
59
+ commonjsOptions: {
60
+ transformMixedEsModules: true,
61
+ include: [
62
+ /node_modules/,
63
+ /live-change-framework\/framework\//,
64
+ /live-change-framework\/relations-plugin\//,
65
+ /live-change-framework\/uid\//,
66
+ /live-change-db\/db-web\//,
67
+ /live-change-db\/db\//,
68
+ /live-change-db\/db-store-rbtree\//,
69
+ /live-change-db\/db-store-indexeddb\//,
70
+ /live-change-db\/db-store-localstorage\//,
71
+ /live-change-dao\/dao\//,
72
+ /live-change-dao\/dao-sockjs\//,
73
+ /live-change-dao\/dao-websocket\//,
74
+ /live-change-dao\/dao-message\//,
75
+ ]
45
76
  },
46
- }),
47
- viteImages({ extensions: ['jpg', 'jpeg', 'png', 'svg', 'webp'] }),
48
- viteCompression({ algorithm: 'brotliCompress', ext: '.br' }),
49
- viteCompression({ algorithm: 'gzip', ext: '.gz' }),
50
- viteCompression({ algorithm: 'deflate', ext: '.zz' }),
51
- visualizer({
52
- filename: '../stats.html'
53
- }),
54
- ],
55
- build: {
56
- minify: false,
57
- commonjsOptions: {
58
- transformMixedEsModules: true,
77
+ },
78
+ ssr: {
79
+ external: [
80
+ ...(command == 'build' ? [
81
+ ]: [
82
+ '@live-change/dao',
83
+ ]),
84
+ '@live-change/uid',
85
+ '@live-change/framework',
86
+ '@live-change/framework/lib/utils/validators.js',
87
+ '@live-change/relations-plugin',
88
+ '@live-change/db-web',
89
+ '@live-change/db',
90
+ '@live-change/db-store-indexeddb',
91
+ '@live-change/db-store-rbtree',
92
+ 'debug',
93
+ 'vite',
94
+ 'pica'
95
+ ],
96
+ noExternal: [
97
+ ...(command == 'build' ? [
98
+ '@live-change/dao',
99
+ ]: [
100
+
101
+ ]),
102
+ '@live-change/vue3-components',
103
+ '@live-change/dao-vue3',
104
+ '@live-change/vue3-ssr',
105
+ '@live-change/email-service',
106
+ '@live-change/password-authentication-service',
107
+ '@live-change/db-admin',
108
+ '@live-change/user-frontend',
109
+ '@live-change/frontend-base',
110
+ '@live-change/frontend-utils',
111
+ '@live-change/access-control-frontend',
112
+ '@live-change/content-frontend',
113
+ '@live-change/blog-frontend',
114
+ '@live-change/image-frontend',
115
+ '@live-change/security-frontend',
116
+ '@live-change/upload-frontend',
117
+ '@live-change/url-frontend',
118
+ '@live-change/user-frontend',
119
+ '@live-change/wysiwyg-frontend',
120
+ 'vue3-scroll-border',
121
+ 'pretty-bytes',
122
+ 'primevue',
123
+ 'primevue/usetoast',
124
+ 'primevue/useconfirm',
125
+ 'primevue/usedialog'
126
+ ]
127
+ },
128
+ optimizeDeps: {
59
129
  include: [
60
- /node_modules/,
61
- /live-change-framework\/framework\//,
62
- /live-change-framework\/relations-plugin\//,
63
- /live-change-framework\/uid\//,
64
- /live-change-db\/db-web\//,
65
- /live-change-db\/db\//,
66
- /live-change-db\/db-store-rbtree\//,
67
- /live-change-db\/db-store-indexeddb\//,
68
- /live-change-db\/db-store-localstorage\//,
69
- /live-change-dao\/dao\//,
70
- /live-change-dao\/dao-sockjs\//,
71
- /live-change-dao\/dao-websocket\//,
72
- /live-change-dao\/dao-message\//,
130
+ '@live-change/dao',
131
+ '@live-change/dao-sockjs',
132
+ '@live-change/dao-websocket',
133
+ '@live-change/dao-message',
134
+ '@live-change/uid',
135
+ '@live-change/framework',
136
+ '@live-change/framework/lib/utils/validators.js',
137
+ '@live-change/relations-plugin',
138
+ '@live-change/db-web',
139
+ '@live-change/db',
140
+ '@live-change/db-store-indexeddb',
141
+ '@live-change/db-store-rbtree',
142
+ 'debug',
143
+ 'pica'
144
+ ],
145
+ exclude: [
146
+ 'primevue',
147
+ 'primevue/usetoast',
148
+ 'primevue/useconfirm',
149
+ 'primevue/usedialog',
73
150
  ]
74
151
  },
75
- },
76
- ssr: {
77
- external: [
78
- '@live-change/dao',
79
- '@live-change/uid',
80
- '@live-change/framework',
81
- '@live-change/framework/lib/utils/validators.js',
82
- '@live-change/relations-plugin',
83
- '@live-change/db-web',
84
- '@live-change/db',
85
- '@live-change/db-store-indexeddb',
86
- '@live-change/db-store-rbtree',
87
- 'debug',
88
- 'vite',
89
- 'pica'
90
- ],
91
- noExternal: [
92
- 'vue-meta',
93
- '@live-change/vue3-components',
94
- '@live-change/dao-vue3',
95
- '@live-change/vue3-ssr',
96
- '@live-change/email-service',
97
- '@live-change/password-authentication-service',
98
- '@live-change/db-admin',
99
- '@live-change/user-frontend',
100
- '@live-change/frontend-base',
101
- '@live-change/frontend-utils',
102
- '@live-change/access-control-frontend',
103
- '@live-change/content-frontend',
104
- '@live-change/blog-frontend',
105
- '@live-change/image-frontend',
106
- '@live-change/security-frontend',
107
- '@live-change/upload-frontend',
108
- '@live-change/url-frontend',
109
- '@live-change/user-frontend',
110
- '@live-change/wysiwyg-frontend',
111
- 'vue3-scroll-border',
112
- 'pretty-bytes'
113
- ]
114
- },
115
- optimizeDeps: {
116
- include: [
117
- '@live-change/dao',
118
- '@live-change/dao-sockjs',
119
- '@live-change/dao-websocket',
120
- '@live-change/dao-message',
121
- '@live-change/uid',
122
- '@live-change/framework',
123
- '@live-change/framework/lib/utils/validators.js',
124
- '@live-change/relations-plugin',
125
- '@live-change/db-web',
126
- '@live-change/db',
127
- '@live-change/db-store-indexeddb',
128
- '@live-change/db-store-rbtree',
129
- 'debug',
130
- 'pica'
131
- ],
132
- exclude: [
133
- 'primevue',
134
- 'primevue/usetoast',
135
- 'primevue/useconfirm',
136
- 'primevue/usedialog',
137
- ]
138
- },
139
152
 
140
- resolve: {
141
- alias: [
142
- { find: 'debug', replacement: 'debug/src/browser.js' },
143
- { find: 'universal-websocket-client', replacement: 'universal-websocket-client/browser.js' },
144
- { find: 'sockjs-client', replacement: 'sockjs-client/dist/sockjs.min.js' }
145
- ],
153
+ resolve: {
154
+ alias: [
155
+ { find: 'debug', replacement: 'debug/src/browser.js' },
156
+ { find: 'universal-websocket-client', replacement: 'universal-websocket-client/browser.js' },
157
+ { find: 'sockjs-client', replacement: 'sockjs-client/dist/sockjs.min.js' }
158
+ ],
159
+ }
146
160
  }
147
- })
161
+ }
148
162