@ytsaurus/ui 1.15.0 → 1.15.1
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/build/cjs/ui/common/utils/settings-local-provider.js +1 -1
- package/build/cjs/ui/common/utils/settings-local-provider.js.map +1 -1
- package/build/cjs/ui/common/utils/settings-remote-provider.d.ts +2 -1
- package/build/cjs/ui/common/utils/settings-remote-provider.js.map +1 -1
- package/build/cjs/ui/store/actions/settings/index.js +22 -11
- package/build/cjs/ui/store/actions/settings/index.js.map +1 -1
- package/build/esm/ui/common/utils/settings-local-provider.js +1 -1
- package/build/esm/ui/common/utils/settings-local-provider.js.map +1 -1
- package/build/esm/ui/common/utils/settings-remote-provider.d.ts +2 -1
- package/build/esm/ui/common/utils/settings-remote-provider.js.map +1 -1
- package/build/esm/ui/store/actions/settings/index.js +22 -11
- package/build/esm/ui/store/actions/settings/index.js.map +1 -1
- package/dist/public/build/assets-manifest.json +4 -4
- package/dist/public/build/js/main.768ba513.js +3 -0
- package/dist/public/build/js/{main.fb68ce2c.js.map → main.768ba513.js.map} +1 -1
- package/dist/public/build/manifest.json +2 -2
- package/package.json +2 -2
- package/dist/public/build/js/main.fb68ce2c.js +0 -3
- /package/dist/public/build/js/{main.fb68ce2c.js.LICENSE.txt → main.768ba513.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_hammer","_interopRequireDefault","require","obj","__esModule","default","LOCAL_PATH","provider","get","username","path","settingPath","Promise","resolve","hammer","storage","read","set","value","write","remove","getAll","settings","settingSubpath","keys","forEach","entry","indexOf","substring","length","create","_default","exports"],"sources":["settings-local-provider.ts"],"sourcesContent":["import hammer from '../hammer';\nimport {SettingsProvider} from './settings-remote-provider';\n\nconst LOCAL_PATH = 'interface-settings';\n\nconst provider: SettingsProvider = {\n get(username: string, path: string) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.read(settingPath));\n },\n\n set<T>(username: string, path: string, value: T) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.write(settingPath, value));\n },\n\n remove(username: string, path: string) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.remove(settingPath));\n },\n\n getAll<T>(username: string) {\n const settings: any = {};\n const settingSubpath = LOCAL_PATH + '/' + username + '/';\n\n hammer.storage.keys().forEach(function (entry: string) {\n if (entry.indexOf(settingSubpath) === 0) {\n const path = entry.substring(settingSubpath.length);\n settings[path] = hammer.storage.read(entry);\n }\n });\n\n return
|
1
|
+
{"version":3,"names":["_hammer","_interopRequireDefault","require","obj","__esModule","default","LOCAL_PATH","provider","get","username","path","settingPath","Promise","resolve","hammer","storage","read","set","value","write","remove","getAll","settings","settingSubpath","keys","forEach","entry","indexOf","substring","length","create","_default","exports"],"sources":["settings-local-provider.ts"],"sourcesContent":["import hammer from '../hammer';\nimport {SettingsProvider} from './settings-remote-provider';\n\nconst LOCAL_PATH = 'interface-settings';\n\nconst provider: SettingsProvider = {\n get(username: string, path: string) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.read(settingPath));\n },\n\n set<T>(username: string, path: string, value: T) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.write(settingPath, value));\n },\n\n remove(username: string, path: string) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.remove(settingPath));\n },\n\n getAll<T>(username: string) {\n const settings: any = {};\n const settingSubpath = LOCAL_PATH + '/' + username + '/';\n\n hammer.storage.keys().forEach(function (entry: string) {\n if (entry.indexOf(settingSubpath) === 0) {\n const path = entry.substring(settingSubpath.length);\n settings[path] = hammer.storage.read(entry);\n }\n });\n\n return settings as T;\n },\n create() {\n return Promise.resolve();\n },\n};\n\nexport default provider;\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA8B,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAG9B,IAAMG,UAAU,GAAG,oBAAoB;AAEvC,IAAMC,QAA0B,GAAG;EAC/BC,GAAG,WAAAA,IAACC,QAAgB,EAAEC,IAAY,EAAE;IAChC,IAAMC,WAAW,GAAGL,UAAU,GAAG,GAAG,GAAGG,QAAQ,GAAG,GAAG,GAAGC,IAAI;IAC5D,OAAOE,OAAO,CAACC,OAAO,CAACC,eAAM,CAACC,OAAO,CAACC,IAAI,CAACL,WAAW,CAAC,CAAC;EAC5D,CAAC;EAEDM,GAAG,WAAAA,IAAIR,QAAgB,EAAEC,IAAY,EAAEQ,KAAQ,EAAE;IAC7C,IAAMP,WAAW,GAAGL,UAAU,GAAG,GAAG,GAAGG,QAAQ,GAAG,GAAG,GAAGC,IAAI;IAC5D,OAAOE,OAAO,CAACC,OAAO,CAACC,eAAM,CAACC,OAAO,CAACI,KAAK,CAACR,WAAW,EAAEO,KAAK,CAAC,CAAC;EACpE,CAAC;EAEDE,MAAM,WAAAA,OAACX,QAAgB,EAAEC,IAAY,EAAE;IACnC,IAAMC,WAAW,GAAGL,UAAU,GAAG,GAAG,GAAGG,QAAQ,GAAG,GAAG,GAAGC,IAAI;IAC5D,OAAOE,OAAO,CAACC,OAAO,CAACC,eAAM,CAACC,OAAO,CAACK,MAAM,CAACT,WAAW,CAAC,CAAC;EAC9D,CAAC;EAEDU,MAAM,WAAAA,OAAIZ,QAAgB,EAAE;IACxB,IAAMa,QAAa,GAAG,CAAC,CAAC;IACxB,IAAMC,cAAc,GAAGjB,UAAU,GAAG,GAAG,GAAGG,QAAQ,GAAG,GAAG;IAExDK,eAAM,CAACC,OAAO,CAACS,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC,UAAUC,KAAa,EAAE;MACnD,IAAIA,KAAK,CAACC,OAAO,CAACJ,cAAc,CAAC,KAAK,CAAC,EAAE;QACrC,IAAMb,IAAI,GAAGgB,KAAK,CAACE,SAAS,CAACL,cAAc,CAACM,MAAM,CAAC;QACnDP,QAAQ,CAACZ,IAAI,CAAC,GAAGI,eAAM,CAACC,OAAO,CAACC,IAAI,CAACU,KAAK,CAAC;MAC/C;IACJ,CAAC,CAAC;IAEF,OAAOJ,QAAQ;EACnB,CAAC;EACDQ,MAAM,WAAAA,OAAA,EAAG;IACL,OAAOlB,OAAO,CAACC,OAAO,CAAC,CAAC;EAC5B;AACJ,CAAC;AAAA,IAAAkB,QAAA,GAAAC,OAAA,CAAA3B,OAAA,GAEcE,QAAQ"}
|
@@ -1,9 +1,10 @@
|
|
1
|
+
import { PromiseOrValue } from '../../../@types/types';
|
1
2
|
declare const provider: SettingsProvider;
|
2
3
|
export interface SettingsProvider {
|
3
4
|
get<T>(username: string, path: string): Promise<T | undefined>;
|
4
5
|
set<T>(username: string, path: string, value: T): Promise<void>;
|
5
6
|
remove(username: string, path: string): Promise<void>;
|
6
|
-
getAll<Data extends object>(username: string):
|
7
|
+
getAll<Data extends object>(username: string): PromiseOrValue<Data | undefined>;
|
7
8
|
create(username: string): Promise<void>;
|
8
9
|
}
|
9
10
|
export default provider;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_axios","_interopRequireDefault","require","_yt","obj","__esModule","default","api","method","username","path","data","axios","request","url","headers","JSON","stringify","then","response","error","Promise","reject","code","message","yt","codes","NODE_DOES_NOT_EXIST","undefined","provider","get","set","value","remove","getAll","create","_default","exports"],"sources":["settings-remote-provider.ts"],"sourcesContent":["import axios from 'axios';\n\n// @ts-expect-error\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\ntype Method = 'get' | 'put' | 'post' | 'delete';\n\nfunction api<T>(method: Method, username: string, path: string, data?: unknown) {\n return axios\n .request<T | undefined>({\n method: method,\n url: '/api/settings/' + username + path,\n headers: {\n 'content-type': 'application/json',\n },\n data: JSON.stringify(data),\n })\n .then((response) => {\n return response.data;\n })\n .catch((error) => {\n if (!error.response) {\n return Promise.reject({\n code: 0,\n message: 'Network error',\n });\n }\n\n const {data} = error.response;\n if (data.code === yt.codes.NODE_DOES_NOT_EXIST) {\n return undefined;\n }\n\n return Promise.reject(data);\n });\n}\n\nconst provider: SettingsProvider = {\n get<T>(username: string, path: string) {\n return api<T>('get', username, '/' + path);\n },\n set<T>(username: string, path: string, value: T) {\n if (value === undefined) {\n /**\n * data-ui/core uses body-parser which interprets empty body of request as empty object {},\n * i.e. setItem from src/server/controllers/settings.js will receive req.body === {} if value === undefined,\n * so we have to remove it explicitly\n */\n return provider.remove(username, path);\n }\n return api('put', username, '/' + path, {value});\n },\n remove(username: string, path: string) {\n return api('delete', username, '/' + path);\n },\n getAll<T>(username: string) {\n return api<T>('get', username, '/');\n },\n create(username: string) {\n return api('post', username, '/');\n },\n};\n\nexport interface SettingsProvider {\n get<T>(username: string, path: string): Promise<T | undefined>;\n set<T>(username: string, path: string, value: T): Promise<void>;\n remove(username: string, path: string): Promise<void>;\n getAll<Data extends object>(username: string):
|
1
|
+
{"version":3,"names":["_axios","_interopRequireDefault","require","_yt","obj","__esModule","default","api","method","username","path","data","axios","request","url","headers","JSON","stringify","then","response","error","Promise","reject","code","message","yt","codes","NODE_DOES_NOT_EXIST","undefined","provider","get","set","value","remove","getAll","create","_default","exports"],"sources":["settings-remote-provider.ts"],"sourcesContent":["import axios from 'axios';\n\n// @ts-expect-error\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport {PromiseOrValue} from '../../../@types/types';\n\ntype Method = 'get' | 'put' | 'post' | 'delete';\n\nfunction api<T>(method: Method, username: string, path: string, data?: unknown) {\n return axios\n .request<T | undefined>({\n method: method,\n url: '/api/settings/' + username + path,\n headers: {\n 'content-type': 'application/json',\n },\n data: JSON.stringify(data),\n })\n .then((response) => {\n return response.data;\n })\n .catch((error) => {\n if (!error.response) {\n return Promise.reject({\n code: 0,\n message: 'Network error',\n });\n }\n\n const {data} = error.response;\n if (data.code === yt.codes.NODE_DOES_NOT_EXIST) {\n return undefined;\n }\n\n return Promise.reject(data);\n });\n}\n\nconst provider: SettingsProvider = {\n get<T>(username: string, path: string) {\n return api<T>('get', username, '/' + path);\n },\n set<T>(username: string, path: string, value: T) {\n if (value === undefined) {\n /**\n * data-ui/core uses body-parser which interprets empty body of request as empty object {},\n * i.e. setItem from src/server/controllers/settings.js will receive req.body === {} if value === undefined,\n * so we have to remove it explicitly\n */\n return provider.remove(username, path);\n }\n return api('put', username, '/' + path, {value});\n },\n remove(username: string, path: string) {\n return api('delete', username, '/' + path);\n },\n getAll<T>(username: string) {\n return api<T>('get', username, '/');\n },\n create(username: string) {\n return api('post', username, '/');\n },\n};\n\nexport interface SettingsProvider {\n get<T>(username: string, path: string): Promise<T | undefined>;\n set<T>(username: string, path: string, value: T): Promise<void>;\n remove(username: string, path: string): Promise<void>;\n getAll<Data extends object>(username: string): PromiseOrValue<Data | undefined>;\n create(username: string): Promise<void>;\n}\n\nexport default provider;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,GAAA,GAAAF,sBAAA,CAAAC,OAAA;AAAoD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AADpD;;AAMA,SAASG,GAAGA,CAAIC,MAAc,EAAEC,QAAgB,EAAEC,IAAY,EAAEC,IAAc,EAAE;EAC5E,OAAOC,cAAK,CACPC,OAAO,CAAgB;IACpBL,MAAM,EAAEA,MAAM;IACdM,GAAG,EAAE,gBAAgB,GAAGL,QAAQ,GAAGC,IAAI;IACvCK,OAAO,EAAE;MACL,cAAc,EAAE;IACpB,CAAC;IACDJ,IAAI,EAAEK,IAAI,CAACC,SAAS,CAACN,IAAI;EAC7B,CAAC,CAAC,CACDO,IAAI,CAAC,UAACC,QAAQ,EAAK;IAChB,OAAOA,QAAQ,CAACR,IAAI;EACxB,CAAC,CAAC,SACI,CAAC,UAACS,KAAK,EAAK;IACd,IAAI,CAACA,KAAK,CAACD,QAAQ,EAAE;MACjB,OAAOE,OAAO,CAACC,MAAM,CAAC;QAClBC,IAAI,EAAE,CAAC;QACPC,OAAO,EAAE;MACb,CAAC,CAAC;IACN;IAEA,IAAOb,IAAI,GAAIS,KAAK,CAACD,QAAQ,CAAtBR,IAAI;IACX,IAAIA,IAAI,CAACY,IAAI,KAAKE,WAAE,CAACC,KAAK,CAACC,mBAAmB,EAAE;MAC5C,OAAOC,SAAS;IACpB;IAEA,OAAOP,OAAO,CAACC,MAAM,CAACX,IAAI,CAAC;EAC/B,CAAC,CAAC;AACV;AAEA,IAAMkB,QAA0B,GAAG;EAC/BC,GAAG,WAAAA,IAAIrB,QAAgB,EAAEC,IAAY,EAAE;IACnC,OAAOH,GAAG,CAAI,KAAK,EAAEE,QAAQ,EAAE,GAAG,GAAGC,IAAI,CAAC;EAC9C,CAAC;EACDqB,GAAG,WAAAA,IAAItB,QAAgB,EAAEC,IAAY,EAAEsB,KAAQ,EAAE;IAC7C,IAAIA,KAAK,KAAKJ,SAAS,EAAE;MACrB;AACZ;AACA;AACA;AACA;MACY,OAAOC,QAAQ,CAACI,MAAM,CAACxB,QAAQ,EAAEC,IAAI,CAAC;IAC1C;IACA,OAAOH,GAAG,CAAC,KAAK,EAAEE,QAAQ,EAAE,GAAG,GAAGC,IAAI,EAAE;MAACsB,KAAK,EAALA;IAAK,CAAC,CAAC;EACpD,CAAC;EACDC,MAAM,WAAAA,OAACxB,QAAgB,EAAEC,IAAY,EAAE;IACnC,OAAOH,GAAG,CAAC,QAAQ,EAAEE,QAAQ,EAAE,GAAG,GAAGC,IAAI,CAAC;EAC9C,CAAC;EACDwB,MAAM,WAAAA,OAAIzB,QAAgB,EAAE;IACxB,OAAOF,GAAG,CAAI,KAAK,EAAEE,QAAQ,EAAE,GAAG,CAAC;EACvC,CAAC;EACD0B,MAAM,WAAAA,OAAC1B,QAAgB,EAAE;IACrB,OAAOF,GAAG,CAAC,MAAM,EAAEE,QAAQ,EAAE,GAAG,CAAC;EACrC;AACJ,CAAC;AAAA,IAAA2B,QAAA,GAAAC,OAAA,CAAA/B,OAAA,GAUcuB,QAAQ"}
|
@@ -114,7 +114,7 @@ function reloadSetting(settingName, settingNS) {
|
|
114
114
|
function reloadUserSettings(login) {
|
115
115
|
return /*#__PURE__*/function () {
|
116
116
|
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(dispatch, getState) {
|
117
|
-
var state, provider, data;
|
117
|
+
var state, provider, allData, data;
|
118
118
|
return _regenerator.default.wrap(function _callee$(_context) {
|
119
119
|
while (1) switch (_context.prev = _context.next) {
|
120
120
|
case 0:
|
@@ -124,28 +124,39 @@ function reloadUserSettings(login) {
|
|
124
124
|
_context.next = 5;
|
125
125
|
return provider.create(login);
|
126
126
|
case 5:
|
127
|
-
|
128
|
-
|
127
|
+
allData = provider.getAll(login);
|
128
|
+
if (!(allData instanceof Promise)) {
|
129
|
+
_context.next = 12;
|
130
|
+
break;
|
131
|
+
}
|
132
|
+
_context.next = 9;
|
133
|
+
return (0, _utils.wrapApiPromiseByToaster)(allData, {
|
129
134
|
toasterName: 'reload-user-settings',
|
130
135
|
skipSuccessToast: true,
|
131
136
|
errorContent: 'Cannot load user settings'
|
132
137
|
});
|
133
|
-
case
|
134
|
-
|
138
|
+
case 9:
|
139
|
+
_context.t0 = _context.sent;
|
140
|
+
_context.next = 13;
|
141
|
+
break;
|
142
|
+
case 12:
|
143
|
+
_context.t0 = allData;
|
144
|
+
case 13:
|
145
|
+
data = _context.t0;
|
135
146
|
dispatch({
|
136
147
|
type: _index.UPDATE_SETTING_DATA,
|
137
148
|
data: data
|
138
149
|
});
|
139
|
-
_context.next =
|
150
|
+
_context.next = 19;
|
140
151
|
break;
|
141
|
-
case
|
142
|
-
_context.prev =
|
143
|
-
_context.
|
144
|
-
case
|
152
|
+
case 17:
|
153
|
+
_context.prev = 17;
|
154
|
+
_context.t1 = _context["catch"](0);
|
155
|
+
case 19:
|
145
156
|
case "end":
|
146
157
|
return _context.stop();
|
147
158
|
}
|
148
|
-
}, _callee, null, [[0,
|
159
|
+
}, _callee, null, [[0, 17]]);
|
149
160
|
}));
|
150
161
|
return function (_x, _x2) {
|
151
162
|
return _ref.apply(this, arguments);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["_settings","require","_index","_utils","_interopRequireDefault","obj","__esModule","default","logError","action","name","console","error","setSetting","settingName","settingNS","value","dispatch","path","getPath","setSettingByKey","getState","_getState","_getState$settings","settings","provider","data","login","global","previousValue","type","SET_SETTING_VALUE","set","showToasterError","concat","removeSetting","_getState2","_getState2$settings","UNSET_SETTING_VALUE","remove","reloadSetting","_getState3","get","then","reloadUserSettings","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","state","wrap","_callee$","_context","prev","next","create","
|
1
|
+
{"version":3,"names":["_settings","require","_index","_utils","_interopRequireDefault","obj","__esModule","default","logError","action","name","console","error","setSetting","settingName","settingNS","value","dispatch","path","getPath","setSettingByKey","getState","_getState","_getState$settings","settings","provider","data","login","global","previousValue","type","SET_SETTING_VALUE","set","showToasterError","concat","removeSetting","_getState2","_getState2$settings","UNSET_SETTING_VALUE","remove","reloadSetting","_getState3","get","then","reloadUserSettings","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","state","allData","wrap","_callee$","_context","prev","next","create","getAll","Promise","wrapApiPromiseByToaster","toasterName","skipSuccessToast","errorContent","t0","sent","UPDATE_SETTING_DATA","t1","stop","_x","_x2","apply","arguments"],"sources":["index.ts"],"sourcesContent":["import {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../../store/reducers';\nimport {SettingsAction} from '../../../store/reducers/settings';\nimport {SettingNS, getPath} from '../../../../shared/utils/settings';\nimport {SettingKey} from '../../../../shared/constants/settings-types';\n\nimport {\n SET_SETTING_VALUE,\n UNSET_SETTING_VALUE,\n UPDATE_SETTING_DATA,\n} from '../../../constants/index';\nimport {showToasterError, wrapApiPromiseByToaster} from '../../../utils/utils';\n\nfunction logError(action: string, name: string) {\n console.error('Failed to \"%s\" setting \"%s\", settings provider is disabled.', action, name);\n}\n\nexport type SettingsThunkAction<T = Promise<void>> = ThunkAction<\n T,\n RootState,\n unknown,\n SettingsAction\n>;\n\nexport function setSetting<T>(\n settingName: string,\n settingNS: SettingNS,\n value: T,\n): SettingsThunkAction {\n return (dispatch) => {\n const path = getPath(settingName, settingNS);\n return dispatch(setSettingByKey(path as SettingKey, value));\n };\n}\n\nexport function setSettingByKey<T>(path: SettingKey, value: T): SettingsThunkAction {\n return (dispatch, getState) => {\n const {\n settings: {provider, data},\n global: {login},\n } = getState();\n const previousValue = data[path];\n\n dispatch({\n type: SET_SETTING_VALUE,\n data: {path, value},\n });\n\n return provider.set(login, path, value).catch((error) => {\n if (error === 'disabled') {\n logError('set', path);\n return;\n }\n\n dispatch({\n type: SET_SETTING_VALUE,\n data: {path, value: previousValue},\n });\n\n showToasterError(`Set ${path}`, error);\n\n throw error;\n });\n };\n}\n\nexport function removeSetting(settingName: string, settingNS: SettingNS): SettingsThunkAction {\n const path = getPath(settingName, settingNS);\n\n return (dispatch, getState) => {\n const {\n settings: {provider, data},\n global: {login},\n } = getState();\n const previousValue = data[path];\n\n dispatch({\n type: UNSET_SETTING_VALUE,\n data: {path},\n });\n\n return provider.remove(login, path).catch((error) => {\n if (error === 'disabled') {\n logError('remove', settingName);\n return;\n }\n\n dispatch({\n type: SET_SETTING_VALUE,\n data: {path, value: previousValue},\n });\n\n showToasterError(`Remove ${path}`, error);\n\n throw error;\n });\n };\n}\n\nexport function reloadSetting(settingName: string, settingNS: SettingNS): SettingsThunkAction {\n const path = getPath(settingName, settingNS);\n\n return (dispatch, getState) => {\n const {\n settings: {provider},\n global: {login},\n } = getState();\n\n return provider\n .get(login, path)\n .then((value) => {\n dispatch({\n type: SET_SETTING_VALUE,\n data: {path, value},\n });\n })\n .catch((error) => {\n if (error === 'disabled') {\n logError('get', settingName);\n return;\n }\n\n showToasterError(`Reload ${path}`, error);\n\n throw error;\n });\n };\n}\n\nexport function reloadUserSettings(login: string): SettingsThunkAction {\n return async (dispatch, getState) => {\n try {\n const state = getState();\n const {provider} = state.settings;\n\n await provider.create(login);\n const allData = provider.getAll(login);\n const data: any =\n allData instanceof Promise\n ? await wrapApiPromiseByToaster(allData, {\n toasterName: 'reload-user-settings',\n skipSuccessToast: true,\n errorContent: 'Cannot load user settings',\n })\n : allData;\n dispatch({type: UPDATE_SETTING_DATA, data});\n } catch (e) {}\n };\n}\n"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["hammer","LOCAL_PATH","provider","get","username","path","settingPath","Promise","resolve","storage","read","set","value","write","remove","getAll","settings","settingSubpath","keys","forEach","entry","indexOf","substring","length","create"],"sources":["settings-local-provider.ts"],"sourcesContent":["import hammer from '../hammer';\nimport {SettingsProvider} from './settings-remote-provider';\n\nconst LOCAL_PATH = 'interface-settings';\n\nconst provider: SettingsProvider = {\n get(username: string, path: string) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.read(settingPath));\n },\n\n set<T>(username: string, path: string, value: T) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.write(settingPath, value));\n },\n\n remove(username: string, path: string) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.remove(settingPath));\n },\n\n getAll<T>(username: string) {\n const settings: any = {};\n const settingSubpath = LOCAL_PATH + '/' + username + '/';\n\n hammer.storage.keys().forEach(function (entry: string) {\n if (entry.indexOf(settingSubpath) === 0) {\n const path = entry.substring(settingSubpath.length);\n settings[path] = hammer.storage.read(entry);\n }\n });\n\n return
|
1
|
+
{"version":3,"names":["hammer","LOCAL_PATH","provider","get","username","path","settingPath","Promise","resolve","storage","read","set","value","write","remove","getAll","settings","settingSubpath","keys","forEach","entry","indexOf","substring","length","create"],"sources":["settings-local-provider.ts"],"sourcesContent":["import hammer from '../hammer';\nimport {SettingsProvider} from './settings-remote-provider';\n\nconst LOCAL_PATH = 'interface-settings';\n\nconst provider: SettingsProvider = {\n get(username: string, path: string) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.read(settingPath));\n },\n\n set<T>(username: string, path: string, value: T) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.write(settingPath, value));\n },\n\n remove(username: string, path: string) {\n const settingPath = LOCAL_PATH + '/' + username + '/' + path;\n return Promise.resolve(hammer.storage.remove(settingPath));\n },\n\n getAll<T>(username: string) {\n const settings: any = {};\n const settingSubpath = LOCAL_PATH + '/' + username + '/';\n\n hammer.storage.keys().forEach(function (entry: string) {\n if (entry.indexOf(settingSubpath) === 0) {\n const path = entry.substring(settingSubpath.length);\n settings[path] = hammer.storage.read(entry);\n }\n });\n\n return settings as T;\n },\n create() {\n return Promise.resolve();\n },\n};\n\nexport default provider;\n"],"mappings":"AAAA,OAAOA,MAAM,MAAM,WAAW;AAG9B,IAAMC,UAAU,GAAG,oBAAoB;AAEvC,IAAMC,QAA0B,GAAG;EAC/BC,GAAG,WAAAA,IAACC,QAAgB,EAAEC,IAAY,EAAE;IAChC,IAAMC,WAAW,GAAGL,UAAU,GAAG,GAAG,GAAGG,QAAQ,GAAG,GAAG,GAAGC,IAAI;IAC5D,OAAOE,OAAO,CAACC,OAAO,CAACR,MAAM,CAACS,OAAO,CAACC,IAAI,CAACJ,WAAW,CAAC,CAAC;EAC5D,CAAC;EAEDK,GAAG,WAAAA,IAAIP,QAAgB,EAAEC,IAAY,EAAEO,KAAQ,EAAE;IAC7C,IAAMN,WAAW,GAAGL,UAAU,GAAG,GAAG,GAAGG,QAAQ,GAAG,GAAG,GAAGC,IAAI;IAC5D,OAAOE,OAAO,CAACC,OAAO,CAACR,MAAM,CAACS,OAAO,CAACI,KAAK,CAACP,WAAW,EAAEM,KAAK,CAAC,CAAC;EACpE,CAAC;EAEDE,MAAM,WAAAA,OAACV,QAAgB,EAAEC,IAAY,EAAE;IACnC,IAAMC,WAAW,GAAGL,UAAU,GAAG,GAAG,GAAGG,QAAQ,GAAG,GAAG,GAAGC,IAAI;IAC5D,OAAOE,OAAO,CAACC,OAAO,CAACR,MAAM,CAACS,OAAO,CAACK,MAAM,CAACR,WAAW,CAAC,CAAC;EAC9D,CAAC;EAEDS,MAAM,WAAAA,OAAIX,QAAgB,EAAE;IACxB,IAAMY,QAAa,GAAG,CAAC,CAAC;IACxB,IAAMC,cAAc,GAAGhB,UAAU,GAAG,GAAG,GAAGG,QAAQ,GAAG,GAAG;IAExDJ,MAAM,CAACS,OAAO,CAACS,IAAI,CAAC,CAAC,CAACC,OAAO,CAAC,UAAUC,KAAa,EAAE;MACnD,IAAIA,KAAK,CAACC,OAAO,CAACJ,cAAc,CAAC,KAAK,CAAC,EAAE;QACrC,IAAMZ,IAAI,GAAGe,KAAK,CAACE,SAAS,CAACL,cAAc,CAACM,MAAM,CAAC;QACnDP,QAAQ,CAACX,IAAI,CAAC,GAAGL,MAAM,CAACS,OAAO,CAACC,IAAI,CAACU,KAAK,CAAC;MAC/C;IACJ,CAAC,CAAC;IAEF,OAAOJ,QAAQ;EACnB,CAAC;EACDQ,MAAM,WAAAA,OAAA,EAAG;IACL,OAAOjB,OAAO,CAACC,OAAO,CAAC,CAAC;EAC5B;AACJ,CAAC;AAED,eAAeN,QAAQ"}
|
@@ -1,9 +1,10 @@
|
|
1
|
+
import { PromiseOrValue } from '../../../@types/types';
|
1
2
|
declare const provider: SettingsProvider;
|
2
3
|
export interface SettingsProvider {
|
3
4
|
get<T>(username: string, path: string): Promise<T | undefined>;
|
4
5
|
set<T>(username: string, path: string, value: T): Promise<void>;
|
5
6
|
remove(username: string, path: string): Promise<void>;
|
6
|
-
getAll<Data extends object>(username: string):
|
7
|
+
getAll<Data extends object>(username: string): PromiseOrValue<Data | undefined>;
|
7
8
|
create(username: string): Promise<void>;
|
8
9
|
}
|
9
10
|
export default provider;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["axios","yt","api","method","username","path","data","request","url","headers","JSON","stringify","then","response","error","Promise","reject","code","message","codes","NODE_DOES_NOT_EXIST","undefined","provider","get","set","value","remove","getAll","create"],"sources":["settings-remote-provider.ts"],"sourcesContent":["import axios from 'axios';\n\n// @ts-expect-error\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\n\ntype Method = 'get' | 'put' | 'post' | 'delete';\n\nfunction api<T>(method: Method, username: string, path: string, data?: unknown) {\n return axios\n .request<T | undefined>({\n method: method,\n url: '/api/settings/' + username + path,\n headers: {\n 'content-type': 'application/json',\n },\n data: JSON.stringify(data),\n })\n .then((response) => {\n return response.data;\n })\n .catch((error) => {\n if (!error.response) {\n return Promise.reject({\n code: 0,\n message: 'Network error',\n });\n }\n\n const {data} = error.response;\n if (data.code === yt.codes.NODE_DOES_NOT_EXIST) {\n return undefined;\n }\n\n return Promise.reject(data);\n });\n}\n\nconst provider: SettingsProvider = {\n get<T>(username: string, path: string) {\n return api<T>('get', username, '/' + path);\n },\n set<T>(username: string, path: string, value: T) {\n if (value === undefined) {\n /**\n * data-ui/core uses body-parser which interprets empty body of request as empty object {},\n * i.e. setItem from src/server/controllers/settings.js will receive req.body === {} if value === undefined,\n * so we have to remove it explicitly\n */\n return provider.remove(username, path);\n }\n return api('put', username, '/' + path, {value});\n },\n remove(username: string, path: string) {\n return api('delete', username, '/' + path);\n },\n getAll<T>(username: string) {\n return api<T>('get', username, '/');\n },\n create(username: string) {\n return api('post', username, '/');\n },\n};\n\nexport interface SettingsProvider {\n get<T>(username: string, path: string): Promise<T | undefined>;\n set<T>(username: string, path: string, value: T): Promise<void>;\n remove(username: string, path: string): Promise<void>;\n getAll<Data extends object>(username: string):
|
1
|
+
{"version":3,"names":["axios","yt","api","method","username","path","data","request","url","headers","JSON","stringify","then","response","error","Promise","reject","code","message","codes","NODE_DOES_NOT_EXIST","undefined","provider","get","set","value","remove","getAll","create"],"sources":["settings-remote-provider.ts"],"sourcesContent":["import axios from 'axios';\n\n// @ts-expect-error\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport {PromiseOrValue} from '../../../@types/types';\n\ntype Method = 'get' | 'put' | 'post' | 'delete';\n\nfunction api<T>(method: Method, username: string, path: string, data?: unknown) {\n return axios\n .request<T | undefined>({\n method: method,\n url: '/api/settings/' + username + path,\n headers: {\n 'content-type': 'application/json',\n },\n data: JSON.stringify(data),\n })\n .then((response) => {\n return response.data;\n })\n .catch((error) => {\n if (!error.response) {\n return Promise.reject({\n code: 0,\n message: 'Network error',\n });\n }\n\n const {data} = error.response;\n if (data.code === yt.codes.NODE_DOES_NOT_EXIST) {\n return undefined;\n }\n\n return Promise.reject(data);\n });\n}\n\nconst provider: SettingsProvider = {\n get<T>(username: string, path: string) {\n return api<T>('get', username, '/' + path);\n },\n set<T>(username: string, path: string, value: T) {\n if (value === undefined) {\n /**\n * data-ui/core uses body-parser which interprets empty body of request as empty object {},\n * i.e. setItem from src/server/controllers/settings.js will receive req.body === {} if value === undefined,\n * so we have to remove it explicitly\n */\n return provider.remove(username, path);\n }\n return api('put', username, '/' + path, {value});\n },\n remove(username: string, path: string) {\n return api('delete', username, '/' + path);\n },\n getAll<T>(username: string) {\n return api<T>('get', username, '/');\n },\n create(username: string) {\n return api('post', username, '/');\n },\n};\n\nexport interface SettingsProvider {\n get<T>(username: string, path: string): Promise<T | undefined>;\n set<T>(username: string, path: string, value: T): Promise<void>;\n remove(username: string, path: string): Promise<void>;\n getAll<Data extends object>(username: string): PromiseOrValue<Data | undefined>;\n create(username: string): Promise<void>;\n}\n\nexport default provider;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;;AAEzB;AACA,OAAOC,EAAE,MAAM,qCAAqC;AAKpD,SAASC,GAAGA,CAAIC,MAAc,EAAEC,QAAgB,EAAEC,IAAY,EAAEC,IAAc,EAAE;EAC5E,OAAON,KAAK,CACPO,OAAO,CAAgB;IACpBJ,MAAM,EAAEA,MAAM;IACdK,GAAG,EAAE,gBAAgB,GAAGJ,QAAQ,GAAGC,IAAI;IACvCI,OAAO,EAAE;MACL,cAAc,EAAE;IACpB,CAAC;IACDH,IAAI,EAAEI,IAAI,CAACC,SAAS,CAACL,IAAI;EAC7B,CAAC,CAAC,CACDM,IAAI,CAAC,UAACC,QAAQ,EAAK;IAChB,OAAOA,QAAQ,CAACP,IAAI;EACxB,CAAC,CAAC,SACI,CAAC,UAACQ,KAAK,EAAK;IACd,IAAI,CAACA,KAAK,CAACD,QAAQ,EAAE;MACjB,OAAOE,OAAO,CAACC,MAAM,CAAC;QAClBC,IAAI,EAAE,CAAC;QACPC,OAAO,EAAE;MACb,CAAC,CAAC;IACN;IAEA,IAAOZ,IAAI,GAAIQ,KAAK,CAACD,QAAQ,CAAtBP,IAAI;IACX,IAAIA,IAAI,CAACW,IAAI,KAAKhB,EAAE,CAACkB,KAAK,CAACC,mBAAmB,EAAE;MAC5C,OAAOC,SAAS;IACpB;IAEA,OAAON,OAAO,CAACC,MAAM,CAACV,IAAI,CAAC;EAC/B,CAAC,CAAC;AACV;AAEA,IAAMgB,QAA0B,GAAG;EAC/BC,GAAG,WAAAA,IAAInB,QAAgB,EAAEC,IAAY,EAAE;IACnC,OAAOH,GAAG,CAAI,KAAK,EAAEE,QAAQ,EAAE,GAAG,GAAGC,IAAI,CAAC;EAC9C,CAAC;EACDmB,GAAG,WAAAA,IAAIpB,QAAgB,EAAEC,IAAY,EAAEoB,KAAQ,EAAE;IAC7C,IAAIA,KAAK,KAAKJ,SAAS,EAAE;MACrB;AACZ;AACA;AACA;AACA;MACY,OAAOC,QAAQ,CAACI,MAAM,CAACtB,QAAQ,EAAEC,IAAI,CAAC;IAC1C;IACA,OAAOH,GAAG,CAAC,KAAK,EAAEE,QAAQ,EAAE,GAAG,GAAGC,IAAI,EAAE;MAACoB,KAAK,EAALA;IAAK,CAAC,CAAC;EACpD,CAAC;EACDC,MAAM,WAAAA,OAACtB,QAAgB,EAAEC,IAAY,EAAE;IACnC,OAAOH,GAAG,CAAC,QAAQ,EAAEE,QAAQ,EAAE,GAAG,GAAGC,IAAI,CAAC;EAC9C,CAAC;EACDsB,MAAM,WAAAA,OAAIvB,QAAgB,EAAE;IACxB,OAAOF,GAAG,CAAI,KAAK,EAAEE,QAAQ,EAAE,GAAG,CAAC;EACvC,CAAC;EACDwB,MAAM,WAAAA,OAACxB,QAAgB,EAAE;IACrB,OAAOF,GAAG,CAAC,MAAM,EAAEE,QAAQ,EAAE,GAAG,CAAC;EACrC;AACJ,CAAC;AAUD,eAAekB,QAAQ"}
|
@@ -103,7 +103,7 @@ export function reloadSetting(settingName, settingNS) {
|
|
103
103
|
export function reloadUserSettings(login) {
|
104
104
|
return /*#__PURE__*/function () {
|
105
105
|
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(dispatch, getState) {
|
106
|
-
var state, provider, data;
|
106
|
+
var state, provider, allData, data;
|
107
107
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
108
108
|
while (1) switch (_context.prev = _context.next) {
|
109
109
|
case 0:
|
@@ -113,28 +113,39 @@ export function reloadUserSettings(login) {
|
|
113
113
|
_context.next = 5;
|
114
114
|
return provider.create(login);
|
115
115
|
case 5:
|
116
|
-
|
117
|
-
|
116
|
+
allData = provider.getAll(login);
|
117
|
+
if (!(allData instanceof Promise)) {
|
118
|
+
_context.next = 12;
|
119
|
+
break;
|
120
|
+
}
|
121
|
+
_context.next = 9;
|
122
|
+
return wrapApiPromiseByToaster(allData, {
|
118
123
|
toasterName: 'reload-user-settings',
|
119
124
|
skipSuccessToast: true,
|
120
125
|
errorContent: 'Cannot load user settings'
|
121
126
|
});
|
122
|
-
case
|
123
|
-
|
127
|
+
case 9:
|
128
|
+
_context.t0 = _context.sent;
|
129
|
+
_context.next = 13;
|
130
|
+
break;
|
131
|
+
case 12:
|
132
|
+
_context.t0 = allData;
|
133
|
+
case 13:
|
134
|
+
data = _context.t0;
|
124
135
|
dispatch({
|
125
136
|
type: UPDATE_SETTING_DATA,
|
126
137
|
data: data
|
127
138
|
});
|
128
|
-
_context.next =
|
139
|
+
_context.next = 19;
|
129
140
|
break;
|
130
|
-
case
|
131
|
-
_context.prev =
|
132
|
-
_context.
|
133
|
-
case
|
141
|
+
case 17:
|
142
|
+
_context.prev = 17;
|
143
|
+
_context.t1 = _context["catch"](0);
|
144
|
+
case 19:
|
134
145
|
case "end":
|
135
146
|
return _context.stop();
|
136
147
|
}
|
137
|
-
}, _callee, null, [[0,
|
148
|
+
}, _callee, null, [[0, 17]]);
|
138
149
|
}));
|
139
150
|
return function (_x, _x2) {
|
140
151
|
return _ref.apply(this, arguments);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["getPath","SET_SETTING_VALUE","UNSET_SETTING_VALUE","UPDATE_SETTING_DATA","showToasterError","wrapApiPromiseByToaster","logError","action","name","console","error","setSetting","settingName","settingNS","value","dispatch","path","setSettingByKey","getState","_getState","_getState$settings","settings","provider","data","login","global","previousValue","type","set","concat","removeSetting","_getState2","_getState2$settings","remove","reloadSetting","_getState3","get","then","reloadUserSettings","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","state","wrap","_callee$","_context","prev","next","create","getAll","toasterName","skipSuccessToast","errorContent","sent","
|
1
|
+
{"version":3,"names":["getPath","SET_SETTING_VALUE","UNSET_SETTING_VALUE","UPDATE_SETTING_DATA","showToasterError","wrapApiPromiseByToaster","logError","action","name","console","error","setSetting","settingName","settingNS","value","dispatch","path","setSettingByKey","getState","_getState","_getState$settings","settings","provider","data","login","global","previousValue","type","set","concat","removeSetting","_getState2","_getState2$settings","remove","reloadSetting","_getState3","get","then","reloadUserSettings","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","state","allData","wrap","_callee$","_context","prev","next","create","getAll","Promise","toasterName","skipSuccessToast","errorContent","t0","sent","t1","stop","_x","_x2","apply","arguments"],"sources":["index.ts"],"sourcesContent":["import {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../../store/reducers';\nimport {SettingsAction} from '../../../store/reducers/settings';\nimport {SettingNS, getPath} from '../../../../shared/utils/settings';\nimport {SettingKey} from '../../../../shared/constants/settings-types';\n\nimport {\n SET_SETTING_VALUE,\n UNSET_SETTING_VALUE,\n UPDATE_SETTING_DATA,\n} from '../../../constants/index';\nimport {showToasterError, wrapApiPromiseByToaster} from '../../../utils/utils';\n\nfunction logError(action: string, name: string) {\n console.error('Failed to \"%s\" setting \"%s\", settings provider is disabled.', action, name);\n}\n\nexport type SettingsThunkAction<T = Promise<void>> = ThunkAction<\n T,\n RootState,\n unknown,\n SettingsAction\n>;\n\nexport function setSetting<T>(\n settingName: string,\n settingNS: SettingNS,\n value: T,\n): SettingsThunkAction {\n return (dispatch) => {\n const path = getPath(settingName, settingNS);\n return dispatch(setSettingByKey(path as SettingKey, value));\n };\n}\n\nexport function setSettingByKey<T>(path: SettingKey, value: T): SettingsThunkAction {\n return (dispatch, getState) => {\n const {\n settings: {provider, data},\n global: {login},\n } = getState();\n const previousValue = data[path];\n\n dispatch({\n type: SET_SETTING_VALUE,\n data: {path, value},\n });\n\n return provider.set(login, path, value).catch((error) => {\n if (error === 'disabled') {\n logError('set', path);\n return;\n }\n\n dispatch({\n type: SET_SETTING_VALUE,\n data: {path, value: previousValue},\n });\n\n showToasterError(`Set ${path}`, error);\n\n throw error;\n });\n };\n}\n\nexport function removeSetting(settingName: string, settingNS: SettingNS): SettingsThunkAction {\n const path = getPath(settingName, settingNS);\n\n return (dispatch, getState) => {\n const {\n settings: {provider, data},\n global: {login},\n } = getState();\n const previousValue = data[path];\n\n dispatch({\n type: UNSET_SETTING_VALUE,\n data: {path},\n });\n\n return provider.remove(login, path).catch((error) => {\n if (error === 'disabled') {\n logError('remove', settingName);\n return;\n }\n\n dispatch({\n type: SET_SETTING_VALUE,\n data: {path, value: previousValue},\n });\n\n showToasterError(`Remove ${path}`, error);\n\n throw error;\n });\n };\n}\n\nexport function reloadSetting(settingName: string, settingNS: SettingNS): SettingsThunkAction {\n const path = getPath(settingName, settingNS);\n\n return (dispatch, getState) => {\n const {\n settings: {provider},\n global: {login},\n } = getState();\n\n return provider\n .get(login, path)\n .then((value) => {\n dispatch({\n type: SET_SETTING_VALUE,\n data: {path, value},\n });\n })\n .catch((error) => {\n if (error === 'disabled') {\n logError('get', settingName);\n return;\n }\n\n showToasterError(`Reload ${path}`, error);\n\n throw error;\n });\n };\n}\n\nexport function reloadUserSettings(login: string): SettingsThunkAction {\n return async (dispatch, getState) => {\n try {\n const state = getState();\n const {provider} = state.settings;\n\n await provider.create(login);\n const allData = provider.getAll(login);\n const data: any =\n allData instanceof Promise\n ? await wrapApiPromiseByToaster(allData, {\n toasterName: 'reload-user-settings',\n skipSuccessToast: true,\n errorContent: 'Cannot load user settings',\n })\n : allData;\n dispatch({type: UPDATE_SETTING_DATA, data});\n } catch (e) {}\n };\n}\n"],"mappings":"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"}
|
@@ -48,7 +48,7 @@
|
|
48
48
|
"js": [
|
49
49
|
"js/runtime.ac9a4336.js",
|
50
50
|
"js/vendors.75563cec.js",
|
51
|
-
"js/main.
|
51
|
+
"js/main.768ba513.js"
|
52
52
|
],
|
53
53
|
"css": [
|
54
54
|
"css/main.675cb8c4.css"
|
@@ -98,8 +98,8 @@
|
|
98
98
|
"js/955.e1c8cf19.chunk.js.map": "js/955.e1c8cf19.chunk.js.map",
|
99
99
|
"js/979.0e3142c0.chunk.js": "js/979.0e3142c0.chunk.js",
|
100
100
|
"js/979.0e3142c0.chunk.js.map": "js/979.0e3142c0.chunk.js.map",
|
101
|
-
"js/main.
|
102
|
-
"js/main.
|
101
|
+
"js/main.768ba513.js.LICENSE.txt": "js/main.768ba513.js.LICENSE.txt",
|
102
|
+
"js/main.768ba513.js.map": "js/main.768ba513.js.map",
|
103
103
|
"js/runtime.ac9a4336.js.map": "js/runtime.ac9a4336.js.map",
|
104
104
|
"js/vendors.75563cec.js.LICENSE.txt": "js/vendors.75563cec.js.LICENSE.txt",
|
105
105
|
"js/vendors.75563cec.js.map": "js/vendors.75563cec.js.map",
|
@@ -109,7 +109,7 @@
|
|
109
109
|
"json.5239aa2e.worker.js.LICENSE.txt": "json.5239aa2e.worker.js.LICENSE.txt",
|
110
110
|
"json.5239aa2e.worker.js.map": "json.5239aa2e.worker.js.map",
|
111
111
|
"main.css": "css/main.675cb8c4.css",
|
112
|
-
"main.js": "js/main.
|
112
|
+
"main.js": "js/main.768ba513.js",
|
113
113
|
"runtime.js": "js/runtime.ac9a4336.js",
|
114
114
|
"vendors.js": "js/vendors.75563cec.js",
|
115
115
|
"vis-network.js": "js/vis-network.b367d390.chunk.js"
|