@things-factory/dashboard 9.0.0-beta.25 → 9.0.0-beta.27

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 (45) hide show
  1. package/package.json +3 -3
  2. package/dist-client/actions/board-settings.d.ts +0 -3
  3. package/dist-client/actions/board-settings.js +0 -29
  4. package/dist-client/actions/board-settings.js.map +0 -1
  5. package/dist-client/actions/index.d.ts +0 -1
  6. package/dist-client/actions/index.js +0 -2
  7. package/dist-client/actions/index.js.map +0 -1
  8. package/dist-client/bootstrap.d.ts +0 -2
  9. package/dist-client/bootstrap.js +0 -31
  10. package/dist-client/bootstrap.js.map +0 -1
  11. package/dist-client/const.d.ts +0 -5
  12. package/dist-client/const.js +0 -6
  13. package/dist-client/const.js.map +0 -1
  14. package/dist-client/index.d.ts +0 -1
  15. package/dist-client/index.js +0 -2
  16. package/dist-client/index.js.map +0 -1
  17. package/dist-client/pages/dashboard.d.ts +0 -19
  18. package/dist-client/pages/dashboard.js +0 -99
  19. package/dist-client/pages/dashboard.js.map +0 -1
  20. package/dist-client/reducers/board-settings.d.ts +0 -2
  21. package/dist-client/reducers/board-settings.js +0 -14
  22. package/dist-client/reducers/board-settings.js.map +0 -1
  23. package/dist-client/route.d.ts +0 -1
  24. package/dist-client/route.js +0 -10
  25. package/dist-client/route.js.map +0 -1
  26. package/dist-client/tsconfig.tsbuildinfo +0 -1
  27. package/dist-client/viewparts/dashboard-setting-let.d.ts +0 -26
  28. package/dist-client/viewparts/dashboard-setting-let.js +0 -222
  29. package/dist-client/viewparts/dashboard-setting-let.js.map +0 -1
  30. package/dist-server/index.d.ts +0 -1
  31. package/dist-server/index.js +0 -5
  32. package/dist-server/index.js.map +0 -1
  33. package/dist-server/service/board-settings/board-setting.d.ts +0 -7
  34. package/dist-server/service/board-settings/board-setting.js +0 -29
  35. package/dist-server/service/board-settings/board-setting.js.map +0 -1
  36. package/dist-server/service/board-settings/board-settings-query.d.ts +0 -4
  37. package/dist-server/service/board-settings/board-settings-query.js +0 -62
  38. package/dist-server/service/board-settings/board-settings-query.js.map +0 -1
  39. package/dist-server/service/board-settings/index.d.ts +0 -3
  40. package/dist-server/service/board-settings/index.js +0 -7
  41. package/dist-server/service/board-settings/index.js.map +0 -1
  42. package/dist-server/service/index.d.ts +0 -5
  43. package/dist-server/service/index.js +0 -19
  44. package/dist-server/service/index.js.map +0 -1
  45. package/dist-server/tsconfig.tsbuildinfo +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/dashboard",
3
- "version": "9.0.0-beta.25",
3
+ "version": "9.0.0-beta.27",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "dist-client/index.js",
6
6
  "things-factory": true,
@@ -27,9 +27,9 @@
27
27
  },
28
28
  "dependencies": {
29
29
  "@things-factory/auth-base": "^9.0.0-beta.25",
30
- "@things-factory/board-service": "^9.0.0-beta.25",
30
+ "@things-factory/board-service": "^9.0.0-beta.27",
31
31
  "@things-factory/board-ui": "^9.0.0-beta.25",
32
32
  "@things-factory/setting-base": "^9.0.0-beta.25"
33
33
  },
34
- "gitHead": "7b11df06e4b7586cc316da7dd5ab905592d85dcc"
34
+ "gitHead": "3038f56087036b06717f8e4910383c6b1320218d"
35
35
  }
