@things-factory/shell 4.0.39 → 4.0.43

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.
@@ -13,11 +13,11 @@ export const AppStyle = css`
13
13
  height: 100vh;
14
14
  }
15
15
 
16
- header-bar {
16
+ ox-header-bar {
17
17
  grid-area: header;
18
18
  }
19
19
 
20
- nav-bar {
20
+ ox-nav-bar {
21
21
  grid-area: nav;
22
22
  }
23
23
 
@@ -30,11 +30,11 @@ export const AppStyle = css`
30
30
  flex-direction: row;
31
31
  }
32
32
 
33
- aside-bar {
33
+ ox-aside-bar {
34
34
  grid-area: aside;
35
35
  }
36
36
 
37
- footer-bar {
37
+ ox-footer-bar {
38
38
  grid-area: footer;
39
39
  }
40
40
 
@@ -50,7 +50,7 @@ export const AppStyle = css`
50
50
  display: none;
51
51
  }
52
52
 
53
- snack-bar {
53
+ ox-snack-bar {
54
54
  z-index: 1000;
55
55
  }
56
56
 
package/client/app/app.js CHANGED
@@ -1,12 +1,14 @@
1
- import { html, LitElement } from 'lit-element'
1
+ import '@operato/layout'
2
+
3
+ import { html, LitElement } from 'lit'
2
4
  import { connect } from 'pwa-helpers/connect-mixin.js'
3
5
  import { installRouter } from 'pwa-helpers/router.js'
4
- import { UPDATE_MODULES, UPDATE_CONTEXT_PATH } from '../actions/app'
5
- import { navigateWithSilence, UPDATE_ACTIVE_PAGE } from '../actions/route'
6
- import { store } from '../store'
6
+
7
+ import { navigateWithSilence, store, UPDATE_ACTIVE_PAGE, UPDATE_CONTEXT_PATH, UPDATE_MODULES } from '@operato/shell'
8
+ import { ScrollbarStyles } from '@operato/styles'
9
+ import { getPathInfo } from '@operato/utils'
10
+
7
11
  import { AppStyle } from './app-style'
8
- import { ScrollbarStyles } from '@things-factory/styles'
9
- import { getPathInfo } from '@things-factory/utils'
10
12
 
11
13
  class ThingsApp extends connect(store)(LitElement) {
12
14
  static get properties() {
@@ -33,17 +35,17 @@ class ThingsApp extends connect(store)(LitElement) {
33
35
  var widebleed = (this._context && this._context.widebleed) || (params.widebleed && params.widebleed == 'Y')
34
36
 
35
37
  return html`
36
- <header-bar ?fullbleed=${fullbleed}></header-bar>
38
+ <ox-header-bar ?fullbleed=${fullbleed}></ox-header-bar>
37
39
 
38
- <nav-bar ?fullbleed=${fullbleed || widebleed}></nav-bar>
40
+ <ox-nav-bar ?fullbleed=${fullbleed || widebleed}></ox-nav-bar>
39
41
 
40
42
  <main></main>
41
43
 
42
- <aside-bar ?fullbleed=${fullbleed || widebleed}></aside-bar>
44
+ <ox-aside-bar ?fullbleed=${fullbleed || widebleed}></ox-aside-bar>
43
45
 
44
- <footer-bar ?fullbleed=${fullbleed}></footer-bar>
46
+ <ox-footer-bar ?fullbleed=${fullbleed}></ox-footer-bar>
45
47
 
46
- <snack-bar></snack-bar>
48
+ <ox-snack-bar></ox-snack-bar>
47
49
  `
48
50
  }
49
51
 
@@ -1,44 +1,43 @@
1
- import { html, css } from 'lit-element'
1
+ import { css, html } from 'lit-element'
2
2
 
3
- import { PageView } from './page-view'
4
-
5
- import { SharedStyles } from '@things-factory/styles'
3
+ import { PageView } from '@operato/shell'
6
4
 
7
5
  class Page404 extends PageView {
8
6
  static get styles() {
9
- return [SharedStyles,
10
- css`
11
- :host{
12
- background-color: var(--main-section-background-color);
13
- --padding-wide:15%;
14
- }
15
- section{
16
- padding:var(--padding-wide) 0 0 0;
17
- text-align:center;
18
- color:var(--secondary-color);
19
- }
20
- mwc-icon{
21
- --mdc-icon-size: 120px;
22
- color:var(--status-danger-color);
23
- text-shadow:2px 2px 2px rgba(0,0,0,0.1);
24
- }
25
- h2{
26
- margin:0 auto;
27
- font-size:2.5em;
28
- text-transform:capitalize;
7
+ return css`
8
+ :host {
9
+ display: block;
10
+ box-sizing: border-box;
11
+
12
+ background-color: var(--main-section-background-color);
13
+ --padding-wide: 15%;
14
+ }
15
+ section {
16
+ padding: var(--padding-wide) 0 0 0;
17
+ text-align: center;
18
+ color: var(--secondary-color);
19
+ }
20
+ mwc-icon {
21
+ --mdc-icon-size: 120px;
22
+ color: var(--status-danger-color);
23
+ text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.1);
24
+ }
25
+ h2 {
26
+ margin: 0 auto;
27
+ font-size: 2.5em;
28
+ text-transform: capitalize;
29
+ }
30
+ @media only screen and (max-width: 460px) {
31
+ mwc-icon {
32
+ padding-top: 25%;
33
+ --mdc-icon-size: 90px;
29
34
  }
30
- @media only screen and (max-width: 460px) {
31
- mwc-icon{
32
- padding-top:25%;
33
- --mdc-icon-size: 90px;
34
- }
35
- h2{
36
- font-size:2em;
37
- }
35
+ h2 {
36
+ font-size: 2em;
38
37
  }
39
- `
40
- ]
41
- }
38
+ }
39
+ `
40
+ }
42
41
 
43
42
  get context() {
44
43
  return {
@@ -51,7 +50,7 @@ class Page404 extends PageView {
51
50
  <section>
52
51
  <mwc-icon>error_outline</mwc-icon>
53
52
  <h2>page not found!</h2>
54
- The page you requested cannot be found.
53
+ The page you requested cannot be found.
55
54
  </section>
56
55
  `
