@webiny/app-tenancy 5.17.4 → 5.18.0-beta.3
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/contexts/Tenancy.js +1 -2
- package/hooks/useTenancy.js +1 -2
- package/index.js +1 -2
- package/package.json +8 -8
- package/plugins/installation.js +1 -2
- package/withTenant.js +1 -2
- package/contexts/Tenancy.js.map +0 -1
- package/hooks/useTenancy.js.map +0 -1
- package/index.js.map +0 -1
- package/plugins/installation.js.map +0 -1
- package/withTenant.js.map +0 -1
package/contexts/Tenancy.js
CHANGED
|
@@ -52,5 +52,4 @@ export var TenancyProvider = function TenancyProvider(props) {
|
|
|
52
52
|
return /*#__PURE__*/React.createElement(TenancyContext.Provider, {
|
|
53
53
|
value: value
|
|
54
54
|
}, /*#__PURE__*/React.createElement(Fragment, null, props.children));
|
|
55
|
-
};
|
|
56
|
-
//# sourceMappingURL=Tenancy.js.map
|
|
55
|
+
};
|
package/hooks/useTenancy.js
CHANGED
package/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/app-tenancy",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.18.0-beta.3",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -17,10 +17,10 @@
|
|
|
17
17
|
"@babel/runtime": "7.16.3",
|
|
18
18
|
"@emotion/styled": "10.0.27",
|
|
19
19
|
"@types/react": "16.14.2",
|
|
20
|
-
"@webiny/app": "5.
|
|
21
|
-
"@webiny/app-admin": "5.
|
|
22
|
-
"@webiny/plugins": "5.
|
|
23
|
-
"@webiny/ui": "5.
|
|
20
|
+
"@webiny/app": "5.18.0-beta.3",
|
|
21
|
+
"@webiny/app-admin": "5.18.0-beta.3",
|
|
22
|
+
"@webiny/plugins": "5.18.0-beta.3",
|
|
23
|
+
"@webiny/ui": "5.18.0-beta.3",
|
|
24
24
|
"graphql-tag": "2.12.6",
|
|
25
25
|
"react": "16.14.0",
|
|
26
26
|
"react-dom": "16.14.0",
|
|
@@ -33,8 +33,8 @@
|
|
|
33
33
|
"@babel/preset-env": "^7.5.5",
|
|
34
34
|
"@babel/preset-react": "^7.0.0",
|
|
35
35
|
"@babel/preset-typescript": "^7.8.3",
|
|
36
|
-
"@webiny/cli": "^5.
|
|
37
|
-
"@webiny/project-utils": "^5.
|
|
36
|
+
"@webiny/cli": "^5.18.0-beta.3",
|
|
37
|
+
"@webiny/project-utils": "^5.18.0-beta.3",
|
|
38
38
|
"babel-plugin-emotion": "^9.2.8",
|
|
39
39
|
"babel-plugin-lodash": "^3.3.4",
|
|
40
40
|
"babel-plugin-named-asset-import": "^1.0.0-next.3e165448",
|
|
@@ -55,5 +55,5 @@
|
|
|
55
55
|
"removeViewBox": false
|
|
56
56
|
}
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "9c86670476a62348ce391b091bf768e425ab6ee9"
|
|
59
59
|
}
|
package/plugins/installation.js
CHANGED
package/withTenant.js
CHANGED
package/contexts/Tenancy.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/contexts/Tenancy.tsx"],"names":["React","useMemo","useCallback","Fragment","useState","default","localStorage","plugins","TenantHeaderLinkPlugin","TenancyContext","createContext","LOCAL_STORAGE_KEY","loadState","get","storeState","state","set","getInitialTenant","currentTenant","register","TenancyProvider","props","setTenant","changeTenant","tenant","remove","window","location","pathname","value","isMultiTenant","process","env","REACT_APP_WEBINY_MULTI_TENANCY","children"],"mappings":";AAAA,OAAOA,KAAP,IAAgBC,OAAhB,EAAyBC,WAAzB,EAAsCC,QAAtC,EAAgDC,QAAhD,QAAgE,OAAhE;AACA,SAASC,OAAO,IAAIC,YAApB,QAAwC,OAAxC;AACA,SAASC,OAAT,QAAwB,iBAAxB;AACA,SAASC,sBAAT,QAAuC,4CAAvC;AACA,OAAO,IAAMC,cAAc,gBAAGT,KAAK,CAACU,aAAN,CAAoB,IAApB,CAAvB;AAaP,IAAMC,iBAAiB,GAAG,eAA1B;;AAEA,SAASC,SAAT,GAAqB;AACjB,SAAON,YAAY,CAACO,GAAb,CAAiBF,iBAAjB,KAAuC,IAA9C;AACH;;AAED,SAASG,UAAT,CAAoBC,KAApB,EAA2B;AACvBT,EAAAA,YAAY,CAACU,GAAb,CAAiBL,iBAAjB,EAAoCI,KAApC;AACH;;AAED,IAAME,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAM;AAC3B,MAAMC,aAAa,GAAGN,SAAS,EAA/B;AACAL,EAAAA,OAAO,CAACY,QAAR,CAAiB,IAAIX,sBAAJ,CAA2BU,aAAa,IAAI,MAA5C,CAAjB;AACA,SAAOA,aAAP;AACH,CAJD;;AAMA,OAAO,IAAME,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK,EAAI;AACpC,kBAAmCjB,QAAQ,CAACa,gBAAD,CAA3C;AAAA;AAAA,MAAOC,aAAP;AAAA,MAAsBI,SAAtB;;AAEA,MAAMC,YAAY,GAAGrB,WAAW,CAC5B,UAACsB,MAAD,EAAoB;AAChB,QAAI,CAACA,MAAL,EAAa;AACTlB,MAAAA,YAAY,CAACmB,MAAb,CAAoBd,iBAApB;AAEAe,MAAAA,MAAM,CAACC,QAAP,CAAgBC,QAAhB,GAA2B,GAA3B;AACH;;AAED,QAAI,CAACV,aAAL,EAAoB;AAChBX,MAAAA,OAAO,CAACY,QAAR,CAAiB,IAAIX,sBAAJ,CAA2BgB,MAA3B,CAAjB;AACAF,MAAAA,SAAS,CAACE,MAAD,CAAT;AACAV,MAAAA,UAAU,CAACU,MAAD,CAAV;AACA;AACH;;AAEDV,IAAAA,UAAU,CAACU,MAAD,CAAV;AACAE,IAAAA,MAAM,CAACC,QAAP,CAAgBC,QAAhB,GAA2B,GAA3B;AACH,GAjB2B,EAkB5B,CAACV,aAAD,CAlB4B,CAAhC;AAqBA,MAAMW,KAAK,GAAG5B,OAAO,CACjB;AAAA,WAAO;AACHuB,MAAAA,MAAM,EAAEN,aADL;AAEHI,MAAAA,SAAS,EAAEC,YAFR;AAGHO,MAAAA,aAAa,EAAEC,OAAO,CAACC,GAAR,CAAYC,8BAAZ,KAA+C;AAH3D,KAAP;AAAA,GADiB,EAMjB,CAACf,aAAD,CANiB,CAArB;AASA,sBACI,oBAAC,cAAD,CAAgB,QAAhB;AAAyB,IAAA,KAAK,EAAEW;AAAhC,kBACI,oBAAC,QAAD,QAAWR,KAAK,CAACa,QAAjB,CADJ,CADJ;AAKH,CAtCM","sourcesContent":["import React, { useMemo, useCallback, Fragment, useState } from \"react\";\nimport { default as localStorage } from \"store\";\nimport { plugins } from \"@webiny/plugins\";\nimport { TenantHeaderLinkPlugin } from \"@webiny/app/plugins/TenantHeaderLinkPlugin\";\nexport const TenancyContext = React.createContext(null);\n\nexport interface Tenant {\n id: string;\n name: string;\n}\n\nexport type TenancyContextValue = {\n tenant: string | null;\n setTenant(tenant: string): void;\n isMultiTenant: boolean;\n};\n\nconst LOCAL_STORAGE_KEY = \"webiny_tenant\";\n\nfunction loadState() {\n return localStorage.get(LOCAL_STORAGE_KEY) || null;\n}\n\nfunction storeState(state) {\n localStorage.set(LOCAL_STORAGE_KEY, state);\n}\n\nconst getInitialTenant = () => {\n const currentTenant = loadState();\n plugins.register(new TenantHeaderLinkPlugin(currentTenant || \"root\"));\n return currentTenant;\n};\n\nexport const TenancyProvider = props => {\n const [currentTenant, setTenant] = useState(getInitialTenant);\n\n const changeTenant = useCallback(\n (tenant: string) => {\n if (!tenant) {\n localStorage.remove(LOCAL_STORAGE_KEY);\n\n window.location.pathname = \"/\";\n }\n\n if (!currentTenant) {\n plugins.register(new TenantHeaderLinkPlugin(tenant));\n setTenant(tenant);\n storeState(tenant);\n return;\n }\n\n storeState(tenant);\n window.location.pathname = \"/\";\n },\n [currentTenant]\n );\n\n const value = useMemo<TenancyContextValue>(\n () => ({\n tenant: currentTenant,\n setTenant: changeTenant,\n isMultiTenant: process.env.REACT_APP_WEBINY_MULTI_TENANCY === \"true\"\n }),\n [currentTenant]\n );\n\n return (\n <TenancyContext.Provider value={value}>\n <Fragment>{props.children}</Fragment>\n </TenancyContext.Provider>\n );\n};\n"],"file":"Tenancy.js"}
|
package/hooks/useTenancy.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/hooks/useTenancy.ts"],"names":["useContext","TenancyContext","useTenancy"],"mappings":"AAAA,SAASA,UAAT,QAA2B,OAA3B;AACA,SAASC,cAAT;AAEA,OAAO,SAASC,UAAT,GAAsB;AACzB,SAAOF,UAAU,CAAsBC,cAAtB,CAAjB;AACH","sourcesContent":["import { useContext } from \"react\";\nimport { TenancyContext, TenancyContextValue } from \"~/contexts/Tenancy\";\n\nexport function useTenancy() {\n return useContext<TenancyContextValue>(TenancyContext);\n}\n"],"file":"useTenancy.js"}
|
package/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"names":["installation","plugins"],"mappings":"AAAA,OAAOA,YAAP;AACA;AACA;AACA;AAEA,OAAO,IAAMC,OAAO,GAAG,SAAVA,OAAU;AAAA,SAAM,CAACD,YAAD,CAAN;AAAA,CAAhB","sourcesContent":["import installation from \"~/plugins/installation\";\nexport * from \"./contexts/Tenancy\";\nexport * from \"./hooks/useTenancy\";\nexport * from \"./withTenant\";\n\nexport const plugins = () => [installation];\n"],"file":"index.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/plugins/installation.tsx"],"names":["React","useState","useEffect","gql","useApolloClient","Alert","CircularProgress","SimpleForm","SimpleFormContent","styled","SimpleFormPlaceholder","minHeight","minWidth","IS_INSTALLED","INSTALL","TenancyInstaller","onInstalled","client","error","setError","mutate","mutation","then","data","tenancy","install","message","setTimeout","label","plugin","name","type","title","dependencies","secure","getInstalledVersion","query","version","render"],"mappings":";;;;;;;AAAA,OAAOA,KAAP,IAAgBC,QAAhB,EAA0BC,SAA1B,QAA2C,OAA3C;AACA,OAAOC,GAAP,MAAgB,aAAhB;AACA,SAASC,eAAT,QAAgC,qBAAhC;AACA,SAASC,KAAT,QAAsB,kBAAtB;AACA,SAASC,gBAAT,QAAiC,qBAAjC;AACA,SAASC,UAAT,EAAqBC,iBAArB,QAA8C,yCAA9C;AACA,OAAOC,MAAP,MAAmB,iBAAnB;AAGA,IAAMC,qBAAqB,gBAAGD,MAAH;AAAA;AAAA;AAAA,GAAc;AACrCE,EAAAA,SAAS,EAAE,GAD0B;AAErCC,EAAAA,QAAQ,EAAE;AAF2B,CAAd,CAA3B;AAKA,IAAMC,YAAY,GAAGV,GAAH,iKAAlB;AAQA,IAAMW,OAAO,GAAGX,GAAH,4SAAb;;AAcA,IAAMY,gBAAgB,GAAG,SAAnBA,gBAAmB,OAAqB;AAAA,MAAlBC,WAAkB,QAAlBA,WAAkB;AAC1C,MAAMC,MAAM,GAAGb,eAAe,EAA9B;;AACA,kBAA0BH,QAAQ,CAAC,IAAD,CAAlC;AAAA;AAAA,MAAOiB,KAAP;AAAA,MAAcC,QAAd;;AAEAjB,EAAAA,SAAS,CAAC,YAAM;AACZe,IAAAA,MAAM,CAACG,MAAP,CAAc;AAAEC,MAAAA,QAAQ,EAAEP;AAAZ,KAAd,EAAqCQ,IAArC,CAA0C,iBAAc;AAAA,UAAXC,IAAW,SAAXA,IAAW;AACpD,UAAQL,KAAR,GAAkBK,IAAI,CAACC,OAAL,CAAaC,OAA/B,CAAQP,KAAR;;AACA,UAAIA,KAAJ,EAAW;AACPC,QAAAA,QAAQ,CAACD,KAAK,CAACQ,OAAP,CAAR;AACA;AACH,OALmD,CAOpD;;;AACAC,MAAAA,UAAU,CAACX,WAAD,EAAc,IAAd,CAAV;AACH,KATD;AAUH,GAXQ,EAWN,EAXM,CAAT;AAaA,MAAMY,KAAK,GAAGV,KAAK,gBACf,oBAAC,KAAD;AAAO,IAAA,KAAK,wBAAZ;AAAsC,IAAA,IAAI,EAAE;AAA5C,KACKA,KADL,CADe,0BAAnB;AAQA,sBACI,oBAAC,UAAD,qBACI,oBAAC,gBAAD;AAAkB,IAAA,KAAK,EAAEU;AAAzB,IADJ,eAEI,oBAAC,iBAAD,qBACI,oBAAC,qBAAD,OADJ,CAFJ,CADJ;AAQH,CAjCD;;AAmCA,IAAMC,MAA+B,GAAG;AACpCC,EAAAA,IAAI,EAAE,4BAD8B;AAEpCC,EAAAA,IAAI,EAAE,oBAF8B;AAGpCC,EAAAA,KAAK,WAH+B;AAIpCC,EAAAA,YAAY,EAAE,EAJsB;AAKpCC,EAAAA,MAAM,EAAE,KAL4B;AAM9BC,EAAAA,mBAN8B,sCAME;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAVlB,cAAAA,MAAU,SAAVA,MAAU;AAAA;AAAA,qBACXA,MAAM,CAACmB,KAAP,CAAa;AAAEA,gBAAAA,KAAK,EAAEvB;AAAT,eAAb,CADW;;AAAA;AAAA;AAC1BU,cAAAA,IAD0B,uBAC1BA,IAD0B;AAAA,+CAE3BA,IAAI,CAACC,OAAL,CAAaa,OAFc;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGrC,GATmC;AAUpCC,EAAAA,MAVoC,yBAUZ;AAAA,QAAftB,WAAe,SAAfA,WAAe;AACpB,wBAAO,oBAAC,gBAAD;AAAkB,MAAA,WAAW,EAAEA;AAA/B,MAAP;AACH;AAZmC,CAAxC;AAeA,eAAea,MAAf","sourcesContent":["import React, { useState, useEffect } from \"react\";\nimport gql from \"graphql-tag\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { Alert } from \"@webiny/ui/Alert\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { SimpleForm, SimpleFormContent } from \"@webiny/app-admin/components/SimpleForm\";\nimport styled from \"@emotion/styled\";\nimport { AdminInstallationPlugin } from \"@webiny/app-admin/types\";\n\nconst SimpleFormPlaceholder = styled.div({\n minHeight: 300,\n minWidth: 400\n});\n\nconst IS_INSTALLED = gql`\n query IsTenancyInstalled {\n tenancy {\n version\n }\n }\n`;\n\nconst INSTALL = gql`\n mutation InstallTenancy {\n tenancy {\n install {\n data\n error {\n code\n message\n }\n }\n }\n }\n`;\n\nconst TenancyInstaller = ({ onInstalled }) => {\n const client = useApolloClient();\n const [error, setError] = useState(null);\n\n useEffect(() => {\n client.mutate({ mutation: INSTALL }).then(({ data }) => {\n const { error } = data.tenancy.install;\n if (error) {\n setError(error.message);\n return;\n }\n\n // Just so the user sees the actual message.\n setTimeout(onInstalled, 3000);\n });\n }, []);\n\n const label = error ? (\n <Alert title={`Something went wrong`} type={\"danger\"}>\n {error}\n </Alert>\n ) : (\n `Installing Tenancy...`\n );\n\n return (\n <SimpleForm>\n <CircularProgress label={label} />\n <SimpleFormContent>\n <SimpleFormPlaceholder />\n </SimpleFormContent>\n </SimpleForm>\n );\n};\n\nconst plugin: AdminInstallationPlugin = {\n name: \"admin-installation-tenancy\",\n type: \"admin-installation\",\n title: `Tenancy`,\n dependencies: [],\n secure: false,\n async getInstalledVersion({ client }) {\n const { data } = await client.query({ query: IS_INSTALLED });\n return data.tenancy.version;\n },\n render({ onInstalled }) {\n return <TenancyInstaller onInstalled={onInstalled} />;\n }\n};\n\nexport default plugin;\n"],"file":"installation.js"}
|
package/withTenant.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/withTenant.tsx"],"names":["React","gql","useTenancy","GET_DEFAULT_TENANT","withTenant","Component","WithTenant","getIdentityData","children","tenant","setTenant","isMultiTenant","getIdentityWithTenant","params","client","query","context","headers","response","defaultTenantId","data","tenancy","getDefaultTenant","id"],"mappings":";;;;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,GAAT,QAAoB,aAApB;AACA,SAASC,UAAT;AAEA,OAAO,IAAMC,kBAAkB,GAAGF,GAAH,0ZAAxB;AAkBP,OAAO,IAAMG,UAAU,GAAG,SAAbA,UAAa,CAAAC,SAAS,EAAI;AACnC,MAAMC,UAAU,GAAG,SAAbA,UAAa,OAAmC;AAAA,QAAhCC,eAAgC,QAAhCA,eAAgC;AAAA,QAAfC,QAAe,QAAfA,QAAe;;AAClD,sBAA6CN,UAAU,EAAvD;AAAA,QAAQO,MAAR,eAAQA,MAAR;AAAA,QAAgBC,SAAhB,eAAgBA,SAAhB;AAAA,QAA2BC,aAA3B,eAA2BA,aAA3B;;AAEA,QAAMC,qBAAqB;AAAA,2EAAG,iBAAMC,MAAN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBACtBJ,MAAM,IAAI,CAACE,aADW;AAAA;AAAA;AAAA;;AAAA,iDAEfJ,eAAe,CAACM,MAAD,CAFA;;AAAA;AAAA;AAAA,uBAMHA,MAAM,CAACC,MAAP,CAAcC,KAAd,CAAoB;AACvCA,kBAAAA,KAAK,EAAEZ,kBADgC;AAEvCa,kBAAAA,OAAO,EAAE;AAAEC,oBAAAA,OAAO,EAAE;AAAE,kCAAYR,MAAM,IAAI;AAAxB;AAAX;AAF8B,iBAApB,CANG;;AAAA;AAMpBS,gBAAAA,QANoB;AAWpBC,gBAAAA,eAXoB,GAWFD,QAAQ,CAACE,IAAT,CAAcC,OAAd,CAAsBC,gBAAtB,CAAuCF,IAAvC,CAA4CG,EAX1C;AAa1Bb,gBAAAA,SAAS,CAACS,eAAD,CAAT;AAb0B,iDAenBZ,eAAe,CAACM,MAAD,CAfI;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,OAAH;;AAAA,sBAArBD,qBAAqB;AAAA;AAAA;AAAA,OAA3B;;AAkBA,wBAAO,oBAAC,SAAD;AAAW,MAAA,eAAe,EAAEA;AAA5B,OAAoDJ,QAApD,CAAP;AACH,GAtBD;;AAwBA,SAAOF,UAAP;AACH,CA1BM","sourcesContent":["import React from \"react\";\nimport { gql } from \"graphql-tag\";\nimport { useTenancy } from \"~/hooks/useTenancy\";\n\nexport const GET_DEFAULT_TENANT = gql`\n query GetDefaultTenant {\n tenancy {\n getDefaultTenant {\n data {\n id\n name\n description\n }\n error {\n code\n message\n }\n }\n }\n }\n`;\n\nexport const withTenant = Component => {\n const WithTenant = ({ getIdentityData, children }) => {\n const { tenant, setTenant, isMultiTenant } = useTenancy();\n\n const getIdentityWithTenant = async params => {\n if (tenant || !isMultiTenant) {\n return getIdentityData(params);\n }\n\n // Get default tenant\n const response = await params.client.query({\n query: GET_DEFAULT_TENANT,\n context: { headers: { \"x-tenant\": tenant || \"root\" } }\n });\n\n const defaultTenantId = response.data.tenancy.getDefaultTenant.data.id;\n\n setTenant(defaultTenantId);\n\n return getIdentityData(params);\n };\n\n return <Component getIdentityData={getIdentityWithTenant}>{children}</Component>;\n };\n\n return WithTenant;\n};\n"],"file":"withTenant.js"}
|