@webiny/languages 0.0.0-unstable.5387e5f7c8 → 0.0.0-unstable.7c2def32a7

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/Languages.js CHANGED
@@ -1,8 +1,7 @@
1
1
  import react from "react";
2
2
  import { Api } from "@webiny/project-aws/api.js";
3
3
  import { Admin } from "@webiny/project-aws/admin.js";
4
- import { FeatureFlag } from "@webiny/project";
5
- const Languages = ()=>/*#__PURE__*/ react.createElement(FeatureFlag.CanUseMultiTenancy, null, /*#__PURE__*/ react.createElement(Api.Extension, {
4
+ const Languages = ()=>/*#__PURE__*/ react.createElement(react.Fragment, null, /*#__PURE__*/ react.createElement(Api.Extension, {
6
5
  src: import.meta.dirname + "/api/Extension.js"
7
6
  }), /*#__PURE__*/ react.createElement(Admin.Extension, {
8
7
  src: import.meta.dirname + "/admin/Extension.js"
package/Languages.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Languages.js","sources":["../src/Languages.tsx"],"sourcesContent":["import React from \"react\";\nimport { Api } from \"@webiny/project-aws/api.js\";\nimport { Admin } from \"@webiny/project-aws/admin.js\";\nimport { FeatureFlag } from \"@webiny/project\";\n\nexport const Languages = () => {\n return (\n <FeatureFlag.CanUseMultiTenancy>\n {/* Api extensions */}\n <Api.Extension src={import.meta.dirname + \"/api/Extension.js\"} />\n\n {/* Admin extensions */}\n <Admin.Extension src={import.meta.dirname + \"/admin/Extension.js\"} />\n </FeatureFlag.CanUseMultiTenancy>\n );\n};\n"],"names":["Languages","FeatureFlag","Api","Admin"],"mappings":";;;;AAKO,MAAMA,YAAY,IACd,WAAP,GACI,oBAACC,YAAY,kBAAkB,sBAE3B,oBAACC,IAAI,SAAS;QAAC,KAAK,YAAY,OAAO,GAAG;sBAG1C,oBAACC,MAAM,SAAS;QAAC,KAAK,YAAY,OAAO,GAAG"}
1
+ {"version":3,"file":"Languages.js","sources":["../src/Languages.tsx"],"sourcesContent":["import React from \"react\";\nimport { Api } from \"@webiny/project-aws/api.js\";\nimport { Admin } from \"@webiny/project-aws/admin.js\";\n\n/*\n * Not wrapped in a `FeatureFlag` component: those read the license when the project is built, so a\n * license that gained languages after the last deploy did nothing until the next one, while Website\n * Builder's checks already read the live license. Both extensions gate themselves on the\n * `languages` flag instead, the same way AI Powerups does.\n */\nexport const Languages = () => {\n return (\n <>\n {/* Api extensions */}\n <Api.Extension src={import.meta.dirname + \"/api/Extension.js\"} />\n\n {/* Admin extensions */}\n <Admin.Extension src={import.meta.dirname + \"/admin/Extension.js\"} />\n </>\n );\n};\n"],"names":["Languages","Api","Admin"],"mappings":";;;AAUO,MAAMA,YAAY,IACd,WAAP,GACI,wDAEI,oBAACC,IAAI,SAAS;QAAC,KAAK,YAAY,OAAO,GAAG;sBAG1C,oBAACC,MAAM,SAAS;QAAC,KAAK,YAAY,OAAO,GAAG"}
@@ -1,2 +1,2 @@
1
1
  import React from "react";
2
- export declare const Extension: () => React.JSX.Element;
2
+ export declare const Extension: () => React.JSX.Element | null;
@@ -1,5 +1,5 @@
1
1
  import react from "react";
2
- import { AdminConfig, HasPermission, RegisterFeature, useRouter } from "@webiny/app-admin";
2
+ import { AdminConfig, HasPermission, RegisterFeature, useFeatureFlags, useRouter } from "@webiny/app-admin";
3
3
  import { Routes } from "@webiny/app-headless-cms";
4
4
  import { LANGUAGE_MODEL_ID } from "../shared/constants.js";
5
5
  import { SecurityPermission } from "./SecurityPermission.js";
@@ -8,6 +8,8 @@ import { ListLanguagesFeature } from "./features/listLanguages/index.js";
8
8
  const { Menu: Menu } = AdminConfig;
9
9
  const Extension = ()=>{
10
10
  const { getLink } = useRouter();
11
+ const featureFlags = useFeatureFlags();
12
+ if (!featureFlags.isEnabled("languages")) return null;
11
13
  const link = getLink(Routes.ContentEntries.List, {
12
14
  modelId: LANGUAGE_MODEL_ID
13
15
  });
@@ -1 +1 @@
1
- {"version":3,"file":"admin/Extension.js","sources":["../../src/admin/Extension.tsx"],"sourcesContent":["import React from \"react\";\nimport { AdminConfig, HasPermission, RegisterFeature } from \"@webiny/app-admin\";\nimport { useRouter } from \"@webiny/app-admin\";\nimport { Routes } from \"@webiny/app-headless-cms\";\nimport { LANGUAGE_MODEL_ID } from \"~/shared/constants.js\";\nimport { SecurityPermission } from \"./SecurityPermission.js\";\nimport { LanguageEntryList } from \"~/admin/LanguageEntryList.js\";\nimport { ListLanguagesFeature } from \"./features/listLanguages/index.js\";\n\nconst { Menu } = AdminConfig;\n\nexport const Extension = () => {\n const { getLink } = useRouter();\n\n const link = getLink(Routes.ContentEntries.List, { modelId: LANGUAGE_MODEL_ID });\n\n return (\n <>\n <RegisterFeature feature={ListLanguagesFeature} />\n <SecurityPermission />\n <AdminConfig>\n <HasPermission name={\"languages.*\"}>\n <Menu\n parent={\"settings.system\"}\n name=\"languages\"\n element={<Menu.Link text=\"Languages\" to={link} />}\n />\n </HasPermission>\n </AdminConfig>\n <LanguageEntryList />\n </>\n );\n};\n"],"names":["Menu","AdminConfig","Extension","getLink","useRouter","link","Routes","LANGUAGE_MODEL_ID","RegisterFeature","ListLanguagesFeature","SecurityPermission","HasPermission","LanguageEntryList"],"mappings":";;;;;;;AASA,MAAM,EAAEA,MAAAA,IAAI,EAAE,GAAGC;AAEV,MAAMC,YAAY;IACrB,MAAM,EAAEC,OAAO,EAAE,GAAGC;IAEpB,MAAMC,OAAOF,QAAQG,OAAO,cAAc,CAAC,IAAI,EAAE;QAAE,SAASC;IAAkB;IAE9E,OAAO,WAAP,GACI,wDACI,oBAACC,iBAAeA;QAAC,SAASC;sBAC1B,oBAACC,oBAAkBA,OAAAA,WAAAA,GACnB,oBAACT,aAAWA,MAAAA,WAAAA,GACR,oBAACU,eAAaA;QAAC,MAAM;qBACjB,oBAACX,MAAIA;QACD,QAAQ;QACR,MAAK;QACL,uBAAS,oBAACA,KAAK,IAAI;YAAC,MAAK;YAAY,IAAIK;;wBAIrD,oBAACO,mBAAiBA;AAG9B"}
1
+ {"version":3,"file":"admin/Extension.js","sources":["../../src/admin/Extension.tsx"],"sourcesContent":["import React from \"react\";\nimport { AdminConfig } from \"@webiny/app-admin\";\nimport { HasPermission } from \"@webiny/app-admin\";\nimport { RegisterFeature } from \"@webiny/app-admin\";\nimport { useFeatureFlags } from \"@webiny/app-admin\";\nimport { useRouter } from \"@webiny/app-admin\";\nimport { Routes } from \"@webiny/app-headless-cms\";\nimport { LANGUAGE_MODEL_ID } from \"~/shared/constants.js\";\nimport { SecurityPermission } from \"./SecurityPermission.js\";\nimport { LanguageEntryList } from \"~/admin/LanguageEntryList.js\";\nimport { ListLanguagesFeature } from \"./features/listLanguages/index.js\";\n\nconst { Menu } = AdminConfig;\n\nexport const Extension = () => {\n const { getLink } = useRouter();\n const featureFlags = useFeatureFlags();\n\n if (!featureFlags.isEnabled(\"languages\")) {\n return null;\n }\n\n const link = getLink(Routes.ContentEntries.List, { modelId: LANGUAGE_MODEL_ID });\n\n return (\n <>\n <RegisterFeature feature={ListLanguagesFeature} />\n <SecurityPermission />\n <AdminConfig>\n <HasPermission name={\"languages.*\"}>\n <Menu\n parent={\"settings.system\"}\n name=\"languages\"\n element={<Menu.Link text=\"Languages\" to={link} />}\n />\n </HasPermission>\n </AdminConfig>\n <LanguageEntryList />\n </>\n );\n};\n"],"names":["Menu","AdminConfig","Extension","getLink","useRouter","featureFlags","useFeatureFlags","link","Routes","LANGUAGE_MODEL_ID","RegisterFeature","ListLanguagesFeature","SecurityPermission","HasPermission","LanguageEntryList"],"mappings":";;;;;;;AAYA,MAAM,EAAEA,MAAAA,IAAI,EAAE,GAAGC;AAEV,MAAMC,YAAY;IACrB,MAAM,EAAEC,OAAO,EAAE,GAAGC;IACpB,MAAMC,eAAeC;IAErB,IAAI,CAACD,aAAa,SAAS,CAAC,cACxB,OAAO;IAGX,MAAME,OAAOJ,QAAQK,OAAO,cAAc,CAAC,IAAI,EAAE;QAAE,SAASC;IAAkB;IAE9E,OAAO,WAAP,GACI,wDACI,oBAACC,iBAAeA;QAAC,SAASC;sBAC1B,oBAACC,oBAAkBA,OAAAA,WAAAA,GACnB,oBAACX,aAAWA,MAAAA,WAAAA,GACR,oBAACY,eAAaA;QAAC,MAAM;qBACjB,oBAACb,MAAIA;QACD,QAAQ;QACR,MAAK;QACL,uBAAS,oBAACA,KAAK,IAAI;YAAC,MAAK;YAAY,IAAIO;;wBAIrD,oBAACO,mBAAiBA;AAG9B"}
package/api/Extension.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
+ import { FeatureFlags } from "@webiny/api-core/features/featureFlags/abstractions.js";
2
3
  import LanguageModel from "./domain/LanguageModel.js";
3
4
  import { EnsureSingleDefaultLanguageFeature } from "./features/EnsureSingleDefaultLanguage/feature.js";
4
5
  import { GetDefaultLanguageFeature } from "./features/GetDefaultLanguage/feature.js";
@@ -10,6 +11,7 @@ import { LanguagesPermissionsFeature } from "./features/Permissions/feature.js";
10
11
  const Extension = createFeature({
11
12
  name: "Languages",
12
13
  register (container) {
14
+ if (!container.resolve(FeatureFlags).get().isEnabled("languages")) return;
13
15
  container.register(LanguageModel);
14
16
  EnsureSingleDefaultLanguageFeature.register(container);
15
17
  GetDefaultLanguageFeature.register(container);
@@ -1 +1 @@
1
- {"version":3,"file":"api/Extension.js","sources":["../../src/api/Extension.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport LanguageModel from \"./domain/LanguageModel.js\";\nimport { EnsureSingleDefaultLanguageFeature } from \"./features/EnsureSingleDefaultLanguage/feature.js\";\nimport { GetDefaultLanguageFeature } from \"./features/GetDefaultLanguage/feature.js\";\nimport { GetLanguageByCodeFeature } from \"./features/GetLanguageByCode/feature.js\";\nimport { ListLanguagesFeature } from \"./features/ListLanguages/feature.js\";\nimport { LanguagesGraphQLSchema } from \"./graphql/LanguagesGraphQLSchema.js\";\nimport { AddCmsPermissionsFeature } from \"~/api/features/AddCmsPermissions/feature.js\";\nimport { LanguagesPermissionsFeature } from \"~/api/features/Permissions/feature.js\";\n\nexport const Extension = createFeature({\n name: \"Languages\",\n register(container) {\n container.register(LanguageModel);\n\n // Features\n EnsureSingleDefaultLanguageFeature.register(container);\n GetDefaultLanguageFeature.register(container);\n GetLanguageByCodeFeature.register(container);\n ListLanguagesFeature.register(container);\n AddCmsPermissionsFeature.register(container);\n LanguagesPermissionsFeature.register(container);\n\n // GraphQL\n container.register(LanguagesGraphQLSchema);\n }\n});\n"],"names":["Extension","createFeature","container","LanguageModel","EnsureSingleDefaultLanguageFeature","GetDefaultLanguageFeature","GetLanguageByCodeFeature","ListLanguagesFeature","AddCmsPermissionsFeature","LanguagesPermissionsFeature","LanguagesGraphQLSchema"],"mappings":";;;;;;;;;AAUO,MAAMA,YAAYC,cAAc;IACnC,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC;QAGnBC,mCAAmC,QAAQ,CAACF;QAC5CG,0BAA0B,QAAQ,CAACH;QACnCI,yBAAyB,QAAQ,CAACJ;QAClCK,qBAAqB,QAAQ,CAACL;QAC9BM,yBAAyB,QAAQ,CAACN;QAClCO,4BAA4B,QAAQ,CAACP;QAGrCA,UAAU,QAAQ,CAACQ;IACvB;AACJ"}
1
+ {"version":3,"file":"api/Extension.js","sources":["../../src/api/Extension.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { FeatureFlags } from \"@webiny/api-core/features/featureFlags/abstractions.js\";\nimport LanguageModel from \"./domain/LanguageModel.js\";\nimport { EnsureSingleDefaultLanguageFeature } from \"./features/EnsureSingleDefaultLanguage/feature.js\";\nimport { GetDefaultLanguageFeature } from \"./features/GetDefaultLanguage/feature.js\";\nimport { GetLanguageByCodeFeature } from \"./features/GetLanguageByCode/feature.js\";\nimport { ListLanguagesFeature } from \"./features/ListLanguages/feature.js\";\nimport { LanguagesGraphQLSchema } from \"./graphql/LanguagesGraphQLSchema.js\";\nimport { AddCmsPermissionsFeature } from \"~/api/features/AddCmsPermissions/feature.js\";\nimport { LanguagesPermissionsFeature } from \"~/api/features/Permissions/feature.js\";\n\nexport const Extension = createFeature({\n name: \"Languages\",\n register(container) {\n /*\n * Register-time gate on the effective feature flags (project config && live WCP license).\n * Nothing is registered when languages are off, so the model and its GraphQL schema do not\n * exist for that project.\n */\n if (!container.resolve(FeatureFlags).get().isEnabled(\"languages\")) {\n return;\n }\n\n container.register(LanguageModel);\n\n // Features\n EnsureSingleDefaultLanguageFeature.register(container);\n GetDefaultLanguageFeature.register(container);\n GetLanguageByCodeFeature.register(container);\n ListLanguagesFeature.register(container);\n AddCmsPermissionsFeature.register(container);\n LanguagesPermissionsFeature.register(container);\n\n // GraphQL\n container.register(LanguagesGraphQLSchema);\n }\n});\n"],"names":["Extension","createFeature","container","FeatureFlags","LanguageModel","EnsureSingleDefaultLanguageFeature","GetDefaultLanguageFeature","GetLanguageByCodeFeature","ListLanguagesFeature","AddCmsPermissionsFeature","LanguagesPermissionsFeature","LanguagesGraphQLSchema"],"mappings":";;;;;;;;;;AAWO,MAAMA,YAAYC,cAAc;IACnC,MAAM;IACN,UAASC,SAAS;QAMd,IAAI,CAACA,UAAU,OAAO,CAACC,cAAc,GAAG,GAAG,SAAS,CAAC,cACjD;QAGJD,UAAU,QAAQ,CAACE;QAGnBC,mCAAmC,QAAQ,CAACH;QAC5CI,0BAA0B,QAAQ,CAACJ;QACnCK,yBAAyB,QAAQ,CAACL;QAClCM,qBAAqB,QAAQ,CAACN;QAC9BO,yBAAyB,QAAQ,CAACP;QAClCQ,4BAA4B,QAAQ,CAACR;QAGrCA,UAAU,QAAQ,CAACS;IACvB;AACJ"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/languages",
3
- "version": "0.0.0-unstable.5387e5f7c8",
3
+ "version": "0.0.0-unstable.7c2def32a7",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
6
  "exports": {
@@ -15,30 +15,30 @@
15
15
  "author": "Webiny Ltd.",
16
16
  "license": "Webiny Enterprise",
17
17
  "dependencies": {
18
- "@webiny/admin-ui": "0.0.0-unstable.5387e5f7c8",
19
- "@webiny/api-core": "0.0.0-unstable.5387e5f7c8",
20
- "@webiny/api-headless-cms": "0.0.0-unstable.5387e5f7c8",
21
- "@webiny/app": "0.0.0-unstable.5387e5f7c8",
22
- "@webiny/app-admin": "0.0.0-unstable.5387e5f7c8",
23
- "@webiny/app-headless-cms": "0.0.0-unstable.5387e5f7c8",
24
- "@webiny/feature": "0.0.0-unstable.5387e5f7c8",
25
- "@webiny/icons": "0.0.0-unstable.5387e5f7c8",
26
- "@webiny/project": "0.0.0-unstable.5387e5f7c8",
27
- "@webiny/project-aws": "0.0.0-unstable.5387e5f7c8",
18
+ "@webiny/admin-ui": "0.0.0-unstable.7c2def32a7",
19
+ "@webiny/api-core": "0.0.0-unstable.7c2def32a7",
20
+ "@webiny/api-headless-cms": "0.0.0-unstable.7c2def32a7",
21
+ "@webiny/app": "0.0.0-unstable.7c2def32a7",
22
+ "@webiny/app-admin": "0.0.0-unstable.7c2def32a7",
23
+ "@webiny/app-headless-cms": "0.0.0-unstable.7c2def32a7",
24
+ "@webiny/feature": "0.0.0-unstable.7c2def32a7",
25
+ "@webiny/icons": "0.0.0-unstable.7c2def32a7",
26
+ "@webiny/project": "0.0.0-unstable.7c2def32a7",
27
+ "@webiny/project-aws": "0.0.0-unstable.7c2def32a7",
28
28
  "graphql": "16.14.2",
29
29
  "mobx": "7.0.3",
30
30
  "react": "18.3.1",
31
31
  "react-dom": "18.3.1"
32
32
  },
33
33
  "devDependencies": {
34
- "@webiny/api-core-testing": "0.0.0-unstable.5387e5f7c8",
35
- "@webiny/api-graphql": "0.0.0-unstable.5387e5f7c8",
36
- "@webiny/build-tools": "0.0.0-unstable.5387e5f7c8",
37
- "@webiny/db-dynamodb": "0.0.0-unstable.5387e5f7c8",
34
+ "@webiny/api-core-testing": "0.0.0-unstable.7c2def32a7",
35
+ "@webiny/api-graphql": "0.0.0-unstable.7c2def32a7",
36
+ "@webiny/build-tools": "0.0.0-unstable.7c2def32a7",
37
+ "@webiny/db-dynamodb": "0.0.0-unstable.7c2def32a7",
38
38
  "@webiny/di": "2.0.0",
39
- "@webiny/event-handler-core": "0.0.0-unstable.5387e5f7c8",
40
- "@webiny/handler": "0.0.0-unstable.5387e5f7c8",
41
- "@webiny/wcp": "0.0.0-unstable.5387e5f7c8",
39
+ "@webiny/event-handler-core": "0.0.0-unstable.7c2def32a7",
40
+ "@webiny/handler": "0.0.0-unstable.7c2def32a7",
41
+ "@webiny/wcp": "0.0.0-unstable.7c2def32a7",
42
42
  "rimraf": "6.1.3",
43
43
  "typescript": "7.0.2",
44
44
  "vitest": "4.1.11"