57
56
  }
package/client/index.js CHANGED
@@ -9,14 +9,8 @@ export const PROCESS = {
9
9
 
10
10
  /* Export APIs */
11
11
 
12
- // store
13
- export * from './store'
14
-
15
- // actions
16
- export * from './actions'
17
-
18
- // base class for page
19
- export * from './app/pages/page-view'
12
+ // store, actions, page-view,
13
+ export * from '@operato/shell'
20
14
 
21
15
  // graphql-client
22
16
  export * from '@operato/graphql'
@@ -22,6 +22,25 @@ module.exports = {
22
22
  level: 'silly'
23
23
  }
24
24
  },
25
+ /**
26
+ * requestBody configuration
27
+ * ie.
28
+ * requestBody: {
29
+ * formLimit: '100mb',
30
+ * jsonLimit: '100mb',
31
+ * textLimit: '100mb'
32
+ * }
33
+ **/
34
+
35
+ /**
36
+ * fileUpload configuration
37
+ * ie.
38
+ * fileUpload: {
39
+ * maxFileSize: '100mb',
40
+ * maxFiles: 10
41
+ * }
42
+ **/
43
+
25
44
  /*
26
45
  * pubsub configuration
27
46
  * ie.
@@ -19,6 +19,26 @@ module.exports = {
19
19
  level: 'info'
20
20
  }
21
21
  },
22
+
23
+ /**
24
+ * requestBody configuration
25
+ * ie.
26
+ * requestBody: {
27
+ * formLimit: '100mb',
28
+ * jsonLimit: '100mb',
29
+ * textLimit: '100mb'
30
+ * }
31
+ **/
32
+
33
+ /**
34
+ * fileUpload configuration
35
+ * ie.
36
+ * fileUpload: {
37
+ * maxFileSize: '100mb',
38
+ * maxFiles: 10
39
+ * }
40
+ **/
41
+
22
42
  /*
23
43
  * pubsub configuration
24
44
  * ie.
@@ -27,6 +27,7 @@ const koa_bodyparser_1 = __importDefault(require("koa-bodyparser"));
27
27
  const koa_static_1 = __importDefault(require("koa-static"));
28
28
  const koa_webpack_1 = __importDefault(require("@hatiolab/koa-webpack"));
29
29
  const schema_1 = require("./schema");
30
+ const bytes_1 = __importDefault(require("bytes"));
30
31
  const debug = require('debug')('things-factory:shell:server-dev');
31
32
  const args = require('args');
32
33
  args.option('port', 'The port on which the app will be running', env_1.config.get('port', 3000));
@@ -38,10 +39,16 @@ const webpack = require('webpack');
38
39
  const webpackConfig = require('@things-factory/builder/webpack.config.dev.js');
39
40
  const compiler = webpack(webpackConfig);
40
41
  const PORT = (process.env.PORT = flags.port);
42
+ const requestBody = env_1.config.get('requestBody') || {};
41
43
  const bodyParserOption = {
42
- formLimit: '10mb',
43
- jsonLimit: '10mb',
44
- textLimit: '10mb'
44
+ formLimit: requestBody.formLimit || '10mb',
45
+ jsonLimit: requestBody.jsonLimit || '10mb',
46
+ textLimit: requestBody.textLimit || '10mb'
47
+ };
48
+ const fileUpload = env_1.config.get('fileUpload') || {};
49
+ const fileUploadOption = {
50
+ maxFileSize: bytes_1.default.parse(fileUpload.maxFileSize) || bytes_1.default.parse('10mb'),
51
+ maxFiles: fileUpload.maxFiles || 10
45
52
  };
46
53
  /* bootstrap */
