@abtnode/blocklet-services 1.6.23 → 1.6.26

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/build/asset-manifest.json +26 -26
  2. package/build/index.html +1 -1
  3. package/build/{precache-manifest.b61da416864625d7da6840b710c5fd05.js → precache-manifest.f3419eb785f255da7655fa425fc775a1.js} +35 -35
  4. package/build/service-worker.js +1 -1
  5. package/build/static/css/{2.73d52aac.chunk.css → 2.cc9dc85c.chunk.css} +2 -2
  6. package/build/static/css/{2.73d52aac.chunk.css.map → 2.cc9dc85c.chunk.css.map} +1 -1
  7. package/build/static/js/2.90523f87.chunk.js +3 -0
  8. package/build/static/js/{2.adca7e30.chunk.js.LICENSE.txt → 2.90523f87.chunk.js.LICENSE.txt} +0 -0
  9. package/build/static/js/2.90523f87.chunk.js.map +1 -0
  10. package/build/static/js/3.e6540184.chunk.js +3 -0
  11. package/build/static/js/{3.9cf8cde1.chunk.js.LICENSE.txt → 3.e6540184.chunk.js.LICENSE.txt} +0 -0
  12. package/build/static/js/3.e6540184.chunk.js.map +1 -0
  13. package/build/static/js/{4.3bcd2384.chunk.js → 4.4410aa8a.chunk.js} +2 -2
  14. package/build/static/js/{4.3bcd2384.chunk.js.map → 4.4410aa8a.chunk.js.map} +1 -1
  15. package/build/static/js/{5.a0b39d30.chunk.js → 5.967448ae.chunk.js} +2 -2
  16. package/build/static/js/{5.a0b39d30.chunk.js.map → 5.967448ae.chunk.js.map} +1 -1
  17. package/build/static/js/{6.91e31d64.chunk.js → 6.1de827ed.chunk.js} +2 -2
  18. package/build/static/js/{6.91e31d64.chunk.js.map → 6.1de827ed.chunk.js.map} +1 -1
  19. package/build/static/js/{7.aa6a9bc1.chunk.js → 7.cb386b54.chunk.js} +2 -2
  20. package/build/static/js/{7.aa6a9bc1.chunk.js.map → 7.cb386b54.chunk.js.map} +1 -1
  21. package/build/static/js/main.c51a8d5b.chunk.js +2 -0
  22. package/build/static/js/main.c51a8d5b.chunk.js.map +1 -0
  23. package/build/static/js/{runtime-main.8d9f8ef7.js → runtime-main.24dfe4a3.js} +2 -2
  24. package/build/static/js/{runtime-main.8d9f8ef7.js.map → runtime-main.24dfe4a3.js.map} +1 -1
  25. package/build/static/media/ubuntu-mono-all-400-normal.50636a55.woff +0 -0
  26. package/build/static/media/ubuntu-mono-cyrillic-400-normal.d8183030.woff2 +0 -0
  27. package/build/static/media/ubuntu-mono-cyrillic-ext-400-normal.918b4f73.woff2 +0 -0
  28. package/build/static/media/ubuntu-mono-greek-400-normal.5334a11e.woff2 +0 -0
  29. package/build/static/media/ubuntu-mono-greek-ext-400-normal.df389c99.woff2 +0 -0
  30. package/build/static/media/ubuntu-mono-latin-400-normal.8d1b9298.woff2 +0 -0
  31. package/build/static/media/ubuntu-mono-latin-ext-400-normal.84fa8bc1.woff2 +0 -0
  32. package/package.json +16 -15
  33. package/build/static/js/2.adca7e30.chunk.js +0 -3
  34. package/build/static/js/2.adca7e30.chunk.js.map +0 -1
  35. package/build/static/js/3.9cf8cde1.chunk.js +0 -3
  36. package/build/static/js/3.9cf8cde1.chunk.js.map +0 -1
  37. package/build/static/js/main.0fef8e40.chunk.js +0 -2
  38. package/build/static/js/main.0fef8e40.chunk.js.map +0 -1
  39. package/build/static/media/ubuntu-mono-all-400-normal.e39678a8.woff +0 -0
  40. package/build/static/media/ubuntu-mono-cyrillic-400-normal.e09900e7.woff2 +0 -0
  41. package/build/static/media/ubuntu-mono-cyrillic-ext-400-normal.762d0b06.woff2 +0 -0
  42. package/build/static/media/ubuntu-mono-greek-400-normal.81c98658.woff2 +0 -0
  43. package/build/static/media/ubuntu-mono-greek-ext-400-normal.1af17851.woff2 +0 -0
  44. package/build/static/media/ubuntu-mono-latin-400-normal.469ee478.woff2 +0 -0
  45. package/build/static/media/ubuntu-mono-latin-ext-400-normal.e28ff028.woff2 +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["util/index.js","pages/login.js"],"names":["UserLogin","useContext","SessionContext","api","session","LocaleContext","t","locale","extraParams","inviteId","URL","window","location","href","searchParams","get","loading","user","did","Div","className","action","checkFn","checkTimeout","socketUrl","webWalletUrl","getWebWalletUrl","onSuccess","result","path","env","groupPathPrefix","pathPrefix","Cookie","set","loginToken","getCookieOptions","expireInDays","returnDomain","refresh","setTimeout","redirect","decodeURIComponent","reload","messages","title","scan","confirm","success","textAlign","fontSize","to","WELLKNOWN_AUTH_PATH_PREFIX","style","color","styled","div"],"mappings":"gJAAA,gE,oQCoBe,SAASA,IACtB,MAAyBC,qBAAWC,KAA5BC,EAAR,EAAQA,IAAKC,EAAb,EAAaA,QACb,EAAsBH,qBAAWI,iBAAzBC,EAAR,EAAQA,EAAGC,EAAX,EAAWA,OA8BLC,EAAc,GAEdC,EADmB,IAAIC,IAAIC,OAAOC,SAASC,MAAzCC,aACsBC,IAAI,YAKlC,OAJIN,IACFD,EAAYC,SAAWA,GAGrBL,EAAQY,QAER,kBAAC,IAAD,KACE,kBAAC,IAAD,OAKFZ,EAAQa,KAER,kBAAC,IAAD,KACE,kBAAC,IAAD,KACGX,EAAE,iBADL,IACwBF,EAAQa,KAAKC,MAOzC,kBAACC,EAAD,KACE,yBAAKC,UAAU,mBACb,kBAAC,IAAD,CACEA,UAAU,UACVC,OAAQZ,EAAW,SAAW,QAC9Ba,QAASnB,EAAIY,IACbQ,aAAc,IACdC,UAAWrB,EAAIqB,UACfC,aAAcC,cACdC,UA/DQ,SAACC,GACf,IAAIC,EAAO,IACPlB,OAAOmB,MACTD,EAAOlB,OAAOmB,IAAIC,iBAAmBpB,OAAOmB,IAAIE,YAAc,KAGhEC,IAAOC,IACL,cACAN,EAAOO,WACPC,2BAAiB,CACfC,aAAc,EACdR,OACAS,cAAc,KAIlBlC,EAAQmC,UACRC,YAAW,WACT,IACMC,EADmB,IAAI/B,IAAIC,OAAOC,SAASC,MAAzCC,aACsBC,IAAI,YAC9B0B,EACF9B,OAAOC,SAAW8B,mBAAmBD,GAErC9B,OAAOC,SAAS+B,WAEjB,KAuCGpC,OAAQA,EACRqC,SAAU,CACRC,MAAOvC,EAAE,sBACTwC,KAAMxC,EAAE,qBACRyC,QAASzC,EAAE,wBACX0C,QAAS1C,EAAE,yBAEbE,YAAaA,KAGjB,kBAAC,IAAD,CAAKY,UAAU,gBAAgB6B,UAAU,SAASC,SAAU,IAC1D,kBAAC,OAAD,CAAMC,GAAE,UAAKC,6BAAL,kBAAiDC,MAAO,CAAEC,MAAO,YACtEhD,EAAE,yBAOb,IAAMa,EAAMoC,UAAOC,IAAV","file":"static/js/6.91e31d64.chunk.js","sourcesContent":["// eslint-disable-next-line import/prefer-default-export\nexport { getWebWalletUrl } from '@arcblock/did-connect/lib/utils';\n","/* eslint-disable react/jsx-one-expression-per-line */\nimport React, { useContext } from 'react';\nimport styled from 'styled-components';\nimport Cookie from 'js-cookie';\nimport { Link } from 'react-router-dom';\nimport { getCookieOptions } from '@arcblock/ux/lib/Util';\n\nimport Typography from '@material-ui/core/Typography';\nimport Spinner from '@arcblock/ux/lib/Spinner';\nimport Box from '@material-ui/core/Box';\nimport Center from '@arcblock/ux/lib/Center';\n\nimport DidConnect from '@arcblock/did-connect/lib/Connect';\nimport { LocaleContext } from '@arcblock/ux/lib/Locale/context';\n\nimport { WELLKNOWN_AUTH_PATH_PREFIX } from '@abtnode/constant';\n\nimport { SessionContext } from '../contexts/session';\nimport { getWebWalletUrl } from '../util';\n\nexport default function UserLogin() {\n const { api, session } = useContext(SessionContext);\n const { t, locale } = useContext(LocaleContext);\n\n const onLogin = (result) => {\n let path = '/';\n if (window.env) {\n path = window.env.groupPathPrefix || window.env.pathPrefix || '/';\n }\n\n Cookie.set(\n 'login_token',\n result.loginToken,\n getCookieOptions({\n expireInDays: 1,\n path,\n returnDomain: false,\n })\n );\n\n session.refresh();\n setTimeout(() => {\n const { searchParams } = new URL(window.location.href);\n const redirect = searchParams.get('redirect');\n if (redirect) {\n window.location = decodeURIComponent(redirect);\n } else {\n window.location.reload();\n }\n }, 50);\n };\n\n const extraParams = {};\n const { searchParams } = new URL(window.location.href);\n const inviteId = searchParams.get('inviteId');\n if (inviteId) {\n extraParams.inviteId = inviteId;\n }\n\n if (session.loading) {\n return (\n <Center>\n <Spinner />\n </Center>\n );\n }\n\n if (session.user) {\n return (\n <Center>\n <Typography>\n {t('login.already')} {session.user.did}\n </Typography>\n </Center>\n );\n }\n\n return (\n <Div>\n <div className=\"connect-wrapper\">\n <DidConnect\n className=\"connect\"\n action={inviteId ? 'invite' : 'login'}\n checkFn={api.get}\n checkTimeout={10 * 60 * 1000}\n socketUrl={api.socketUrl}\n webWalletUrl={getWebWalletUrl()}\n onSuccess={onLogin}\n locale={locale}\n messages={{\n title: t('login.dialog.title'),\n scan: t('login.dialog.scan'),\n confirm: t('login.dialog.confirm'),\n success: t('login.dialog.success'),\n }}\n extraParams={extraParams}\n />\n </div>\n <Box className=\"lost-passport\" textAlign=\"center\" fontSize={12}>\n <Link to={`${WELLKNOWN_AUTH_PATH_PREFIX}/lost-passport`} style={{ color: '#4598FA' }}>\n {t('lostPassport.title')}\n </Link>\n </Box>\n </Div>\n );\n}\n\nconst Div = styled.div`\n box-sizing: border-box;\n width: 100%;\n height: 100vh;\n position: relative;\n display: flex;\n flex-direction: column;\n .connect-wrapper {\n flex: 1;\n }\n .connect {\n background: #fafafa;\n }\n .lost-passport {\n flex: 0 0 auto;\n padding-bottom: 48px;\n }\n`;\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["util/index.js","pages/login.js"],"names":["UserLogin","useContext","SessionContext","api","session","LocaleContext","t","locale","extraParams","inviteId","URL","window","location","href","searchParams","get","loading","user","did","Div","className","action","checkFn","checkTimeout","socketUrl","webWalletUrl","getWebWalletUrl","onSuccess","result","path","env","groupPathPrefix","pathPrefix","Cookie","set","loginToken","getCookieOptions","expireInDays","returnDomain","refresh","setTimeout","redirect","decodeURIComponent","reload","messages","title","scan","confirm","success","textAlign","fontSize","to","WELLKNOWN_AUTH_PATH_PREFIX","style","color","styled","div"],"mappings":"gJAAA,gE,oQCoBe,SAASA,IACtB,MAAyBC,qBAAWC,KAA5BC,EAAR,EAAQA,IAAKC,EAAb,EAAaA,QACb,EAAsBH,qBAAWI,iBAAzBC,EAAR,EAAQA,EAAGC,EAAX,EAAWA,OA8BLC,EAAc,GAEdC,EADmB,IAAIC,IAAIC,OAAOC,SAASC,MAAzCC,aACsBC,IAAI,YAKlC,OAJIN,IACFD,EAAYC,SAAWA,GAGrBL,EAAQY,QAER,kBAAC,IAAD,KACE,kBAAC,IAAD,OAKFZ,EAAQa,KAER,kBAAC,IAAD,KACE,kBAAC,IAAD,KACGX,EAAE,iBADL,IACwBF,EAAQa,KAAKC,MAOzC,kBAACC,EAAD,KACE,yBAAKC,UAAU,mBACb,kBAAC,IAAD,CACEA,UAAU,UACVC,OAAQZ,EAAW,SAAW,QAC9Ba,QAASnB,EAAIY,IACbQ,aAAc,IACdC,UAAWrB,EAAIqB,UACfC,aAAcC,cACdC,UA/DQ,SAACC,GACf,IAAIC,EAAO,IACPlB,OAAOmB,MACTD,EAAOlB,OAAOmB,IAAIC,iBAAmBpB,OAAOmB,IAAIE,YAAc,KAGhEC,IAAOC,IACL,cACAN,EAAOO,WACPC,2BAAiB,CACfC,aAAc,EACdR,OACAS,cAAc,KAIlBlC,EAAQmC,UACRC,YAAW,WACT,IACMC,EADmB,IAAI/B,IAAIC,OAAOC,SAASC,MAAzCC,aACsBC,IAAI,YAC9B0B,EACF9B,OAAOC,SAAW8B,mBAAmBD,GAErC9B,OAAOC,SAAS+B,WAEjB,KAuCGpC,OAAQA,EACRqC,SAAU,CACRC,MAAOvC,EAAE,sBACTwC,KAAMxC,EAAE,qBACRyC,QAASzC,EAAE,wBACX0C,QAAS1C,EAAE,yBAEbE,YAAaA,KAGjB,kBAAC,IAAD,CAAKY,UAAU,gBAAgB6B,UAAU,SAASC,SAAU,IAC1D,kBAAC,OAAD,CAAMC,GAAE,UAAKC,6BAAL,kBAAiDC,MAAO,CAAEC,MAAO,YACtEhD,EAAE,yBAOb,IAAMa,EAAMoC,UAAOC,IAAV","file":"static/js/6.1de827ed.chunk.js","sourcesContent":["// eslint-disable-next-line import/prefer-default-export\nexport { getWebWalletUrl } from '@arcblock/did-connect/lib/utils';\n","/* eslint-disable react/jsx-one-expression-per-line */\nimport React, { useContext } from 'react';\nimport styled from 'styled-components';\nimport Cookie from 'js-cookie';\nimport { Link } from 'react-router-dom';\nimport { getCookieOptions } from '@arcblock/ux/lib/Util';\n\nimport Typography from '@material-ui/core/Typography';\nimport Spinner from '@arcblock/ux/lib/Spinner';\nimport Box from '@material-ui/core/Box';\nimport Center from '@arcblock/ux/lib/Center';\n\nimport DidConnect from '@arcblock/did-connect/lib/Connect';\nimport { LocaleContext } from '@arcblock/ux/lib/Locale/context';\n\nimport { WELLKNOWN_AUTH_PATH_PREFIX } from '@abtnode/constant';\n\nimport { SessionContext } from '../contexts/session';\nimport { getWebWalletUrl } from '../util';\n\nexport default function UserLogin() {\n const { api, session } = useContext(SessionContext);\n const { t, locale } = useContext(LocaleContext);\n\n const onLogin = (result) => {\n let path = '/';\n if (window.env) {\n path = window.env.groupPathPrefix || window.env.pathPrefix || '/';\n }\n\n Cookie.set(\n 'login_token',\n result.loginToken,\n getCookieOptions({\n expireInDays: 1,\n path,\n returnDomain: false,\n })\n );\n\n session.refresh();\n setTimeout(() => {\n const { searchParams } = new URL(window.location.href);\n const redirect = searchParams.get('redirect');\n if (redirect) {\n window.location = decodeURIComponent(redirect);\n } else {\n window.location.reload();\n }\n }, 50);\n };\n\n const extraParams = {};\n const { searchParams } = new URL(window.location.href);\n const inviteId = searchParams.get('inviteId');\n if (inviteId) {\n extraParams.inviteId = inviteId;\n }\n\n if (session.loading) {\n return (\n <Center>\n <Spinner />\n </Center>\n );\n }\n\n if (session.user) {\n return (\n <Center>\n <Typography>\n {t('login.already')} {session.user.did}\n </Typography>\n </Center>\n );\n }\n\n return (\n <Div>\n <div className=\"connect-wrapper\">\n <DidConnect\n className=\"connect\"\n action={inviteId ? 'invite' : 'login'}\n checkFn={api.get}\n checkTimeout={10 * 60 * 1000}\n socketUrl={api.socketUrl}\n webWalletUrl={getWebWalletUrl()}\n onSuccess={onLogin}\n locale={locale}\n messages={{\n title: t('login.dialog.title'),\n scan: t('login.dialog.scan'),\n confirm: t('login.dialog.confirm'),\n success: t('login.dialog.success'),\n }}\n extraParams={extraParams}\n />\n </div>\n <Box className=\"lost-passport\" textAlign=\"center\" fontSize={12}>\n <Link to={`${WELLKNOWN_AUTH_PATH_PREFIX}/lost-passport`} style={{ color: '#4598FA' }}>\n {t('lostPassport.title')}\n </Link>\n </Box>\n </Div>\n );\n}\n\nconst Div = styled.div`\n box-sizing: border-box;\n width: 100%;\n height: 100vh;\n position: relative;\n display: flex;\n flex-direction: column;\n .connect-wrapper {\n flex: 1;\n }\n .connect {\n background: #fafafa;\n }\n .lost-passport {\n flex: 0 0 auto;\n padding-bottom: 48px;\n }\n`;\n"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- (this["webpackJsonp@abtnode/blocklet-services"]=this["webpackJsonp@abtnode/blocklet-services"]||[]).push([[7],{740:function(n,e,t){"use strict";t.r(e),t.d(e,"default",(function(){return r}));var i,o=t(174),a=t(0),c=t.n(a),s=t(25),l=t(303);function r(){return c.a.createElement(p,null,c.a.createElement(l.a,{component:"h2"},"User List should exist here"))}var p=s.default.main(i||(i=Object(o.a)(["\n .page-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .page-content {\n margin-top: 16px;\n }\n\n .section {\n display: flex;\n flex-direction: column;\n margin-bottom: 64px;\n\n .section__header {\n font-weight: bold;\n margin-bottom: 24px;\n }\n }\n\n .section-flex {\n flex-direction: row;\n }\n\n .section-item {\n flex: 1;\n }\n\n .section-item-desc {\n display: flex;\n margin-top: 15px;\n }\n"])))}}]);
2
- //# sourceMappingURL=7.aa6a9bc1.chunk.js.map
1
+ (this["webpackJsonp@abtnode/blocklet-services"]=this["webpackJsonp@abtnode/blocklet-services"]||[]).push([[7],{741:function(n,e,t){"use strict";t.r(e),t.d(e,"default",(function(){return r}));var i,o=t(174),a=t(0),c=t.n(a),s=t(25),l=t(304);function r(){return c.a.createElement(p,null,c.a.createElement(l.a,{component:"h2"},"User List should exist here"))}var p=s.default.main(i||(i=Object(o.a)(["\n .page-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .page-content {\n margin-top: 16px;\n }\n\n .section {\n display: flex;\n flex-direction: column;\n margin-bottom: 64px;\n\n .section__header {\n font-weight: bold;\n margin-bottom: 24px;\n }\n }\n\n .section-flex {\n flex-direction: row;\n }\n\n .section-item {\n flex: 1;\n }\n\n .section-item-desc {\n display: flex;\n margin-top: 15px;\n }\n"])))}}]);
2
+ //# sourceMappingURL=7.cb386b54.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["pages/users.js"],"names":["UsersList","Main","component","styled","main"],"mappings":"+OAMe,SAASA,IACtB,OACE,kBAACC,EAAD,KACE,kBAAC,IAAD,CAAYC,UAAU,MAAtB,gCAKN,IAAMD,EAAOE,UAAOC,KAAV","file":"static/js/7.aa6a9bc1.chunk.js","sourcesContent":["/* eslint-disable react/jsx-one-expression-per-line */\nimport React from 'react';\nimport styled from 'styled-components';\n\nimport Typography from '@material-ui/core/Typography';\n\nexport default function UsersList() {\n return (\n <Main>\n <Typography component=\"h2\">User List should exist here</Typography>\n </Main>\n );\n}\n\nconst Main = styled.main`\n .page-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .page-content {\n margin-top: 16px;\n }\n\n .section {\n display: flex;\n flex-direction: column;\n margin-bottom: 64px;\n\n .section__header {\n font-weight: bold;\n margin-bottom: 24px;\n }\n }\n\n .section-flex {\n flex-direction: row;\n }\n\n .section-item {\n flex: 1;\n }\n\n .section-item-desc {\n display: flex;\n margin-top: 15px;\n }\n`;\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["pages/users.js"],"names":["UsersList","Main","component","styled","main"],"mappings":"+OAMe,SAASA,IACtB,OACE,kBAACC,EAAD,KACE,kBAAC,IAAD,CAAYC,UAAU,MAAtB,gCAKN,IAAMD,EAAOE,UAAOC,KAAV","file":"static/js/7.cb386b54.chunk.js","sourcesContent":["/* eslint-disable react/jsx-one-expression-per-line */\nimport React from 'react';\nimport styled from 'styled-components';\n\nimport Typography from '@material-ui/core/Typography';\n\nexport default function UsersList() {\n return (\n <Main>\n <Typography component=\"h2\">User List should exist here</Typography>\n </Main>\n );\n}\n\nconst Main = styled.main`\n .page-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n .page-content {\n margin-top: 16px;\n }\n\n .section {\n display: flex;\n flex-direction: column;\n margin-bottom: 64px;\n\n .section__header {\n font-weight: bold;\n margin-bottom: 24px;\n }\n }\n\n .section-flex {\n flex-direction: row;\n }\n\n .section-item {\n flex: 1;\n }\n\n .section-item-desc {\n display: flex;\n margin-top: 15px;\n }\n`;\n"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ (this["webpackJsonp@abtnode/blocklet-services"]=this["webpackJsonp@abtnode/blocklet-services"]||[]).push([[0],{159:function(e,t,n){var a,o=n(173),r=Object.freeze({AUTH_SERVICE:"@abtnode/auth-service"}),i=Object.freeze({AUTH_SERVICE:"/.service/".concat(r.AUTH_SERVICE)}),s=Object.freeze({OWNER:"owner",ADMIN:"admin",MEMBER:"member",GUEST:"guest"}),c={roles:Object.freeze([{name:s.OWNER,title:"Owner",description:"Has full administrative access to the Blocklet Server",passport:!0},{name:s.ADMIN,title:"Admin",description:"Has full permissions to manage blocklet and Blocklet Server such as install/remove/start/stop blocklet, manage blocklet URL mapping and certificates, manage blocklet team, manage node integrations and access keys, upgrade node to a new version",passport:!0},{name:s.MEMBER,title:"Member",description:"Has permissions to manage blocklets, such as install/remove/start/stop blocklet, manage blocklet URL mapping and certificates",passport:!0},{name:s.GUEST,title:"Guest",description:"Has all read permissions on Blocklet Server",passport:!0},{name:"ci",title:"CI",description:"Deploy blocklet to Blocklet Server",passport:!0,ci:!0},{name:"certificate",title:"Certificate",description:"Manage https certificates for blocklets on the Blocklet Server",passport:!0,ci:!0},{name:r.AUTH_SERVICE,title:"Auth Service"}]),permissions:Object.freeze([{name:"query_node",description:"View node data, include dashboard and node settings, log stream for both Blocklet Server and blocklets"},{name:"mutate_node",description:"Change node settings, upgrade node to a new version"},{name:"query_session",description:"Get data from a long running session"},{name:"mutate_session",description:"Start/update/end a long running session"},{name:"query_accessKey",description:"View access keys for Blocklet Server"},{name:"mutate_accessKey",description:"Manage access keys for Blocklet Server, such as create/update/delete"},{name:"query_team",description:"View team data(members/roles/permissions) for Blocklet Server and blocklets"},{name:"mutate_team",description:"Manage team data(members/roles/permissions) for Blocklet Server and blocklets"},{name:"query_blocklet",description:"View store and installed blocklets, including blocklet runtime configuration, domains and urls"},{name:"mutate_blocklet",description:"Perform state changing actions on blocklets, such as install/upgrade/config/start/stop/remove"},{name:"query_router",description:"View sites, URL mapping and certificates in service gateway"},{name:"mutate_router",description:"Manage sites, URL mapping and certificates in service gateway"},{name:"query_certificate",description:"View certificates in service gateway"},{name:"mutate_certificate",description:"Manage certificates in service gateway"},{name:"query_notification",description:"View notifications"},{name:"mutate_notification",description:"Manage notifications, such as mark notifications as read"},{name:"query_webhook",description:"View integrations"},{name:"mutate_webhook",description:"Manage integrations"}]),grants:Object.freeze((a={},o(a,s.GUEST,["query_blocklet","query_router","query_webhook","query_notification","query_team","query_accessKey","query_node","query_session"]),o(a,s.MEMBER,[s.GUEST,"mutate_blocklet","mutate_router","mutate_notification","mutate_session"]),o(a,s.ADMIN,[s.MEMBER,"mutate_team","mutate_webhook","mutate_accessKey","mutate_node","mutate_certificate"]),o(a,s.OWNER,[s.ADMIN]),o(a,"@abtnode/auth-service",["query_team","mutate_team"]),o(a,"ci",["query_blocklet","mutate_blocklet"]),o(a,"certificate",["query_certificate","mutate_certificate"]),a))};e.exports=Object.freeze({NODE_MODES:Object.freeze({PRODUCTION:"production",DEBUG:"debug",MAINTENANCE:"maintenance",IMMUTABLE:"immutable"}),DEFAULT_DESCRIPTION:"Web Interface to manage your Blocklet Server",NODE_UPGRADE_PROGRESS:Object.freeze({SETUP:"setup",INSTALLING:"installing",RESTARTING:"restarting",CLEANUP:"cleanup",COMPLETE:"complete",ROLLBACK:"rollback"}),VC_TYPE_BLOCKLET_PURCHASE:"BlockletPurchaseCredential",VC_TYPE_NODE_PASSPORT:"ABTNodePassport",VC_TYPE_GENERAL_PASSPORT:"NFTPassport",NFT_TYPE_SERVER_OWNERSHIP:"BlockletServerOwnershipNFT",NODE_PACKAGE_NAME:"@abtnode/cli",NODE_COMMAND_NAME:"abtnode",PROCESS_NAME_DAEMON:"abt-node-daemon",PROCESS_NAME_PROXY:"abt-node-db-hub",PROCESS_NAME_UPDATER:"abt-node-updater",PROCESS_NAME_SERVICE:"abt-node-service",PROCESS_NAME_ROUTER:"abt-node-router",PROCESS_NAME_LOG_ROTATE:"abt-node-log-rotate",PROCESS_NAME_EVENT_HUB:"abt-node-event-hub",NODE_REGISTER_URL:"https://install.arcblock.io/",WEB_WALLET_URL:"https://web.abtwallet.io",BLOCKLET_STORE_URL:"https://store.blocklet.dev",BLOCKLET_STORE_URL_DEV:"https://dev.store.blocklet.dev",BLOCKLET_STORE_API_PREFIX:"/api",BLOCKLET_STORE_META_PATH:"/api/store.json",DEFAULT_DID_REGISTRY:"https://registry.abtnet.io",DEFAULT_DID_DOMAIN:"did.abtnet.io",DEFAULT_GATEWAY_DOMAIN:"did.gw.abtnet.io",DEFAULT_IP_DNS_DOMAIN_SUFFIX:"ip.abtnet.io",DEFAULT_IP_DOMAIN:"*.ip.abtnet.io",DEFAULT_WILDCARD_CERT_HOST:"https://releases.arcblock.io/",DEFAULT_CERTIFICATE_EMAIL:"certs@arcblock.io",CONFIG_FILENAME:"config.yml",CONFIG_FILENAME_OLD:"abtnode.yml",CONFIG_FOLDER_NAME:".blocklet-server",CONFIG_FOLDER_NAME_OLD:".abtnode",EXPORTED_FOLDER_NAME:"exported_blocklet_server",StatusCode:Object.freeze({ok:0,blocklet_not_found:1,blocklet_not_purchased:2,forbidden:403,internal:500,timeout:504}),IP:new RegExp("-(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\-(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}"),DOMAIN_FOR_IP_SITE:"",DOMAIN_FOR_IP_SITE_REGEXP:"~^\\d+.\\d+.\\d+.\\d+$",DOMAIN_FOR_DEFAULT_SITE:"*",DOMAIN_FOR_INTERNAL_SITE:"127.0.0.1",NAME_FOR_WELLKNOWN_SITE:"wellknown",WELLKNOWN_PATH_PREFIX:"/.well-known",WELLKNOWN_ACME_CHALLENGE_PREFIX:"/.well-known/acme-challenge",WELLKNOWN_DID_RESOLVER_PREFIX:"/.well-known/did.json",WELLKNOWN_AUTH_PATH_PREFIX:"/.well-known/auth",WELLKNOWN_PING_PREFIX:"/.well-known/ping",SLOT_FOR_IP_DNS_SITE:"888-888-888-888",DEFAULT_ADMIN_PATH:"/admin",DEFAULT_SERVICE_PATH:"/.abtnode/service",DEFAULT_HTTP_PORT:80,DEFAULT_HTTPS_PORT:443,MAX_UPLOAD_FILE_SIZE:500,DEFAULT_DAEMON_PORT:8089,BLOCKLET_PROXY_PATH_PREFIX:"/.blocklet/proxy",BLOCKLET_SITE_GROUP_SUFFIX:".blocklet-domain-group",DAY_IN_MS:864e5,DAEMON_MAX_MEM_LIMIT_IN_MB:600,PROXY_MAX_MEM_LIMIT_IN_MB:300,BLOCKLET_MAX_MEM_LIMIT_IN_MB:300,CERTIFICATE_EXPIRES_OFFSET:6912e5,CERTIFICATE_EXPIRES_WARNING_OFFSET:6048e5,ROUTING_RULE_TYPES:Object.freeze({NONE:"none",DAEMON:"daemon",SERVICE:"service",BLOCKLET:"blocklet",REDIRECT:"redirect",GENERAL_PROXY:"general_proxy",DIRECT_RESPONSE:"direct_response"}),ROLES:s,RBAC_CONFIG:c,genPermissionName:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"access";return"".concat(t,"_").concat(e.replace("_","-"))},PASSPORT_STATUS:{VALID:"valid",REVOKED:"revoked"},NODE_SERVICES:r,NODE_SERVICES_PREFIX:i,DISK_ALERT_THRESHOLD_PERCENT:80})},166:function(e,t,n){"use strict";n.d(t,"b",(function(){return s})),n.d(t,"a",(function(){return c}));n(0);var a=n(289),o=n.n(a),r="/";window.env&&(r=window.env.groupPathPrefix||window.env.pathPrefix||"/");var i=o()("login_token","cookie",{returnDomain:!1,path:r}),s=i.SessionProvider,c=i.SessionContext;i.SessionConsumer,i.withSession},288:function(e,t,n){var a=n(350),o=n(351);e.exports={translations:{zh:o,en:a}}},320:function(e,t,n){e.exports=n(449)},350:function(e,t,n){var a=n(165);e.exports=a({login:{loginTo:"Login",description:"You must login with DID Wallet to access {name}",already:"You are logged in as",dialog:{title:"Login Required",scan:"Connect your DID Wallet to provide user profile",confirm:"Confirm on your DID Wallet",success:"You are logged in successfully"}},lostPassport:{title:"Lost Passport?"}})},351:function(e,t,n){var a=n(165);e.exports=a({login:{loginTo:"\u767b\u5f55",description:"\u9700\u8981\u4f7f\u7528 DID Wallet \u767b\u5f55\u624d\u53ef\u4ee5\u8bbf\u95ee {name}",already:"\u4f60\u5df2\u7ecf\u767b\u5f55",dialog:{title:"\u8bf7\u767b\u5f55",scan:"\u7528\u60a8\u7684 DID \u94b1\u5305\u626b\u63cf\u4e0b\u9762\u7684\u4e8c\u7ef4\u7801",confirm:"\u5728\u60a8\u7684 DID \u94b1\u5305\u4e0a\u786e\u8ba4",success:"\u767b\u5f55\u6210\u529f"}},lostPassport:{title:"\u627e\u56de\u901a\u884c\u8bc1\uff1f"}})},449:function(e,t,n){"use strict";n.r(t);var a,o=n(0),r=n.n(o),i=n(12),s=n.n(i),c=n(19),l=n(168),E=n(94),_=n.n(E),d=n(126),u=n.n(d),m=n(159),p=n(174),O=n(25),T=n(472),R=n(473),I=n(164),b=n(287),A=n(288),S=n(166),N=Object(O.createGlobalStyle)(a||(a=Object(p.a)(["\n a {\n color: ",";\n text-decoration: none;\n }\n\n a:hover {\n text-decoration: none;\n }\n"])),(function(e){return e.theme.palette.success.main})),L=Object(o.lazy)((function(){return n.e(7).then(n.bind(null,741))})),P=Object(o.lazy)((function(){return n.e(6).then(n.bind(null,742))})),D=Object(o.lazy)((function(){return n.e(5).then(n.bind(null,743))})),f=Object(o.lazy)((function(){return Promise.all([n.e(3),n.e(4)]).then(n.bind(null,744))})),g=function(){var e=r.a.createElement(u.a,null,r.a.createElement(_.a,null));return r.a.createElement(o.Suspense,{fallback:e},r.a.createElement(c.g,null,r.a.createElement(c.d,{exact:!0,path:"".concat(m.WELLKNOWN_AUTH_PATH_PREFIX,"/lost-passport"),component:f}),r.a.createElement(c.d,{exact:!0,path:"".concat(m.WELLKNOWN_AUTH_PATH_PREFIX,"/issue-passport"),component:D}),r.a.createElement(c.d,{exact:!0,path:"/users",component:L}),r.a.createElement(c.d,{exact:!0,path:"/",component:P}),r.a.createElement(c.c,{to:"/"})))},M=Object(c.o)((function(e){var t=e.children,n=Object(b.create)({typography:{fontSize:14,button:{textTransform:"none"}}});return r.a.createElement(T.a,{theme:n},r.a.createElement(O.ThemeProvider,{theme:n},r.a.createElement(I.LocaleProvider,{translations:A.translations},r.a.createElement(S.b,{serviceHost:window.env&&window.env.apiPrefix?window.env.apiPrefix:"",autoLogin:!1},r.a.createElement(R.a,null),r.a.createElement(N,null),r.a.createElement("div",{className:"wrapper"},t)))))})),k=function(){var e=window.env&&window.env.pathPrefix?window.env.pathPrefix:"/";return r.a.createElement(l.BrowserRouter,{basename:e},r.a.createElement(M,null,r.a.createElement(g,null)))};s.a.render(r.a.createElement(k,null),document.getElementById("root"))}},[[320,1,2]],[3,4,5,6,7]]);
2
+ //# sourceMappingURL=main.c51a8d5b.chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../constant/index.js","contexts/session.js","locales/index.js","locales/en.js","locales/zh.js","components/root.js","app.js","index.js"],"names":["NODE_SERVICES","Object","freeze","AUTH_SERVICE","NODE_SERVICES_PREFIX","ROLES","OWNER","ADMIN","MEMBER","GUEST","RBAC_CONFIG","roles","name","title","description","passport","ci","permissions","grants","module","exports","NODE_MODES","PRODUCTION","DEBUG","MAINTENANCE","IMMUTABLE","DEFAULT_DESCRIPTION","NODE_UPGRADE_PROGRESS","SETUP","INSTALLING","RESTARTING","CLEANUP","COMPLETE","ROLLBACK","VC_TYPE_BLOCKLET_PURCHASE","VC_TYPE_NODE_PASSPORT","VC_TYPE_GENERAL_PASSPORT","NFT_TYPE_SERVER_OWNERSHIP","NODE_PACKAGE_NAME","NODE_COMMAND_NAME","PROCESS_NAME_DAEMON","PROCESS_NAME_PROXY","PROCESS_NAME_UPDATER","PROCESS_NAME_SERVICE","PROCESS_NAME_ROUTER","PROCESS_NAME_LOG_ROTATE","PROCESS_NAME_EVENT_HUB","NODE_REGISTER_URL","WEB_WALLET_URL","BLOCKLET_STORE_URL","BLOCKLET_STORE_URL_DEV","BLOCKLET_STORE_API_PREFIX","BLOCKLET_STORE_META_PATH","DEFAULT_DID_REGISTRY","DEFAULT_DID_DOMAIN","DEFAULT_GATEWAY_DOMAIN","DEFAULT_IP_DNS_DOMAIN_SUFFIX","DEFAULT_IP_DOMAIN","DEFAULT_WILDCARD_CERT_HOST","DEFAULT_CERTIFICATE_EMAIL","CONFIG_FILENAME","CONFIG_FILENAME_OLD","CONFIG_FOLDER_NAME","CONFIG_FOLDER_NAME_OLD","EXPORTED_FOLDER_NAME","StatusCode","ok","blocklet_not_found","blocklet_not_purchased","forbidden","internal","timeout","IP","RegExp","DOMAIN_FOR_IP_SITE","DOMAIN_FOR_IP_SITE_REGEXP","DOMAIN_FOR_DEFAULT_SITE","DOMAIN_FOR_INTERNAL_SITE","NAME_FOR_WELLKNOWN_SITE","WELLKNOWN_PATH_PREFIX","WELLKNOWN_ACME_CHALLENGE_PREFIX","WELLKNOWN_DID_RESOLVER_PREFIX","WELLKNOWN_AUTH_PATH_PREFIX","WELLKNOWN_PING_PREFIX","SLOT_FOR_IP_DNS_SITE","DEFAULT_ADMIN_PATH","DEFAULT_SERVICE_PATH","DEFAULT_HTTP_PORT","DEFAULT_HTTPS_PORT","MAX_UPLOAD_FILE_SIZE","DEFAULT_DAEMON_PORT","BLOCKLET_PROXY_PATH_PREFIX","BLOCKLET_SITE_GROUP_SUFFIX","DAY_IN_MS","DAEMON_MAX_MEM_LIMIT_IN_MB","PROXY_MAX_MEM_LIMIT_IN_MB","BLOCKLET_MAX_MEM_LIMIT_IN_MB","CERTIFICATE_EXPIRES_OFFSET","CERTIFICATE_EXPIRES_WARNING_OFFSET","ROUTING_RULE_TYPES","NONE","DAEMON","SERVICE","BLOCKLET","REDIRECT","GENERAL_PROXY","DIRECT_RESPONSE","genPermissionName","resource","action","replace","PASSPORT_STATUS","VALID","REVOKED","DISK_ALERT_THRESHOLD_PERCENT","path","window","env","groupPathPrefix","pathPrefix","createSessionContext","returnDomain","SessionProvider","SessionContext","SessionConsumer","withSession","en","require","zh","translations","flat","login","loginTo","already","dialog","scan","confirm","success","lostPassport","GlobalStyle","createGlobalStyle","props","theme","palette","main","UserList","lazy","UserLogin","IssuePassport","LostPassport","App","fallback","exact","component","to","WithRouter","withRouter","children","create","typography","fontSize","button","textTransform","serviceHost","apiPrefix","autoLogin","CssBaseline","className","prefix","basename","ReactDOM","render","document","getElementById"],"mappings":"kJAAMA,EAAgBC,OAAOC,OAAO,CAClCC,aAAc,0BAGVC,EAAuBH,OAAOC,OAAO,CACzCC,aAAc,aAAF,OAAeH,EAAcG,gBAGrCE,EAAQJ,OAAOC,OAAO,CAC1BI,MAAO,QACPC,MAAO,QACPC,OAAQ,SACRC,MAAO,UAGHC,EAAc,CAClBC,MAAOV,OAAOC,OAAO,CACnB,CACEU,KAAMP,EAAMC,MACZO,MAAO,QACPC,YAAa,wDACbC,UAAU,GAEZ,CACEH,KAAMP,EAAME,MACZM,MAAO,QACPC,YACE,sPACFC,UAAU,GAEZ,CACEH,KAAMP,EAAMG,OACZK,MAAO,SACPC,YACE,gIACFC,UAAU,GAEZ,CACEH,KAAMP,EAAMI,MACZI,MAAO,QACPC,YAAa,8CACbC,UAAU,GAEZ,CACEH,KAAM,KACNC,MAAO,KACPC,YAAa,qCACbC,UAAU,EACVC,IAAI,GAEN,CACEJ,KAAM,cACNC,MAAO,cACPC,YAAa,iEACbC,UAAU,EACVC,IAAI,GAEN,CACEJ,KAAMZ,EAAcG,aACpBU,MAAO,kBAGXI,YAAahB,OAAOC,OAAO,CACzB,CACEU,KAAM,aACNE,YACE,0GAEJ,CACEF,KAAM,cACNE,YAAa,uDAEf,CACEF,KAAM,gBACNE,YAAa,wCAEf,CACEF,KAAM,iBACNE,YAAa,2CAEf,CACEF,KAAM,kBACNE,YAAa,wCAEf,CACEF,KAAM,mBACNE,YAAa,wEAEf,CACEF,KAAM,aACNE,YAAa,+EAEf,CACEF,KAAM,cACNE,YAAa,iFAEf,CACEF,KAAM,iBACNE,YAAa,kGAEf,CACEF,KAAM,kBACNE,YAAa,iGAEf,CACEF,KAAM,eACNE,YAAa,+DAEf,CACEF,KAAM,gBACNE,YAAa,iEAEf,CACEF,KAAM,oBACNE,YAAa,wCAEf,CACEF,KAAM,qBACNE,YAAa,0CAEf,CACEF,KAAM,qBACNE,YAAa,sBAEf,CACEF,KAAM,sBACNE,YAAa,4DAEf,CACEF,KAAM,gBACNE,YAAa,qBAEf,CACEF,KAAM,iBACNE,YAAa,yBAGjBI,OAAQjB,OAAOC,QAAP,SACLG,EAAMI,MAAQ,CACb,iBACA,eACA,gBACA,qBACA,aACA,kBACA,aACA,kBATI,IAWLJ,EAAMG,OAAS,CAACH,EAAMI,MAAO,kBAAmB,gBAAiB,sBAAuB,mBAXnF,IAYLJ,EAAME,MAAQ,CACbF,EAAMG,OACN,cACA,iBACA,mBACA,cACA,uBAlBI,IAoBLH,EAAMC,MAAQ,CAACD,EAAME,QApBhB,IAqBN,wBAAyB,CAAC,aAAc,gBArBlC,SAsBF,CAAC,iBAAkB,oBAtBjB,kBAuBO,CAAC,oBAAqB,uBAvB7B,KA6BVY,EAAOC,QAAUnB,OAAOC,OAAO,CAE7BmB,WAAYpB,OAAOC,OAAO,CACxBoB,WAAY,aACZC,MAAO,QACPC,YAAa,cACbC,UAAW,cAGbC,oBAAqB,+CAErBC,sBAAuB1B,OAAOC,OAAO,CACnC0B,MAAO,QACPC,WAAY,aACZC,WAAY,aACZC,QAAS,UACTC,SAAU,WACVC,SAAU,aAGZC,0BAA2B,6BAC3BC,sBAAuB,kBACvBC,yBAA0B,cAE1BC,0BAA2B,6BAE3BC,kBAAmB,eACnBC,kBAAmB,UAEnBC,oBAAqB,kBACrBC,mBAAoB,kBACpBC,qBAAsB,mBACtBC,qBAAsB,mBACtBC,oBAAqB,kBACrBC,wBAAyB,sBACzBC,uBAAwB,qBAExBC,kBAAmB,+BACnBC,eAAgB,2BAChBC,mBAAoB,6BACpBC,uBAAwB,iCACxBC,0BAA2B,OAC3BC,yBAA0B,kBAE1BC,qBAAsB,6BACtBC,mBAAoB,gBACpBC,uBAAwB,mBACxBC,6BAA8B,eAC9BC,kBAAmB,iBACnBC,2BAA4B,gCAE5BC,0BAA2B,oBAE3BC,gBAAiB,aACjBC,oBAAqB,cACrBC,mBAAoB,mBACpBC,uBAAwB,WACxBC,qBAAsB,2BAEtBC,WAAYhE,OAAOC,OAAO,CACxBgE,GAAI,EAEJC,mBAAoB,EACpBC,uBAAwB,EAExBC,UAAW,IACXC,SAAU,IACVC,QAAS,MAIXC,GAAI,IAAIC,OAAO,mGACfC,mBAAoB,GACpBC,0BAA2B,yBAC3BC,wBAAyB,IACzBC,yBAA0B,YAC1BC,wBAAyB,YACzBC,sBAAuB,eACvBC,gCAAiC,8BACjCC,8BAA+B,wBAC/BC,2BAA4B,oBAC5BC,sBAAuB,oBACvBC,qBAAsB,kBAEtBC,mBAAoB,SACpBC,qBAAsB,oBACtBC,kBAAmB,GACnBC,mBAAoB,IACpBC,qBAAsB,IACtBC,oBAAqB,KAErBC,2BAA4B,mBAC5BC,2BAA4B,yBAG5BC,UAjGgB,MAkGhBC,2BAA4B,IAC5BC,0BAA2B,IAC3BC,6BAA8B,IAC9BC,2BAA4B,OAC5BC,mCAAoC,OACpCC,mBAAoBlG,OAAOC,OAAO,CAChCkG,KAAM,OACNC,OAAQ,SACRC,QAAS,UACTC,SAAU,WACVC,SAAU,WACVC,cAAe,gBACfC,gBAAiB,oBAInBrG,QACAK,cACAiG,kBAAmB,SAACC,GAAD,IAAWC,EAAX,uDAAoB,SAApB,gBAAoCA,EAApC,YAA8CD,EAASE,QAAQ,IAAK,OACvFC,gBAAiB,CACfC,MAAO,QACPC,QAAS,WAIXjH,gBACAI,uBAEA8G,6BAA8B,M,iCClShC,+FAIIC,EAAO,IACPC,OAAOC,MACTF,EAAOC,OAAOC,IAAIC,iBAAmBF,OAAOC,IAAIE,YAAc,KAGhE,MAA0EC,IACxE,cACA,SACA,CACEC,cAAc,EACdN,SALIO,EAAR,EAAQA,gBAAiBC,EAAzB,EAAyBA,eAAzB,EAAyCC,gBAAzC,EAA0DC,a,oBCT1D,IAAMC,EAAKC,EAAQ,KACbC,EAAKD,EAAQ,KAEnB5G,EAAOC,QAAU,CAAE6G,aAAc,CAAED,KAAIF,Q,0DCHvC,IAAMI,EAAOH,EAAQ,KAErB5G,EAAOC,QAAU8G,EAAK,CACpBC,MAAO,CACLC,QAAS,QACTtH,YAAa,kDACbuH,QAAS,uBACTC,OAAQ,CACNzH,MAAO,iBACP0H,KAAM,kDACNC,QAAS,6BACTC,QAAS,mCAGbC,aAAc,CACZ7H,MAAO,qB,oBCfX,IAAMqH,EAAOH,EAAQ,KAErB5G,EAAOC,QAAU8G,EAAK,CACpBC,MAAO,CACLC,QAAS,eACTtH,YAAa,wFACbuH,QAAS,iCACTC,OAAQ,CACNzH,MAAO,qBACP0H,KAAM,sFACNC,QAAS,wDACTC,QAAS,6BAGbC,aAAc,CACZ7H,MAAO,2C,mNCHL8H,EAAcC,4BAAH,qIAEJ,SAACC,GAAD,OAAWA,EAAMC,MAAMC,QAAQN,QAAQO,QCH9CC,EAAWC,gBAAK,kBAAM,iCACtBC,EAAYD,gBAAK,kBAAM,iCACvBE,EAAgBF,gBAAK,kBAAM,iCAC3BG,EAAeH,gBAAK,kBAAM,uDAEnBI,EAAM,WACjB,IAAMC,EACJ,kBAAC,IAAD,KACE,kBAAC,IAAD,OAIJ,OACE,kBAAC,WAAD,CAAUA,SAAUA,GAClB,kBAAC,IAAD,KACE,kBAAC,IAAD,CAAOC,OAAK,EAACrC,KAAI,UAAKjC,6BAAL,kBAAiDuE,UAAWJ,IAC7E,kBAAC,IAAD,CAAOG,OAAK,EAACrC,KAAI,UAAKjC,6BAAL,mBAAkDuE,UAAWL,IAC9E,kBAAC,IAAD,CAAOI,OAAK,EAACrC,KAAK,SAASsC,UAAWR,IACtC,kBAAC,IAAD,CAAOO,OAAK,EAACrC,KAAK,IAAIsC,UAAWN,IACjC,kBAAC,IAAD,CAAUO,GAAG,SAMfC,EAAaC,aDZJ,YAAmB,IAAhBC,EAAe,EAAfA,SACVf,EAAQgB,iBAAO,CACnBC,WAAY,CACVC,SAAU,GACVC,OAAQ,CACNC,cAAe,WAKrB,OACE,kBAAC,IAAD,CAAkBpB,MAAOA,GACvB,kBAAC,gBAAD,CAAeA,MAAOA,GACpB,kBAAC,iBAAD,CAAgBb,aAAcA,gBAC5B,kBAAC,IAAD,CACEkC,YAAa/C,OAAOC,KAAOD,OAAOC,IAAI+C,UAAYhD,OAAOC,IAAI+C,UAAY,GACzEC,WAAW,GACX,kBAACC,EAAA,EAAD,MACA,kBAAC3B,EAAD,MACA,yBAAK4B,UAAU,WAAWV,UCLvB,aACb,IAAMW,EAASpD,OAAOC,KAAOD,OAAOC,IAAIE,WAAaH,OAAOC,IAAIE,WAAa,IAC7E,OACE,kBAAC,gBAAD,CAAQkD,SAAUD,GAChB,kBAACb,EAAD,KACE,kBAAC,EAAD,SCtCRe,IAASC,OAAO,kBAAC,EAAD,MAASC,SAASC,eAAe,W","file":"static/js/main.c51a8d5b.chunk.js","sourcesContent":["const NODE_SERVICES = Object.freeze({\n AUTH_SERVICE: '@abtnode/auth-service',\n});\n\nconst NODE_SERVICES_PREFIX = Object.freeze({\n AUTH_SERVICE: `/.service/${NODE_SERVICES.AUTH_SERVICE}`,\n});\n\nconst ROLES = Object.freeze({\n OWNER: 'owner',\n ADMIN: 'admin',\n MEMBER: 'member',\n GUEST: 'guest',\n});\n\nconst RBAC_CONFIG = {\n roles: Object.freeze([\n {\n name: ROLES.OWNER,\n title: 'Owner',\n description: 'Has full administrative access to the Blocklet Server',\n passport: true,\n },\n {\n name: ROLES.ADMIN,\n title: 'Admin',\n description:\n 'Has full permissions to manage blocklet and Blocklet Server such as install/remove/start/stop blocklet, manage blocklet URL mapping and certificates, manage blocklet team, manage node integrations and access keys, upgrade node to a new version',\n passport: true,\n },\n {\n name: ROLES.MEMBER,\n title: 'Member',\n description:\n 'Has permissions to manage blocklets, such as install/remove/start/stop blocklet, manage blocklet URL mapping and certificates',\n passport: true,\n },\n {\n name: ROLES.GUEST,\n title: 'Guest',\n description: 'Has all read permissions on Blocklet Server',\n passport: true,\n },\n {\n name: 'ci',\n title: 'CI',\n description: 'Deploy blocklet to Blocklet Server',\n passport: true,\n ci: true,\n },\n {\n name: 'certificate',\n title: 'Certificate',\n description: 'Manage https certificates for blocklets on the Blocklet Server',\n passport: true,\n ci: true,\n },\n {\n name: NODE_SERVICES.AUTH_SERVICE,\n title: 'Auth Service',\n },\n ]),\n permissions: Object.freeze([\n {\n name: 'query_node',\n description:\n 'View node data, include dashboard and node settings, log stream for both Blocklet Server and blocklets',\n },\n {\n name: 'mutate_node',\n description: 'Change node settings, upgrade node to a new version',\n },\n {\n name: 'query_session',\n description: 'Get data from a long running session',\n },\n {\n name: 'mutate_session',\n description: 'Start/update/end a long running session',\n },\n {\n name: 'query_accessKey',\n description: 'View access keys for Blocklet Server',\n },\n {\n name: 'mutate_accessKey',\n description: 'Manage access keys for Blocklet Server, such as create/update/delete',\n },\n {\n name: 'query_team',\n description: 'View team data(members/roles/permissions) for Blocklet Server and blocklets',\n },\n {\n name: 'mutate_team',\n description: 'Manage team data(members/roles/permissions) for Blocklet Server and blocklets',\n },\n {\n name: 'query_blocklet',\n description: 'View store and installed blocklets, including blocklet runtime configuration, domains and urls',\n },\n {\n name: 'mutate_blocklet',\n description: 'Perform state changing actions on blocklets, such as install/upgrade/config/start/stop/remove',\n },\n {\n name: 'query_router',\n description: 'View sites, URL mapping and certificates in service gateway',\n },\n {\n name: 'mutate_router',\n description: 'Manage sites, URL mapping and certificates in service gateway',\n },\n {\n name: 'query_certificate',\n description: 'View certificates in service gateway',\n },\n {\n name: 'mutate_certificate',\n description: 'Manage certificates in service gateway',\n },\n {\n name: 'query_notification',\n description: 'View notifications',\n },\n {\n name: 'mutate_notification',\n description: 'Manage notifications, such as mark notifications as read',\n },\n {\n name: 'query_webhook',\n description: 'View integrations',\n },\n {\n name: 'mutate_webhook',\n description: 'Manage integrations',\n },\n ]),\n grants: Object.freeze({\n [ROLES.GUEST]: [\n 'query_blocklet',\n 'query_router',\n 'query_webhook',\n 'query_notification',\n 'query_team',\n 'query_accessKey',\n 'query_node',\n 'query_session',\n ],\n [ROLES.MEMBER]: [ROLES.GUEST, 'mutate_blocklet', 'mutate_router', 'mutate_notification', 'mutate_session'],\n [ROLES.ADMIN]: [\n ROLES.MEMBER,\n 'mutate_team',\n 'mutate_webhook',\n 'mutate_accessKey',\n 'mutate_node',\n 'mutate_certificate',\n ],\n [ROLES.OWNER]: [ROLES.ADMIN],\n '@abtnode/auth-service': ['query_team', 'mutate_team'],\n ci: ['query_blocklet', 'mutate_blocklet'],\n certificate: ['query_certificate', 'mutate_certificate'],\n }),\n};\n\nconst DAY_IN_MS = 24 * 60 * 60 * 1000;\n\nmodule.exports = Object.freeze({\n // Blocklet Server\n NODE_MODES: Object.freeze({\n PRODUCTION: 'production',\n DEBUG: 'debug',\n MAINTENANCE: 'maintenance',\n IMMUTABLE: 'immutable',\n }),\n\n DEFAULT_DESCRIPTION: 'Web Interface to manage your Blocklet Server',\n\n NODE_UPGRADE_PROGRESS: Object.freeze({\n SETUP: 'setup', // backup\n INSTALLING: 'installing',\n RESTARTING: 'restarting',\n CLEANUP: 'cleanup',\n COMPLETE: 'complete',\n ROLLBACK: 'rollback',\n }),\n\n VC_TYPE_BLOCKLET_PURCHASE: 'BlockletPurchaseCredential',\n VC_TYPE_NODE_PASSPORT: 'ABTNodePassport',\n VC_TYPE_GENERAL_PASSPORT: 'NFTPassport',\n\n NFT_TYPE_SERVER_OWNERSHIP: 'BlockletServerOwnershipNFT',\n\n NODE_PACKAGE_NAME: '@abtnode/cli', // deprecated in 1.6.0\n NODE_COMMAND_NAME: 'abtnode', // deprecated in 1.6.0\n\n PROCESS_NAME_DAEMON: 'abt-node-daemon',\n PROCESS_NAME_PROXY: 'abt-node-db-hub',\n PROCESS_NAME_UPDATER: 'abt-node-updater',\n PROCESS_NAME_SERVICE: 'abt-node-service',\n PROCESS_NAME_ROUTER: 'abt-node-router',\n PROCESS_NAME_LOG_ROTATE: 'abt-node-log-rotate',\n PROCESS_NAME_EVENT_HUB: 'abt-node-event-hub',\n\n NODE_REGISTER_URL: 'https://install.arcblock.io/',\n WEB_WALLET_URL: 'https://web.abtwallet.io',\n BLOCKLET_STORE_URL: 'https://store.blocklet.dev',\n BLOCKLET_STORE_URL_DEV: 'https://dev.store.blocklet.dev',\n BLOCKLET_STORE_API_PREFIX: '/api',\n BLOCKLET_STORE_META_PATH: '/api/store.json',\n\n DEFAULT_DID_REGISTRY: 'https://registry.abtnet.io',\n DEFAULT_DID_DOMAIN: 'did.abtnet.io',\n DEFAULT_GATEWAY_DOMAIN: 'did.gw.abtnet.io',\n DEFAULT_IP_DNS_DOMAIN_SUFFIX: 'ip.abtnet.io',\n DEFAULT_IP_DOMAIN: '*.ip.abtnet.io',\n DEFAULT_WILDCARD_CERT_HOST: 'https://releases.arcblock.io/',\n\n DEFAULT_CERTIFICATE_EMAIL: 'certs@arcblock.io',\n\n CONFIG_FILENAME: 'config.yml',\n CONFIG_FILENAME_OLD: 'abtnode.yml',\n CONFIG_FOLDER_NAME: '.blocklet-server',\n CONFIG_FOLDER_NAME_OLD: '.abtnode',\n EXPORTED_FOLDER_NAME: 'exported_blocklet_server',\n\n StatusCode: Object.freeze({\n ok: 0,\n\n blocklet_not_found: 1,\n blocklet_not_purchased: 2,\n\n forbidden: 403,\n internal: 500,\n timeout: 504,\n }),\n\n // Service Gateway\n IP: new RegExp('-(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\-(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}'),\n DOMAIN_FOR_IP_SITE: '',\n DOMAIN_FOR_IP_SITE_REGEXP: `~^\\\\d+.\\\\d+.\\\\d+.\\\\d+$`, // eslint-disable-line\n DOMAIN_FOR_DEFAULT_SITE: '*',\n DOMAIN_FOR_INTERNAL_SITE: '127.0.0.1',\n NAME_FOR_WELLKNOWN_SITE: 'wellknown',\n WELLKNOWN_PATH_PREFIX: '/.well-known',\n WELLKNOWN_ACME_CHALLENGE_PREFIX: '/.well-known/acme-challenge',\n WELLKNOWN_DID_RESOLVER_PREFIX: '/.well-known/did.json',\n WELLKNOWN_AUTH_PATH_PREFIX: '/.well-known/auth',\n WELLKNOWN_PING_PREFIX: '/.well-known/ping',\n SLOT_FOR_IP_DNS_SITE: '888-888-888-888',\n\n DEFAULT_ADMIN_PATH: '/admin',\n DEFAULT_SERVICE_PATH: '/.abtnode/service',\n DEFAULT_HTTP_PORT: 80,\n DEFAULT_HTTPS_PORT: 443,\n MAX_UPLOAD_FILE_SIZE: 500, // unit: MB\n DEFAULT_DAEMON_PORT: 8089,\n\n BLOCKLET_PROXY_PATH_PREFIX: '/.blocklet/proxy',\n BLOCKLET_SITE_GROUP_SUFFIX: '.blocklet-domain-group',\n\n // Time and dates\n DAY_IN_MS,\n DAEMON_MAX_MEM_LIMIT_IN_MB: 600,\n PROXY_MAX_MEM_LIMIT_IN_MB: 300,\n BLOCKLET_MAX_MEM_LIMIT_IN_MB: 300,\n CERTIFICATE_EXPIRES_OFFSET: 8 * DAY_IN_MS,\n CERTIFICATE_EXPIRES_WARNING_OFFSET: 7 * DAY_IN_MS,\n ROUTING_RULE_TYPES: Object.freeze({\n NONE: 'none',\n DAEMON: 'daemon',\n SERVICE: 'service',\n BLOCKLET: 'blocklet',\n REDIRECT: 'redirect',\n GENERAL_PROXY: 'general_proxy',\n DIRECT_RESPONSE: 'direct_response',\n }),\n\n // Team\n ROLES,\n RBAC_CONFIG,\n genPermissionName: (resource, action = 'access') => `${action}_${resource.replace('_', '-')}`, // resource cannot include '_'\n PASSPORT_STATUS: {\n VALID: 'valid',\n REVOKED: 'revoked',\n },\n\n // Service\n NODE_SERVICES,\n NODE_SERVICES_PREFIX,\n\n DISK_ALERT_THRESHOLD_PERCENT: 80,\n});\n","/* eslint-disable object-curly-newline */\nimport { useContext } from 'react';\nimport createSessionContext from '@arcblock/did-connect/lib/Session';\n\nlet path = '/';\nif (window.env) {\n path = window.env.groupPathPrefix || window.env.pathPrefix || '/';\n}\n\nconst { SessionProvider, SessionContext, SessionConsumer, withSession } = createSessionContext(\n 'login_token',\n 'cookie',\n {\n returnDomain: false,\n path,\n }\n);\n\nfunction useSessionContext() {\n const info = useContext(SessionContext);\n return info;\n}\n\nexport { SessionProvider, SessionContext, SessionConsumer, useSessionContext, withSession };\n","const en = require('./en');\nconst zh = require('./zh');\n\nmodule.exports = { translations: { zh, en } };\n","const flat = require('flat');\n\nmodule.exports = flat({\n login: {\n loginTo: 'Login',\n description: 'You must login with DID Wallet to access {name}',\n already: 'You are logged in as',\n dialog: {\n title: 'Login Required',\n scan: 'Connect your DID Wallet to provide user profile',\n confirm: 'Confirm on your DID Wallet',\n success: 'You are logged in successfully',\n },\n },\n lostPassport: {\n title: 'Lost Passport?',\n },\n});\n","const flat = require('flat');\n\nmodule.exports = flat({\n login: {\n loginTo: '登录',\n description: '需要使用 DID Wallet 登录才可以访问 {name}',\n already: '你已经登录',\n dialog: {\n title: '请登录',\n scan: '用您的 DID 钱包扫描下面的二维码',\n confirm: '在您的 DID 钱包上确认',\n success: '登录成功',\n },\n },\n lostPassport: {\n title: '找回通行证?',\n },\n});\n","import React from 'react';\nimport { createGlobalStyle, ThemeProvider } from 'styled-components';\n\nimport { MuiThemeProvider } from '@material-ui/core/styles';\nimport CssBaseline from '@material-ui/core/CssBaseline';\n\nimport { LocaleProvider } from '@arcblock/ux/lib/Locale/context';\nimport { create } from '@arcblock/ux/lib/Theme';\n\nimport { translations } from '../locales';\nimport { SessionProvider } from '../contexts/session';\n\nconst GlobalStyle = createGlobalStyle`\n a {\n color: ${(props) => props.theme.palette.success.main};\n text-decoration: none;\n }\n\n a:hover {\n text-decoration: none;\n }\n`;\n\n// eslint-disable-next-line react/prop-types\nexport default ({ children }) => {\n const theme = create({\n typography: {\n fontSize: 14,\n button: {\n textTransform: 'none',\n },\n },\n });\n\n return (\n <MuiThemeProvider theme={theme}>\n <ThemeProvider theme={theme}>\n <LocaleProvider translations={translations}>\n <SessionProvider\n serviceHost={window.env && window.env.apiPrefix ? window.env.apiPrefix : ''}\n autoLogin={false}>\n <CssBaseline />\n <GlobalStyle />\n <div className=\"wrapper\">{children}</div>\n </SessionProvider>\n </LocaleProvider>\n </ThemeProvider>\n </MuiThemeProvider>\n );\n};\n","/* eslint-disable object-curly-newline */\nimport React, { Suspense, lazy } from 'react';\nimport { BrowserRouter as Router, Route, Switch, withRouter, Redirect } from 'react-router-dom';\n\nimport Spinner from '@arcblock/ux/lib/Spinner';\nimport Center from '@arcblock/ux/lib/Center';\n\nimport { WELLKNOWN_AUTH_PATH_PREFIX } from '@abtnode/constant';\n\nimport Root from './components/root';\n\nconst UserList = lazy(() => import(/* webpackPrefetch: true */ './pages/users'));\nconst UserLogin = lazy(() => import(/* webpackPrefetch: true */ './pages/login'));\nconst IssuePassport = lazy(() => import(/* webpackPrefetch: true */ './pages/issue-passport'));\nconst LostPassport = lazy(() => import(/* webpackPrefetch: true */ './pages/lost-passport'));\n\nexport const App = () => {\n const fallback = (\n <Center>\n <Spinner />\n </Center>\n );\n\n return (\n <Suspense fallback={fallback}>\n <Switch>\n <Route exact path={`${WELLKNOWN_AUTH_PATH_PREFIX}/lost-passport`} component={LostPassport} />\n <Route exact path={`${WELLKNOWN_AUTH_PATH_PREFIX}/issue-passport`} component={IssuePassport} />\n <Route exact path=\"/users\" component={UserList} />\n <Route exact path=\"/\" component={UserLogin} />\n <Redirect to=\"/\" />\n </Switch>\n </Suspense>\n );\n};\n\nconst WithRouter = withRouter(Root);\n\nexport default () => {\n const prefix = window.env && window.env.pathPrefix ? window.env.pathPrefix : '/';\n return (\n <Router basename={prefix}>\n <WithRouter>\n <App />\n </WithRouter>\n </Router>\n );\n};\n","import React from 'react';\nimport ReactDOM from 'react-dom';\n// eslint-disable-next-line import/no-named-as-default\nimport App from './app';\n\nReactDOM.render(<App />, document.getElementById('root'));\n"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- !function(e){function t(t){for(var n,u,i=t[0],l=t[1],s=t[2],f=t[3]||[],d=0,h=[];d<i.length;d++)u=i[d],Object.prototype.hasOwnProperty.call(o,u)&&o[u]&&h.push(o[u][0]),o[u]=0;for(n in l)Object.prototype.hasOwnProperty.call(l,n)&&(e[n]=l[n]);for(p&&p(t),c.push.apply(c,f);h.length;)h.shift()();return a.push.apply(a,s||[]),r()}function r(){for(var e,t=0;t<a.length;t++){for(var r=a[t],n=!0,l=1;l<r.length;l++){var s=r[l];0!==o[s]&&(n=!1)}n&&(a.splice(t--,1),e=i(i.s=r[0]))}return 0===a.length&&(c.forEach((function(e){if(void 0===o[e]){o[e]=null;var t=document.createElement("link");i.nc&&t.setAttribute("nonce",i.nc),t.rel="prefetch",t.as="script",t.href=u(e),document.head.appendChild(t)}})),c.length=0),e}var n={},o={1:0},a=[],c=[];function u(e){return i.p+"static/js/"+({}[e]||e)+"."+{3:"9cf8cde1",4:"3bcd2384",5:"a0b39d30",6:"91e31d64",7:"aa6a9bc1"}[e]+".chunk.js"}function i(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,i),r.l=!0,r.exports}i.e=function(e){var t=[],r=o[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise((function(t,n){r=o[e]=[t,n]}));t.push(r[2]=n);var a,c=document.createElement("script");c.charset="utf-8",c.timeout=120,i.nc&&c.setAttribute("nonce",i.nc),c.src=u(e);var l=new Error;a=function(t){c.onerror=c.onload=null,clearTimeout(s);var r=o[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),a=t&&t.target&&t.target.src;l.message="Loading chunk "+e+" failed.\n("+n+": "+a+")",l.name="ChunkLoadError",l.type=n,l.request=a,r[1](l)}o[e]=void 0}};var s=setTimeout((function(){a({type:"timeout",target:c})}),12e4);c.onerror=c.onload=a,document.head.appendChild(c)}return Promise.all(t)},i.m=e,i.c=n,i.d=function(e,t,r){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(i.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)i.d(r,n,function(t){return e[t]}.bind(null,n));return r},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="/.blocklet/proxy/abtnode-auth-service/",i.oe=function(e){throw console.error(e),e};var l=this["webpackJsonp@abtnode/blocklet-services"]=this["webpackJsonp@abtnode/blocklet-services"]||[],s=l.push.bind(l);l.push=t,l=l.slice();for(var f=0;f<l.length;f++)t(l[f]);var p=s;r()}([]);
2
- //# sourceMappingURL=runtime-main.8d9f8ef7.js.map
1
+ !function(e){function t(t){for(var n,c,i=t[0],l=t[1],s=t[2],f=t[3]||[],d=0,h=[];d<i.length;d++)c=i[d],Object.prototype.hasOwnProperty.call(o,c)&&o[c]&&h.push(o[c][0]),o[c]=0;for(n in l)Object.prototype.hasOwnProperty.call(l,n)&&(e[n]=l[n]);for(p&&p(t),u.push.apply(u,f);h.length;)h.shift()();return a.push.apply(a,s||[]),r()}function r(){for(var e,t=0;t<a.length;t++){for(var r=a[t],n=!0,l=1;l<r.length;l++){var s=r[l];0!==o[s]&&(n=!1)}n&&(a.splice(t--,1),e=i(i.s=r[0]))}return 0===a.length&&(u.forEach((function(e){if(void 0===o[e]){o[e]=null;var t=document.createElement("link");i.nc&&t.setAttribute("nonce",i.nc),t.rel="prefetch",t.as="script",t.href=c(e),document.head.appendChild(t)}})),u.length=0),e}var n={},o={1:0},a=[],u=[];function c(e){return i.p+"static/js/"+({}[e]||e)+"."+{3:"e6540184",4:"4410aa8a",5:"967448ae",6:"1de827ed",7:"cb386b54"}[e]+".chunk.js"}function i(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,i),r.l=!0,r.exports}i.e=function(e){var t=[],r=o[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise((function(t,n){r=o[e]=[t,n]}));t.push(r[2]=n);var a,u=document.createElement("script");u.charset="utf-8",u.timeout=120,i.nc&&u.setAttribute("nonce",i.nc),u.src=c(e);var l=new Error;a=function(t){u.onerror=u.onload=null,clearTimeout(s);var r=o[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),a=t&&t.target&&t.target.src;l.message="Loading chunk "+e+" failed.\n("+n+": "+a+")",l.name="ChunkLoadError",l.type=n,l.request=a,r[1](l)}o[e]=void 0}};var s=setTimeout((function(){a({type:"timeout",target:u})}),12e4);u.onerror=u.onload=a,document.head.appendChild(u)}return Promise.all(t)},i.m=e,i.c=n,i.d=function(e,t,r){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(i.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)i.d(r,n,function(t){return e[t]}.bind(null,n));return r},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,"a",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p="/.blocklet/proxy/abtnode-auth-service/",i.oe=function(e){throw console.error(e),e};var l=this["webpackJsonp@abtnode/blocklet-services"]=this["webpackJsonp@abtnode/blocklet-services"]||[],s=l.push.bind(l);l.push=t,l=l.slice();for(var f=0;f<l.length;f++)t(l[f]);var p=s;r()}([]);
2
+ //# sourceMappingURL=runtime-main.24dfe4a3.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../webpack/bootstrap"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","prefetchChunks","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","deferredPrefetch","apply","shift","deferredModules","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","forEach","undefined","link","document","createElement","nc","setAttribute","rel","as","href","jsonpScriptSrc","head","appendChild","installedModules","1","p","exports","module","l","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","charset","timeout","src","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","console","jsonpArray","this","oldJsonpFunction","slice"],"mappings":"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","file":"static/js/runtime-main.8d9f8ef7.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n \t\tvar prefetchChunks = data[3] || [];\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n \t\tdeferredPrefetch.push.apply(deferredPrefetch, prefetchChunks);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\tif(deferredModules.length === 0) {\n \t\t\t// chunk prefetching for javascript\n \t\t\tdeferredPrefetch.forEach(function(chunkId) {\n \t\t\t\tif(installedChunks[chunkId] === undefined) {\n \t\t\t\t\tinstalledChunks[chunkId] = null;\n \t\t\t\t\tvar link = document.createElement('link');\n\n \t\t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\t\tlink.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t\t}\n \t\t\t\t\tlink.rel = \"prefetch\";\n \t\t\t\t\tlink.as = \"script\";\n \t\t\t\t\tlink.href = jsonpScriptSrc(chunkId);\n \t\t\t\t\tdocument.head.appendChild(link);\n \t\t\t\t}\n \t\t\t});\n \t\t\tdeferredPrefetch.length = 0;\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t1: 0\n \t};\n\n \tvar deferredModules = [], deferredPrefetch = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({}[chunkId]||chunkId) + \".\" + {\"3\":\"9cf8cde1\",\"4\":\"3bcd2384\",\"5\":\"a0b39d30\",\"6\":\"91e31d64\",\"7\":\"aa6a9bc1\"}[chunkId] + \".chunk.js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/.blocklet/proxy/abtnode-auth-service/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = this[\"webpackJsonp@abtnode/blocklet-services\"] = this[\"webpackJsonp@abtnode/blocklet-services\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["../webpack/bootstrap"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","prefetchChunks","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","deferredPrefetch","apply","shift","deferredModules","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","forEach","undefined","link","document","createElement","nc","setAttribute","rel","as","href","jsonpScriptSrc","head","appendChild","installedModules","1","p","exports","module","l","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","charset","timeout","src","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","console","jsonpArray","this","oldJsonpFunction","slice"],"mappings":"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","file":"static/js/runtime-main.24dfe4a3.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n \t\tvar prefetchChunks = data[3] || [];\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n \t\tdeferredPrefetch.push.apply(deferredPrefetch, prefetchChunks);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\tif(deferredModules.length === 0) {\n \t\t\t// chunk prefetching for javascript\n \t\t\tdeferredPrefetch.forEach(function(chunkId) {\n \t\t\t\tif(installedChunks[chunkId] === undefined) {\n \t\t\t\t\tinstalledChunks[chunkId] = null;\n \t\t\t\t\tvar link = document.createElement('link');\n\n \t\t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\t\tlink.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t\t}\n \t\t\t\t\tlink.rel = \"prefetch\";\n \t\t\t\t\tlink.as = \"script\";\n \t\t\t\t\tlink.href = jsonpScriptSrc(chunkId);\n \t\t\t\t\tdocument.head.appendChild(link);\n \t\t\t\t}\n \t\t\t});\n \t\t\tdeferredPrefetch.length = 0;\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t1: 0\n \t};\n\n \tvar deferredModules = [], deferredPrefetch = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({}[chunkId]||chunkId) + \".\" + {\"3\":\"e6540184\",\"4\":\"4410aa8a\",\"5\":\"967448ae\",\"6\":\"1de827ed\",\"7\":\"cb386b54\"}[chunkId] + \".chunk.js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/.blocklet/proxy/abtnode-auth-service/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = this[\"webpackJsonp@abtnode/blocklet-services\"] = this[\"webpackJsonp@abtnode/blocklet-services\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "1.6.23",
6
+ "version": "1.6.26",
7
7
  "description": "Provide unified services for every blocklet",