@@ -1,3 +0,0 @@
1
- export declare const UPDATE_BOARD_SETTINGS = "UPDATE_BOARD_SETTINGS";
2
- export declare const CLEAR_BOARD_SETTINGS = "CLEAR_BOARD_SETTINGS";
3
- export declare function fetchBoardSettings(names: any): Promise<any>;
@@ -1,29 +0,0 @@
1
- import gql from 'graphql-tag';
2
- import { client } from '@operato/graphql';
3
- export const UPDATE_BOARD_SETTINGS = 'UPDATE_BOARD_SETTINGS';
4
- export const CLEAR_BOARD_SETTINGS = 'CLEAR_BOARD_SETTINGS';
5
- export async function fetchBoardSettings(names) {
6
- var response = await client.query({
7
- query: gql `
8
- query ($names: [String!]) {
9
- boardSettings(names: $names) {
10
- name
11
- value
12
- board {
13
- id
14
- name
15
- description
16
- thumbnail
17
- }
18
- }
19
- }
20
- `,
21
- variables: {
22
- names
23
- }
24
- });
25
- if (!response || !response.data)
26
- return;
27
- return response.data.boardSettings;
28
- }
29
- //# sourceMappingURL=board-settings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"board-settings.js","sourceRoot":"","sources":["../../client/actions/board-settings.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAA;AAC5D,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAA;AAE1D,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAAK;IAC5C,IAAI,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;QAChC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;KAaT;QACD,SAAS,EAAE;YACT,KAAK;SACN;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,OAAM;IACvC,OAAO,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAA;AACpC,CAAC","sourcesContent":["import gql from 'graphql-tag'\n\nimport { client } from '@operato/graphql'\n\nexport const UPDATE_BOARD_SETTINGS = 'UPDATE_BOARD_SETTINGS'\nexport const CLEAR_BOARD_SETTINGS = 'CLEAR_BOARD_SETTINGS'\n\nexport async function fetchBoardSettings(names) {\n var response = await client.query({\n query: gql`\n query ($names: [String!]) {\n boardSettings(names: $names) {\n name\n value\n board {\n id\n name\n description\n thumbnail\n }\n }\n }\n `,\n variables: {\n names\n }\n })\n\n if (!response || !response.data) return\n return response.data.boardSettings\n}\n"]}
@@ -1 +0,0 @@
1
- export * from './board-settings';
@@ -1,2 +0,0 @@
1
- export * from './board-settings';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../client/actions/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA","sourcesContent":["export * from './board-settings'\n"]}
@@ -1,2 +0,0 @@
1
- import './viewparts/dashboard-setting-let';
2
- export default function bootstrap(): void;
@@ -1,31 +0,0 @@
1
- import { html } from 'lit';
2
- import { store } from '@operato/shell';
3
- import { auth, hasPrivilege } from '@things-factory/auth-base/dist-client';
4
- import { ADD_SETTING } from '@things-factory/setting-base/dist-client';
5
- import { UPDATE_BOARD_SETTINGS, fetchBoardSettings } from './actions/board-settings';
6
- import boardSetting from './reducers/board-settings';
7
- import './viewparts/dashboard-setting-let';
8
- import { FALLBACK_HOME_BOARD, DASHBOARD, DASHBOARD_MOBILE } from './const';
9
- export default function bootstrap() {
10
- store.addReducers({ boardSetting });
11
- auth.on('profile', async () => {
12
- var settings = await fetchBoardSettings([FALLBACK_HOME_BOARD, DASHBOARD, DASHBOARD_MOBILE]);
13
- store.dispatch({
14
- type: UPDATE_BOARD_SETTINGS,
15
- settings: settings.reduce((settings, setting) => {
16
- settings[setting.name] = setting;
17
- return settings;
18
- }, {})
19
- });
20
- if (await hasPrivilege({ privilege: 'mutation', category: 'setting' })) {
21
- store.dispatch({
22
- type: ADD_SETTING,
23
- setting: {
24
- seq: 20,
25
- template: html ` <dashboard-setting-let></dashboard-setting-let> `
26
- }
27
- });
28
- }
29
- });
30
- }
31
- //# sourceMappingURL=bootstrap.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../client/bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAA;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AAEtE,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AACpF,OAAO,YAAY,MAAM,2BAA2B,CAAA;AAEpD,OAAO,mCAAmC,CAAA;AAE1C,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE1E,MAAM,CAAC,OAAO,UAAU,SAAS;IAC/B,KAAK,CAAC,WAAW,CAAC,EAAE,YAAY,EAAE,CAAC,CAAA;IAEnC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;QAC5B,IAAI,QAAQ,GAAG,MAAM,kBAAkB,CAAC,CAAC,mBAAmB,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAA;QAE3F,KAAK,CAAC,QAAQ,CAAC;YACb,IAAI,EAAE,qBAAqB;YAC3B,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE;gBAC9C,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAA;gBAChC,OAAO,QAAQ,CAAA;YACjB,CAAC,EAAE,EAAE,CAAC;SACP,CAAC,CAAA;QAEF,IAAI,MAAM,YAAY,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACvE,KAAK,CAAC,QAAQ,CAAC;gBACb,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE;oBACP,GAAG,EAAE,EAAE;oBACP,QAAQ,EAAE,IAAI,CAAA,mDAAmD;iBAClE;aACF,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { html } from 'lit'\nimport { store } from '@operato/shell'\nimport { auth, hasPrivilege } from '@things-factory/auth-base/dist-client'\nimport { ADD_SETTING } from '@things-factory/setting-base/dist-client'\n\nimport { UPDATE_BOARD_SETTINGS, fetchBoardSettings } from './actions/board-settings'\nimport boardSetting from './reducers/board-settings'\n\nimport './viewparts/dashboard-setting-let'\n\nimport { FALLBACK_HOME_BOARD, DASHBOARD, DASHBOARD_MOBILE } from './const'\n\nexport default function bootstrap() {\n store.addReducers({ boardSetting })\n\n auth.on('profile', async () => {\n var settings = await fetchBoardSettings([FALLBACK_HOME_BOARD, DASHBOARD, DASHBOARD_MOBILE])\n\n store.dispatch({\n type: UPDATE_BOARD_SETTINGS,\n settings: settings.reduce((settings, setting) => {\n settings[setting.name] = setting\n return settings\n }, {})\n })\n\n if (await hasPrivilege({ privilege: 'mutation', category: 'setting' })) {\n store.dispatch({\n type: ADD_SETTING,\n setting: {\n seq: 20,\n template: html` <dashboard-setting-let></dashboard-setting-let> `\n }\n })\n }\n })\n}\n"]}
@@ -1,5 +0,0 @@
1
- export declare const FALLBACK_HOME_BOARD = "home";
2
- export declare const DASHBOARD = "dashboard";
3
- export declare const DASHBOARD_MOBILE = "dashboard-mobile";
4
- export declare const DASHBOARD_DESCRIPTION = "dashboard";
5
- export declare const DASHBOARD_MOBILE_DESCRIPTION = "dashboard mobile";
@@ -1,6 +0,0 @@
1
- export const FALLBACK_HOME_BOARD = 'home'; /* for backward compatibility */
2
- export const DASHBOARD = 'dashboard';
3
- export const DASHBOARD_MOBILE = 'dashboard-mobile';
4
- export const DASHBOARD_DESCRIPTION = 'dashboard';
5
- export const DASHBOARD_MOBILE_DESCRIPTION = 'dashboard mobile';
6
- //# sourceMappingURL=const.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"const.js","sourceRoot":"","sources":["../client/const.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAA,CAAC,gCAAgC;AAC1E,MAAM,CAAC,MAAM,SAAS,GAAG,WAAW,CAAA;AACpC,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CAAA;AAClD,MAAM,CAAC,MAAM,qBAAqB,GAAG,WAAW,CAAA;AAChD,MAAM,CAAC,MAAM,4BAA4B,GAAG,kBAAkB,CAAA","sourcesContent":["export const FALLBACK_HOME_BOARD = 'home' /* for backward compatibility */\nexport const DASHBOARD = 'dashboard'\nexport const DASHBOARD_MOBILE = 'dashboard-mobile'\nexport const DASHBOARD_DESCRIPTION = 'dashboard'\nexport const DASHBOARD_MOBILE_DESCRIPTION = 'dashboard mobile'\n"]}
@@ -1 +0,0 @@
1
- export * from './actions';
@@ -1,2 +0,0 @@
1
- export * from './actions';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../client/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA","sourcesContent":["export * from './actions'\n"]}
@@ -1,19 +0,0 @@
1
- import '@operato/board/ox-board-selector.js';
2
- import { BoardViewerPage } from '@things-factory/board-ui/dist-client';
3
- export declare class DashboardHome extends BoardViewerPage {
4
- stateChanged(state: any): void;
5
- get oopsNote(): {
6
- icon: string;
7
- title: string;
8
- description: string;
9
- click: (e: any) => void;
10
- };
11
- get context(): any;
12
- onClickDashboardSetting(name: any, description: any): void;
13
- saveSettings({ name, value, category, description }: {
14
- name: any;
15
- value: any;
16
- category: any;
17
- description: any;
18
- }): Promise<void>;
19
- }
@@ -1,99 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import '@operato/board/ox-board-selector.js';
3
- import gql from 'graphql-tag';
4
- import { html } from 'lit';
5
- import { customElement } from 'lit/decorators.js';
6
- import { store } from '@operato/shell';
7
- import { client } from '@operato/graphql';
8
- import { i18next } from '@operato/i18n';
9
- import { openPopup } from '@operato/layout';
10
- import { isMobileDevice } from '@operato/utils';
11
- import { BoardViewerPage } from '@things-factory/board-ui/dist-client';
12
- import { fetchBoardSettings, UPDATE_BOARD_SETTINGS } from '../actions/board-settings';
13
- import { DASHBOARD, DASHBOARD_MOBILE, FALLBACK_HOME_BOARD } from '../const';
14
- const HOME_DESCRIPTION = 'home dashboard';
15
- const FALLBACK_ORDER = isMobileDevice()
16
- ? [DASHBOARD_MOBILE, DASHBOARD, FALLBACK_HOME_BOARD]
17
- : [DASHBOARD, FALLBACK_HOME_BOARD];
18
- const HOME_BOARD = isMobileDevice() ? DASHBOARD_MOBILE : DASHBOARD;
19
- let DashboardHome = class DashboardHome extends BoardViewerPage {
20
- stateChanged(state) {
21
- super.stateChanged(state);
22
- const dashboard = state === null || state === void 0 ? void 0 : state.boardSetting;
23
- const homeBoard = dashboard && dashboard[FALLBACK_ORDER.find(name => dashboard[name]) || 'maybe notfound'];
24
- this._boardId = homeBoard === null || homeBoard === void 0 ? void 0 : homeBoard.value;
25
- }
26
- get oopsNote() {
27
- return {
28
- icon: 'insert_chart',
29
- title: 'HOME DASHBOARD',
30
- description: 'There are no home dashboard setting. Pls, click to setting home dashboard.',
31
- click: e => this.onClickDashboardSetting(HOME_BOARD, HOME_DESCRIPTION)
32
- };
33
- }
34
- get context() {
35
- return {
36
- title: HOME_DESCRIPTION
37
- };
38
- }
39
- onClickDashboardSetting(name, description) {
40
- var popup = openPopup(html `
41
- <ox-board-selector
42
- .creatable=${true}
43
- .value=${this._boardId}
44
- @board-selected=${async (e) => {
45
- var board = e.detail.board;
46
- await this.saveSettings({
47
- name,
48
- value: board.id,
49
- category: 'board',
50
- description
51
- });
52
- var settings = await fetchBoardSettings([FALLBACK_HOME_BOARD, DASHBOARD, DASHBOARD_MOBILE]);
53
- store.dispatch({
54
- type: UPDATE_BOARD_SETTINGS,
55
- settings: settings.reduce((settings, setting) => {
56
- settings[setting.name] = setting;
57
- return settings;
58
- }, {})
59
- });
60
- popup.close();
61
- this.requestUpdate();
62
- }}
63
- ></ox-board-selector>
64
- `, {
65
- backdrop: true,
66
- size: 'large',
67
- title: i18next.t('title.dashboard setting')
68
- });
69
- }
70
- async saveSettings({ name, value, category, description }) {
71
- if (!(name && value)) {
72
- return;
73
- }
74
- await client.query({
75
- query: gql `
76
- mutation UpdateSetting($patch: SettingPatch!, $name: String!) {
77
- updateSetting(patch: $patch, name: $name) {
78
- name
79
- value
80
- }
81
- }
82
- `,
83
- variables: {
84
- name,
85
- patch: {
86
- name,
87
- description,
88
- category,
89
- value
90
- }
91
- }
92
- });
93
- }
94
- };
95
- DashboardHome = __decorate([
96
- customElement('dashboard-home')
97
- ], DashboardHome);
98
- export { DashboardHome };
99
- //# sourceMappingURL=dashboard.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../client/pages/dashboard.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/board/ox-board-selector.js'\n\nimport gql from 'graphql-tag'\nimport { html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\nimport { store } from '@operato/shell'\nimport { client } from '@operato/graphql'\nimport { i18next } from '@operato/i18n'\nimport { openPopup } from '@operato/layout'\nimport { isMobileDevice } from '@operato/utils'\nimport { BoardViewerPage } from '@things-factory/board-ui/dist-client'\n\nimport { fetchBoardSettings, UPDATE_BOARD_SETTINGS } from '../actions/board-settings'\nimport { DASHBOARD, DASHBOARD_MOBILE, FALLBACK_HOME_BOARD } from '../const'\n\nconst HOME_DESCRIPTION = 'home dashboard'\n\nconst FALLBACK_ORDER = isMobileDevice()\n ? [DASHBOARD_MOBILE, DASHBOARD, FALLBACK_HOME_BOARD]\n : [DASHBOARD, FALLBACK_HOME_BOARD]\nconst HOME_BOARD = isMobileDevice() ? DASHBOARD_MOBILE : DASHBOARD\n\n@customElement('dashboard-home')\nexport class DashboardHome extends BoardViewerPage {\n stateChanged(state) {\n super.stateChanged(state)\n\n const dashboard = state?.boardSetting\n const homeBoard = dashboard && dashboard[FALLBACK_ORDER.find(name => dashboard[name]) || 'maybe notfound']\n this._boardId = homeBoard?.value\n }\n\n get oopsNote() {\n return {\n icon: 'insert_chart',\n title: 'HOME DASHBOARD',\n description: 'There are no home dashboard setting. Pls, click to setting home dashboard.',\n click: e => this.onClickDashboardSetting(HOME_BOARD, HOME_DESCRIPTION)\n }\n }\n\n get context() {\n return {\n title: HOME_DESCRIPTION\n } as any\n }\n\n onClickDashboardSetting(name, description) {\n var popup = openPopup(\n html`\n <ox-board-selector\n .creatable=${true}\n .value=${this._boardId}\n @board-selected=${async e => {\n var board = e.detail.board\n\n await this.saveSettings({\n name,\n value: board.id,\n category: 'board',\n description\n })\n\n var settings = await fetchBoardSettings([FALLBACK_HOME_BOARD, DASHBOARD, DASHBOARD_MOBILE])\n store.dispatch({\n type: UPDATE_BOARD_SETTINGS,\n settings: settings.reduce((settings, setting) => {\n settings[setting.name] = setting\n return settings\n }, {})\n })\n\n popup.close()\n this.requestUpdate()\n }}\n ></ox-board-selector>\n `,\n {\n backdrop: true,\n size: 'large',\n title: i18next.t('title.dashboard setting')\n }\n )\n }\n\n async saveSettings({ name, value, category, description }) {\n if (!(name && value)) {\n return\n }\n\n await client.query({\n query: gql`\n mutation UpdateSetting($patch: SettingPatch!, $name: String!) {\n updateSetting(patch: $patch, name: $name) {\n name\n value\n }\n }\n `,\n variables: {\n name,\n patch: {\n name,\n description,\n category,\n value\n }\n }\n })\n }\n}\n"]}
@@ -1,2 +0,0 @@
1
- declare const boardSetting: (state: {} | undefined, action: any) => any;
2
- export default boardSetting;
@@ -1,14 +0,0 @@
1
- import { UPDATE_BOARD_SETTINGS, CLEAR_BOARD_SETTINGS } from '../actions/board-settings';
2
- const INITIAL_STATE = {};
3
- const boardSetting = (state = INITIAL_STATE, action) => {
4
- switch (action.type) {
5
- case UPDATE_BOARD_SETTINGS:
6
- return Object.assign(Object.assign({}, state), action.settings);
7
- case CLEAR_BOARD_SETTINGS:
8
- return {};
9
- default:
10
- return state;
11
- }
12
- };
13
- export default boardSetting;
14
- //# sourceMappingURL=board-settings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"board-settings.js","sourceRoot":"","sources":["../../client/reducers/board-settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAEvF,MAAM,aAAa,GAAG,EAAE,CAAA;AAExB,MAAM,YAAY,GAAG,CAAC,KAAK,GAAG,aAAa,EAAE,MAAM,EAAE,EAAE;IACrD,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,qBAAqB;YACxB,uCACK,KAAK,GACL,MAAM,CAAC,QAAQ,EACnB;QAEH,KAAK,oBAAoB;YACvB,OAAO,EAAE,CAAA;QAEX;YACE,OAAO,KAAK,CAAA;IAChB,CAAC;AACH,CAAC,CAAA;AAED,eAAe,YAAY,CAAA","sourcesContent":["import { UPDATE_BOARD_SETTINGS, CLEAR_BOARD_SETTINGS } from '../actions/board-settings'\n\nconst INITIAL_STATE = {}\n\nconst boardSetting = (state = INITIAL_STATE, action) => {\n switch (action.type) {\n case UPDATE_BOARD_SETTINGS:\n return {\n ...state,\n ...action.settings\n }\n\n case CLEAR_BOARD_SETTINGS:\n return {}\n\n default:\n return state\n }\n}\n\nexport default boardSetting\n"]}
@@ -1 +0,0 @@
1
- export default function route(page: any): any;
@@ -1,10 +0,0 @@
1
- export default function route(page) {
2
- switch (page) {
3
- case '':
4
- return '/dashboard';
5
- case 'dashboard':
6
- import('./pages/dashboard');
7
- return page;
8
- }
9
- }
10
- //# sourceMappingURL=route.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"route.js","sourceRoot":"","sources":["../client/route.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,IAAI;IAChC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,EAAE;YACL,OAAO,YAAY,CAAA;QAErB,KAAK,WAAW;YACd,MAAM,CAAC,mBAAmB,CAAC,CAAA;YAC3B,OAAO,IAAI,CAAA;IACf,CAAC;AACH,CAAC","sourcesContent":["export default function route(page) {\n switch (page) {\n case '':\n return '/dashboard'\n\n case 'dashboard':\n import('./pages/dashboard')\n return page\n }\n}\n"]}