47
54
  const bootstrap = async () => {
@@ -158,7 +165,7 @@ const bootstrap = async () => {
158
165
  process.emit('client-rebuilt', app, compiler.outputFileSystem);
159
166
  });
160
167
  app.use((0, koa_bodyparser_1.default)(bodyParserOption));
161
- app.use((0, graphql_upload_1.graphqlUploadKoa)({ maxFileSize: 10000000, maxFiles: 10 }));
168
+ app.use((0, graphql_upload_1.graphqlUploadKoa)(fileUploadOption));
162
169
  app.use(server.getMiddleware({
163
170
  path: '/graphql'
164
171
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"server-dev.js","sourceRoot":"","sources":["../server/server-dev.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-dev.js","sourceRoot":"","sources":["../server/server-dev.ts"],"names":[],"mappings":"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"}
@@ -23,15 +23,22 @@ const koa_ip_1 = __importDefault(require("koa-ip"));
23
23
  const koa_bodyparser_1 = __importDefault(require("koa-bodyparser"));
24
24
  const koa_static_1 = __importDefault(require("koa-static"));
25
25
  const schema_1 = require("./schema");
26
+ const bytes_1 = __importDefault(require("bytes"));
26
27
  const args = require('args');
27
28
  args.option('port', 'The port on which the app will be running', env_1.config.get('port', 3000));
28
29
  const flags = args.parse(process.argv);
29
30
  const path = require('path');
30
31
  const PORT = (process.env.PORT = flags.port);
32
+ const requestBody = env_1.config.get('requestBody') || {};
31
33
  const bodyParserOption = {
32
- formLimit: '10mb',
33
- jsonLimit: '10mb',
34
- textLimit: '10mb'
34
+ formLimit: requestBody.formLimit || '10mb',
35
+ jsonLimit: requestBody.jsonLimit || '10mb',
36
+ textLimit: requestBody.textLimit || '10mb'
37
+ };
38
+ const fileUpload = env_1.config.get('fileUpload') || {};
39
+ const fileUploadOption = {
40
+ maxFileSize: bytes_1.default.parse(fileUpload.maxFileSize) || bytes_1.default.parse('10mb'),
41
+ maxFiles: fileUpload.maxFiles || 10
35
42
  };
36
43
  /* bootstrap */
37
44
  const bootstrap = async () => {
@@ -132,7 +139,7 @@ const bootstrap = async () => {
132
139
  debug: false
133
140
  });
134
141
  app.use((0, koa_bodyparser_1.default)(bodyParserOption));
135
- app.use((0, graphql_upload_1.graphqlUploadKoa)({ maxFileSize: 10000000, maxFiles: 10 }));
142
+ app.use((0, graphql_upload_1.graphqlUploadKoa)(fileUploadOption));
136
143
  app.use(server.getMiddleware({
137
144
  path: '/graphql'
138
145
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../server/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../server/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/shell",
3
- "version": "4.0.39",
3
+ "version": "4.0.43",
4
4
  "description": "Core module for framework",
5
5
  "bin": {
6
6
  "things-factory": "bin/things-factory",
@@ -36,7 +36,7 @@
36
36
  "@graphql-tools/schema": "^8.2.0",
37
37
  "@graphql-tools/utils": "^8.3.0",
38
38
  "@hatiolab/koa-webpack": "^6.0.0",
39
- "@hatiolab/things-scene": "^2.7.31",
39
+ "@hatiolab/things-scene": "^2.7.34",
40
40
  "@koa/cors": "^3.1.0",
41
41
  "@material/mwc-button": "^0.25.3",
42
42
  "@material/mwc-fab": "^0.25.3",
@@ -44,13 +44,16 @@
44
44
  "@material/mwc-icon-button": "^0.25.3",
45
45
  "@material/mwc-slider": "^0.25.3",
46
46
  "@material/mwc-textfield": "^0.25.3",
47
- "@operato/board": "^0.3.19",
48
- "@operato/graphql": "^0.3.19",
49
- "@operato/utils": "^0.3.19",
50
- "@things-factory/ejs-remote": "^4.0.39",
51
- "@things-factory/env": "^4.0.39",
52
- "@things-factory/styles": "^4.0.39",
53
- "@things-factory/utils": "^4.0.39",
47
+ "@operato/board": "^0.3.26",
48
+ "@operato/graphql": "^0.3.26",
49
+ "@operato/help": "^0.3.26",
50
+ "@operato/layout": "^0.3.26",
51
+ "@operato/shell": "^0.3.26",
52
+ "@operato/utils": "^0.3.26",
53
+ "@things-factory/ejs-remote": "^4.0.43",
54
+ "@things-factory/env": "^4.0.43",
55
+ "@things-factory/styles": "^4.0.43",
56
+ "@things-factory/utils": "^4.0.43",
54
57
  "@webcomponents/webcomponentsjs": "^2.6.0",
55
58
  "@webpack-contrib/schema-utils": "^1.0.0-beta.0",
56
59
  "apollo-server-core": "^3.5.0",
@@ -94,7 +97,7 @@
94
97
  "loader-utils": "^2.0.0",
95
98
  "lodash": "^4.17.15",
96
99
  "mkdirp": "^1.0.3",
97
- "mqtt": "^4.2.6",
100
+ "mqtt": "^4.3.4",
98
101
  "node-fetch": "^2.6.0",
99
102
  "node-sass": "^6.0.1",
100
103
  "nodemon": "^2.0.2",
@@ -125,5 +128,5 @@
125
128
  "resolutions": {
126
129
  "core-js": "^3.16.0"
127
130
  },
128
- "gitHead": "a4f93ea85a26cf70ae0aa2fcd298aa59b55dd039"
131
+ "gitHead": "8f2a8008eb61b6efd266412be267186c5059fab6"
129
132
  }
@@ -24,6 +24,7 @@ import koaBodyParser from 'koa-bodyparser'
24
24
  import koaStatic from 'koa-static'
25
25
  import koaWebpack from '@hatiolab/koa-webpack'
26
26
  import { schema } from './schema'
27
+ import bytesFormat from 'bytes'
27
28
 
28
29
  const debug = require('debug')('things-factory:shell:server-dev')
29
30
 
@@ -47,12 +48,21 @@ const compiler = webpack(webpackConfig)
47
48
 
48
49
  const PORT = (process.env.PORT = flags.port)
49
50
 
51
+ const requestBody = config.get('requestBody')||{}
52
+
50
53
  const bodyParserOption = {
51
- formLimit: '10mb',
52
- jsonLimit: '10mb',
53
- textLimit: '10mb'
54
+ formLimit: requestBody.formLimit||'10mb',
55
+ jsonLimit: requestBody.jsonLimit||'10mb',
56
+ textLimit: requestBody.textLimit||'10mb'
57
+ }
58
+
59
+ const fileUpload = config.get('fileUpload')||{}
60
+ const fileUploadOption = {
61
+ maxFileSize: bytesFormat.parse(fileUpload.maxFileSize)||bytesFormat.parse('10mb'),
62
+ maxFiles: fileUpload.maxFiles||10
54
63
  }
55
64
 
65
+
56
66
  /* bootstrap */
57
67
  const bootstrap = async () => {
58
68
  await databaseInitializer()
@@ -199,7 +209,7 @@ const bootstrap = async () => {
199
209
  })
200
210
 
201
211
  app.use(koaBodyParser(bodyParserOption))
202
- app.use(graphqlUploadKoa({ maxFileSize: 10000000, maxFiles: 10 }))
212
+ app.use(graphqlUploadKoa(fileUploadOption))
203
213
 
204
214
  app.use(
205
215
  server.getMiddleware({
package/server/server.ts CHANGED
@@ -20,6 +20,7 @@ import ip from 'koa-ip'
20
20
  import koaBodyParser from 'koa-bodyparser'
21
21
  import koaStatic from 'koa-static'
22
22
  import { schema } from './schema'
23
+ import bytesFormat from 'bytes'
23
24
 
24
25
  const args = require('args')
25
26
 
@@ -31,12 +32,19 @@ const path = require('path')
31
32
 
32
33
  const PORT = (process.env.PORT = flags.port)
33
34
 
35
+ const requestBody = config.get('requestBody')||{}
36
+
34
37
  const bodyParserOption = {
35
- formLimit: '10mb',
36
- jsonLimit: '10mb',
37
- textLimit: '10mb'
38
+ formLimit: requestBody.formLimit||'10mb',
39
+ jsonLimit: requestBody.jsonLimit||'10mb',
40
+ textLimit: requestBody.textLimit||'10mb'
38
41
  }
39
42
 
43
+ const fileUpload = config.get('fileUpload')||{}
44
+ const fileUploadOption = {
45
+ maxFileSize: bytesFormat.parse(fileUpload.maxFileSize)||bytesFormat.parse('10mb'),
46
+ maxFiles: fileUpload.maxFiles||10
47
+ }
40
48
  /* bootstrap */
41
49
  const bootstrap = async () => {
42
50
  await databaseInitializer()
@@ -165,7 +173,7 @@ const bootstrap = async () => {
165
173
  })
166
174
 
167
175
  app.use(koaBodyParser(bodyParserOption))
168
- app.use(graphqlUploadKoa({ maxFileSize: 10000000, maxFiles: 10 }))
176
+ app.use(graphqlUploadKoa(fileUploadOption))
169
177
 
170
178
  app.use(
171
179
  server.getMiddleware({
@@ -3,6 +3,10 @@ import route from './client/route'
3
3
  export default {
4
4
  route,
5
5
  routes: [
6
+ {
7
+ tagname: 'ox-help-home',
8
+ page: 'help'
9
+ },
6
10
  {
7
11
  tagname: 'page-404',
8
12
  page: 'page404'
@@ -1,12 +0,0 @@
1
- export const UPDATE_MODULES = 'UPDATE_MODULES'
2
- export const UPDATE_BASE_URL = 'UPDATE_BASE_URL'
3
- export const UPDATE_CONTEXT_PATH = 'UPDATE_CONTEXT_PATH'
4
- export const SET_DOMAINS = 'SET-DOMAINS'
5
-
6
- export const updateDomains = (domains, domain) => (dispatch, getState) => {
7
- dispatch({
8
- type: SET_DOMAINS,
9
- domains,
10
- domain
11
- })
12
- }
@@ -1,2 +0,0 @@
1
- export * from './app'
2
- export * from './route'
@@ -1,101 +0,0 @@
1
- import { store } from '../store'
2
- import { getPathInfo } from '@things-factory/utils'
3
-
4
- export const UPDATE_PAGE = 'UPDATE_PAGE'
5
- export const UPDATE_CONTEXT = 'UPDATE_CONTEXT'
6
- export const UPDATE_ACTIVE_PAGE = 'UPDATE_ACTIVE_PAGE'
7
-
8
- export const REGISTER_NAVIGATION_CALLBACK = 'REGISTER_NAVIGATION_CALLBACK'
9
- export const UNREGISTER_NAVIGATION_CALLBACK = 'UNREGISTER_NAVIGATION_CALLBACK'
10
-
11
- export const HOMEPAGE = ''
12
-
13
- /**
14
- * 페이지를 이동하는 방법으로는 다음 두가지가 있다.
15
- * 1. page link를 사용하는 방법 <a href='page'>goto page</a>
16
- * 이 방법은 route(page)와 동일하다.
17
- * 2. navigate('page')를 사용하는 방법
18
- *
19
- * @param string page
20
- */
21
- export const navigate = (location, replace) => {
22
- if (replace) history.replaceState(history.state, '', location)
23
- else history.pushState({}, '', location)
24
-
25
- window.dispatchEvent(new Event('popstate'))
26
- }
27
-
28
- export const navigateWithSilence = ({ pathname: path, search }) => dispatch => {
29
- const { path: pathname } = getPathInfo(path)
30
-
31
- const reg = /\/([^\/]+)\/*([^\/]*)/
32
- const decodePath = decodeURIComponent(pathname)
33
- const matchReturn = decodePath.match(reg) || []
34
- const page = matchReturn[1] || HOMEPAGE
35
- const id = matchReturn[2]
36
- const searchParams = new URLSearchParams(search)
37
-
38
- var params = {}
39
- searchParams.forEach((value, key) => {
40
- params[key] = value
41
- })
42
-
43
- // Any other info you might want to extract from the path (like page type),
44
- // you can do here
45
- dispatch(loadPage(page, id, params))
46
- }
47
-
48
- const _preLoadPage = page => {
49
- /*
50
- * _preLoadPage 에서는 page를 load하기 전처리를 수행한다.
51
- * 예를 들면, page dynamic import 또는 page re-routing
52
- */
53
- var state = store.getState()
54
-
55
- /* override 기능을 위해서 dependency 관계의 역순으로 route를 실행한다. */
56
- var modules = state.app.modules
57
- if (modules) {
58
- for (let i = modules.length - 1; i >= 0; i--) {
59
- let factoryModule = modules[i]
60
- let _page = factoryModule.route && factoryModule.route(page)
61
- if (_page) {
62
- return _page
63
- }
64
- }
65
- }
66
- }
67
-
68
- export const loadPage = (page, id, params) => dispatch => {
69
- var newPage = _preLoadPage(page)
70
-
71
- if (page !== newPage && (newPage.indexOf('/') == 0)) {
72
- dispatch(
73
- navigateWithSilence({
74
- pathname: newPage,
75
- params
76
- })
77
- )
78
- return
79
- }
80
-
81
- dispatch({
82
- type: UPDATE_PAGE,
83
- page: newPage,
84
- resourceId: id,
85
- params
86
- })
87
- }
88
-
89
- export const route = url => {
90
- /*
91
- * Caution : This function works normally in a desktop environment,
92
- * but it is not guaranteed in a mobile environment, so be sure to check it.
93
- */
94
- const link = document.createElement('a')
95
-
96
- link.setAttribute('href', url)
97
-
98
- document.body.appendChild(link)
99
- link.click()
100
- document.body.removeChild(link)
101
- }
@@ -1,144 +0,0 @@
1
- import { LitElement, html } from 'lit-element'
2
-
3
- import { store } from '../../store'
4
- import { UPDATE_CONTEXT } from '../../actions/route'
5
-
6
- import isEqual from 'lodash/isEqual'
7
-
8
- function diff(after, before) {
9
- var changed = false
10
- var changes = {}
11
-
12
- Object.getOwnPropertyNames(after).forEach(function(key) {
13
- let before_val = before[key]
14
- let after_val = after[key]
15
-
16
- if (!isEqual(before_val, after_val)) {
17
- changes[key] = after_val
18
- changed = true
19
- }
20
- })
21
-
22
- return changed && changes
23
- }
24
-
25
- export class PageView extends LitElement {
26
- // Only render this page if it's actually visible.
27
- shouldUpdate(changes) {
28
- var active = String(this.active) == 'true'
29
- var { active: oldActive = false } = this._oldLifecycleInfo$ || {}
30
-
31
- /*
32
- * page lifecycle
33
- * case 1. page가 새로 activate 되었다.
34
- * case 2. page가 active 상태에서 lifecycle 정보가 바뀌었다.
35
- **/
36
- if (active) {
37
- this.pageUpdate({
38
- active
39
- })
40
- } else if (oldActive) {
41
- this.pageUpdate({
42
- active
43
- })
44
- }
45
-
46
- return active
47
- }
48
-
49
- static get properties() {
50
- return {
51
- active: Boolean,
52
- lifecycle: Object,
53
- contextPath: { attribute: 'context-path' }
54
- }
55
- }
56
-
57
- /* lifecycle */
58
- async pageUpdate(changes = {}, force = false) {
59
- var before = this._oldLifecycleInfo$ || {}
60
-
61
- var after = {
62
- ...before,
63
- ...this.lifecycle,
64
- contextPath: this.contextPath,
65
- ...changes
66
- }
67
-
68
- if (!('initialized' in changes) && after.active && !before.initialized) {
69
- after.initialized = true
70
- }
71
-
72
- if (force) {
73
- after.updated = Date.now()
74
- }
75
-
76
- var changed = diff(after, before)
77
- if (!changed) {
78
- return
79
- }
80
-
81
- this._oldLifecycleInfo$ = after
82
-
83
- /* page의 이미 초기화된 상태에서 contextPath가 바뀐다면, 무조건 page가 리셋되어야 한다. */
84
- if (before.initialized && changed.contextPath) {
85
- await this.pageReset()
86
- return
87
- }
88
-
89
- if (changed.initialized) {
90
- await this.pageInitialized(after)
91
- }
92
-
93
- if ('initialized' in changed) {
94
- if (changed.initialized) {
95
- /*
96
- * 방금 초기화된 경우라면, 엘리먼트들이 만들어지지 않았을 가능성이 있으므로,
97
- * 다음 animationFrame에서 pageUpdated 콜백을 호출한다.
98
- */
99
- requestAnimationFrame(async () => {
100
- await this.pageUpdated(changed, after, before)
101
- /* active page인 경우에는, page Context 갱신도 필요할 것이다. */
102
- after.active && this.updateContext()
103
- })
104
- } else {
105
- await this.pageDisposed(after)
106
- }
107
- } else {
108
- await this.pageUpdated(changed, after, before)
109
- /* active page인 경우에는, page Context 갱신도 필요할 것이다. */
110
- after.active && this.updateContext()
111
- }
112
- }
113
-
114
- async pageReset() {
115
- var { initialized } = this._oldLifecycleInfo$ || {}
116
-
117
- if (initialized) {
118
- await this.pageDispose()
119
- await this.pageUpdate({}, true)
120
- }
121
- }
122
-
123
- async pageDispose() {
124
- await this.pageUpdate({
125
- initialized: false
126
- })
127
- }
128
-
129
- pageInitialized(pageInfo) {}
130
- pageUpdated(changes, after, before) {}
131
- pageDisposed(pageInfo) {}
132
-
133
- /* context */
134
- updateContext(override) {
135
- store.dispatch({
136
- type: UPDATE_CONTEXT,
137
- context: override ? { ...this.context, ...override } : this.context
138
- })
139
- }
140
-
141
- get context() {
142
- return {}
143
- }
144
- }
@@ -1,40 +0,0 @@
1
- import { UPDATE_MODULES, UPDATE_BASE_URL, UPDATE_CONTEXT_PATH, SET_DOMAINS } from '../actions/app.js'
2
- import { getPathInfo } from '@things-factory/utils'
3
-
4
- const INITIAL_STATE = {
5
- baseUrl: location.origin,
6
- contextPath: getPathInfo(location.pathname).contextPath,
7
- domains: []
8
- }
9
-
10
- const app = (state = INITIAL_STATE, action) => {
11
- switch (action.type) {
12
- case UPDATE_MODULES:
13
- return {
14
- ...state,
15
- modules: action.modules
16
- }
17
- case UPDATE_BASE_URL:
18
- return {
19
- ...state,
20
- baseUrl: action.baseUrl
21
- }
22
- case UPDATE_CONTEXT_PATH:
23
- return {
24
- ...state,
25
- contextPath: action.contextPath
26
- }
27
-
28
- case SET_DOMAINS:
29
- return {
30
- ...state,
31
- domains: action.domains,
32
- domain: action.domain
33
- }
34
-
35
- default:
36
- return state
37
- }
38
- }
39
-
40
- export default app
@@ -1,66 +0,0 @@
1
- import {
2
- UPDATE_PAGE,
3
- UPDATE_CONTEXT,
4
- UPDATE_ACTIVE_PAGE,
5
- REGISTER_NAVIGATION_CALLBACK,
6
- UNREGISTER_NAVIGATION_CALLBACK
7
- } from '../actions/route.js'
8
- import { updateMetadata } from 'pwa-helpers/metadata.js'
9
- import startCase from 'lodash/startCase'
10
-
11
- const APP_TITLE_EL = document.querySelector('meta[name="application-name"]')
12
- var appTitle
13
- if (APP_TITLE_EL) appTitle = APP_TITLE_EL.content
14
-
15
- const INITIAL_STATE = {
16
- page: '',
17
- resourceId: '',
18
- params: {},
19
- activePage: null,
20
- context: {},
21
- callbacks: []
22
- }
23
-
24
- const route = (state = INITIAL_STATE, action) => {
25
- switch (action.type) {
26
- case UPDATE_PAGE:
27
- return {
28
- ...state,
29
- page: action.page,
30
- resourceId: action.resourceId,
31
- params: action.params
32
- }
33
- case UPDATE_CONTEXT:
34
- let title = action.context?.title
35
- let text = typeof title === 'object' ? title.text : title
36
-
37
- updateMetadata({
38
- title: appTitle + (text ? ` - ${startCase(text)}` : '')
39
- })
40
- return {
41
- ...state,
42
- context: action.context || (state.activePage && state.activePage.context) || {}
43
- }
44
- case UPDATE_ACTIVE_PAGE:
45
- return {
46
- ...state,
47
- activePage: action.activePage
48
- }
49
-
50
- case REGISTER_NAVIGATION_CALLBACK:
51
- return {
52
- ...state,
53
- callbacks: [...state.callbacks, action.callback]
54
- }
55
- case UNREGISTER_NAVIGATION_CALLBACK:
56
- return {
57
- ...state,
58
- callbacks: state.callbacks.filter(callback => callback !== action.callback)
59
- }
60
-
61
- default:
62
- return state
63
- }
64
- }
65
-
66
- export default route