8
8
  "main": "lib/index.js",
9
9
  "files": [
@@ -33,21 +33,21 @@
33
33
  "author": "wangshijun <wangshijun2010@gmail.com> (http://github.com/wangshijun)",
34
34
  "license": "MIT",
35
35
  "dependencies": {
36
- "@abtnode/auth": "1.6.23",
37
- "@abtnode/constant": "1.6.23",
38
- "@abtnode/core": "1.6.23",
39
- "@abtnode/cron": "1.6.23",
40
- "@abtnode/logger": "1.6.23",
41
- "@abtnode/router-adapter": "1.6.23",
42
- "@abtnode/router-templates": "1.6.23",
43
- "@abtnode/util": "1.6.23",
36
+ "@abtnode/auth": "1.6.26",
37
+ "@abtnode/constant": "1.6.26",
38
+ "@abtnode/core": "1.6.26",
39
+ "@abtnode/cron": "1.6.26",
40
+ "@abtnode/logger": "1.6.26",
41
+ "@abtnode/router-adapter": "1.6.26",
42
+ "@abtnode/router-templates": "1.6.26",
43
+ "@abtnode/util": "1.6.26",
44
44
  "@arcblock/did-auth": "^1.14.19",
45
45
  "@arcblock/did-auth-storage-nedb": "^1.6.3",
46
46
  "@arcblock/event-hub": "1.14.19",
47
47
  "@arcblock/jwt": "^1.14.19",
48
48
  "@arcblock/ws": "^1.14.19",
49
- "@blocklet/meta": "1.6.23",
50
- "@blocklet/sdk": "1.6.23",
49
+ "@blocklet/meta": "1.6.26",
50
+ "@blocklet/sdk": "1.6.26",
51
51
  "body-parser": "^1.19.0",
52
52
  "compression": "^1.7.4",
53
53
  "cookie-parser": "^1.4.4",
@@ -70,9 +70,9 @@
70
70
  "url-join": "^4.0.1"
71
71
  },
72
72
  "devDependencies": {
73
- "@abtnode/ux": "1.6.23",
74
- "@arcblock/did-connect": "^1.16.33",
75
- "@arcblock/ux": "^1.16.33",
73
+ "@abtnode/ux": "1.6.26",
74
+ "@arcblock/did-connect": "^1.16.40",
75
+ "@arcblock/ux": "^1.16.40",
76
76
  "@material-ui/core": "^4.12.3",
77
77
  "axios": "^0.25.0",
78
78
  "core-js": "2.5.7",
@@ -88,6 +88,7 @@
88
88
  "react": "^16.13.0",
89
89
  "react-app-rewired": "^2.1.6",
90
90
  "react-dom": "^16.13.0",
91
+ "react-error-overlay": "6.0.9",
91
92
  "react-router-dom": "^5.1.2",
92
93
  "react-scripts": "^3.4.3",
93
94
  "source-map-explorer": "^2.4.2",
@@ -115,5 +116,5 @@
115
116
  "url": "https://github.com/ArcBlock/blocklet-server/issues",
116
117
  "email": "shijun@arcblock.io"
117
118
  },
118
- "gitHead": "6c478fb7e2a30b302981b5339f349c69134e022e"
119
+ "gitHead": "4e92f2af78718332882c7542fd475cc261903788"
119
120
  }