@alauda-fe/plugin-sdk 0.0.16 → 0.0.18

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.
@@ -1,15 +1,18 @@
1
- import { getUserLanguage, isBuiltInLanguage, } from '@alauda-fe/common';
1
+ import { FALLBACK_LANGUAGE, getUserLanguage, isBuiltInLanguage, } from '@alauda-fe/common';
2
2
  import { satisfies } from 'compare-versions';
3
3
  import { loadExtensions } from './extensions-loader';
4
4
  import { translateScope } from './utils';
5
- let extensions;
5
+ let _extensions;
6
6
  let extensionTranslations;
7
+ export function getAllExtensions() {
8
+ return _extensions || [];
9
+ }
7
10
  export function getAppExtensions(type, cluster) {
8
11
  const types = Array.isArray(type) ? type : [type];
9
- if (!extensions) {
12
+ if (!_extensions) {
10
13
  throw new Error('Extensions not loaded');
11
14
  }
12
- return extensions.filter(ext => {
15
+ return _extensions.filter(ext => {
13
16
  if (ext.cluster && cluster && ext.cluster !== cluster) {
14
17
  return false;
15
18
  }
@@ -20,7 +23,8 @@ export function getAppExtensionTranslations() {
20
23
  return extensionTranslations;
21
24
  }
22
25
  export async function setupAppExtensions(host, hostVersion) {
23
- extensions = (await loadExtensions()).filter(ext => {
26
+ const allExtensions = await loadExtensions();
27
+ _extensions = allExtensions.filter(ext => {
24
28
  if (!ext.type.startsWith('console-*/') &&
25
29
  !ext.type.startsWith(host + '/')) {
26
30
  return false;
@@ -34,13 +38,14 @@ export async function setupAppExtensions(host, hostVersion) {
34
38
  }
35
39
  return isVersionMatch;
36
40
  });
37
- window.__alauda_extensions = extensions;
41
+ // for debug
42
+ window.__alauda_extensions = _extensions;
38
43
  extensionTranslations = await loadTranslations();
39
- return extensions;
44
+ return _extensions;
40
45
  }
41
46
  async function loadTranslations() {
42
47
  const lang = getUserLanguage();
43
- const entrypoints = extensions.reduce((acc, curr) => {
48
+ const entrypoints = _extensions.reduce((acc, curr) => {
44
49
  acc[curr.entrypoint] = {
45
50
  scope: translateScope(curr, lang),
46
51
  };
@@ -55,21 +60,27 @@ async function loadTranslations() {
55
60
  }));
56
61
  }
57
62
  return await Promise.all(Object.entries(entrypoints).map(([entrypoint, { scope }]) => Promise.all([
58
- fetchI18nFile(`${entrypoint}/assets/i18n/en.json`),
63
+ fetchI18nFile(`${entrypoint}/assets/i18n/${FALLBACK_LANGUAGE}.json`),
59
64
  fetchI18nFile(`/console-i18n/${lang}/${scope}.json`),
60
65
  ]).then(([en, other]) => ({
66
+ [FALLBACK_LANGUAGE]: { [scope]: en },
61
67
  [lang]: {
62
- [scope]: Object.assign(en, other),
68
+ [scope]: other,
63
69
  },
64
70
  }))));
65
71
  }
66
72
  function fetchI18nFile(path) {
67
73
  return fetch(path)
68
- .then(res => res.json())
74
+ .then(res => {
75
+ if (!res.ok) {
76
+ throw new Error(`HTTP ${res.status}: ${res.statusText}`);
77
+ }
78
+ return res.json();
79
+ })
69
80
  .catch(err => {
70
81
  console.error(`Failed to load plugin i18n file, ${path}`);
71
82
  console.error(err);
72
- return {};
83
+ return null;
73
84
  });
74
85
  }
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWV4dGVuc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsdWdpbi1zZGsvc3JjL2xpYi9hcHAtZXh0ZW5zaW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsZUFBZSxFQUNmLGlCQUFpQixHQUVsQixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU3QyxPQUFPLEVBQWEsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUV6QyxJQUFJLFVBQXVCLENBQUM7QUFFNUIsSUFBSSxxQkFBcUMsQ0FBQztBQUUxQyxNQUFNLFVBQVUsZ0JBQWdCLENBQzlCLElBQXVCLEVBQ3ZCLE9BQWdCO0lBRWhCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFDRCxPQUFPLFVBQVUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDN0IsSUFBSSxHQUFHLENBQUMsT0FBTyxJQUFJLE9BQU8sSUFBSSxHQUFHLENBQUMsT0FBTyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3RELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQyxDQUF3QixDQUFDO0FBQzVCLENBQUM7QUFFRCxNQUFNLFVBQVUsMkJBQTJCO0lBQ3pDLE9BQU8scUJBQXFCLENBQUM7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QyxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEIsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNOLENBQUMsS0FBSyxDQUFDLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDO1NBQ2xDO0tBQ0YsQ0FBQyxDQUFDLENBQ0osQ0FDRixDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLElBQVk7SUFDakMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDO1NBQ2YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3ZCLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsb0NBQW9DLElBQUksRUFBRSxDQUFDLENBQUM7UUFDMUQsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuQixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGdldFVzZXJMYW5ndWFnZSxcbiAgaXNCdWlsdEluTGFuZ3VhZ2UsXG4gIFRyYW5zbGF0aW9ucyxcbn0gZnJvbSAnQGFsYXVkYS1mZS9jb21tb24nO1xuaW1wb3J0IHsgc2F0aXNmaWVzIH0gZnJvbSAnY29tcGFyZS12ZXJzaW9ucyc7XG5cbmltcG9ydCB7IEV4dGVuc2lvbiwgbG9hZEV4dGVuc2lvbnMgfSBmcm9tICcuL2V4dGVuc2lvbnMtbG9hZGVyJztcbmltcG9ydCB7IHRyYW5zbGF0ZVNjb3BlIH0gZnJvbSAnLi91dGlscyc7XG5cbmxldCBleHRlbnNpb25zOiBFeHRlbnNpb25bXTtcblxubGV0IGV4dGVuc2lvblRyYW5zbGF0aW9uczogVHJhbnNsYXRpb25zW107XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBcHBFeHRlbnNpb25zPFQgPSBhbnk+KFxuICB0eXBlOiBzdHJpbmcgfCBzdHJpbmdbXSxcbiAgY2x1c3Rlcj86IHN0cmluZyxcbikge1xuICBjb25zdCB0eXBlcyA9IEFycmF5LmlzQXJyYXkodHlwZSkgPyB0eXBlIDogW3R5cGVdO1xuICBpZiAoIWV4dGVuc2lvbnMpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0V4dGVuc2lvbnMgbm90IGxvYWRlZCcpO1xuICB9XG4gIHJldHVybiBleHRlbnNpb25zLmZpbHRlcihleHQgPT4ge1xuICAgIGlmIChleHQuY2x1c3RlciAmJiBjbHVzdGVyICYmIGV4dC5jbHVzdGVyICE9PSBjbHVzdGVyKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGVzLmluY2x1ZGVzKGV4dC50eXBlKTtcbiAgfSkgYXMgQXJyYXk8RXh0ZW5zaW9uPFQ+Pjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFwcEV4dGVuc2lvblRyYW5zbGF0aW9ucygpIHtcbiAgcmV0dXJuIGV4dGVuc2lvblRyYW5zbGF0aW9ucztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNldHVwQXBwRXh0ZW5zaW9ucyhob3N0OiBzdHJpbmcsIGhvc3RWZXJzaW9uPzogc3RyaW5nKSB7XG4gIGV4dGVuc2lvbnMgPSAoYXdhaXQgbG9hZEV4dGVuc2lvbnMoKSkuZmlsdGVyKGV4dCA9PiB7XG4gICAgaWYgKFxuICAgICAgIWV4dC50eXBlLnN0YXJ0c1dpdGgoJ2NvbnNvbGUtKi8nKSAmJlxuICAgICAgIWV4dC50eXBlLnN0YXJ0c1dpdGgoaG9zdCArICcvJylcbiAgICApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCByZXF1aXJlZFZlcnNpb24gPVxuICAgICAgZXh0LmRlcGVuZGVuY2llcz8uW2hvc3RdIHx8IGV4dC5kZXBlbmRlbmNpZXM/LlsnY29uc29sZS0qJ107XG5cbiAgICBjb25zdCBpc1ZlcnNpb25NYXRjaCA9XG4gICAgICBob3N0VmVyc2lvbiAmJiByZXF1aXJlZFZlcnNpb25cbiAgICAgICAgPyBzYXRpc2ZpZXMoaG9zdFZlcnNpb24sIHJlcXVpcmVkVmVyc2lvbilcbiAgICAgICAgOiB0cnVlO1xuXG4gICAgaWYgKCFpc1ZlcnNpb25NYXRjaCkge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgRXh0ZW5zaW9uIFwiJHtleHQucGx1Z2luTmFtZX1+JHtleHQuYXBwTmFtZX1cIiAoY2x1c3RlcjogJHtleHQuY2x1c3RlciB8fCAnZGVmYXVsdCd9KSBob3N0IHZlcnNpb24gbWlzbWF0Y2g6IHJlcXVpcmVkICR7cmVxdWlyZWRWZXJzaW9ufSwgY3VycmVudCBob3N0IHZlcnNpb24gJHtob3N0VmVyc2lvbn1gLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaXNWZXJzaW9uTWF0Y2g7XG4gIH0pO1xuXG4gICh3aW5kb3cgYXMgYW55KS5fX2FsYXVkYV9leHRlbnNpb25zID0gZXh0ZW5zaW9ucztcblxuICBleHRlbnNpb25UcmFuc2xhdGlvbnMgPSBhd2FpdCBsb2FkVHJhbnNsYXRpb25zKCk7XG5cbiAgcmV0dXJuIGV4dGVuc2lvbnM7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGxvYWRUcmFuc2xhdGlvbnMoKTogUHJvbWlzZTxcbiAgQXJyYXk8eyBbbGFuZzogc3RyaW5nXTogVHJhbnNsYXRpb25zIH0+XG4+IHtcbiAgY29uc3QgbGFuZyA9IGdldFVzZXJMYW5ndWFnZSgpO1xuXG4gIGNvbnN0IGVudHJ5cG9pbnRzID0gZXh0ZW5zaW9ucy5yZWR1Y2UoXG4gICAgKGFjYywgY3VycikgPT4ge1xuICAgICAgYWNjW2N1cnIuZW50cnlwb2ludF0gPSB7XG4gICAgICAgIHNjb3BlOiB0cmFuc2xhdGVTY29wZShjdXJyLCBsYW5nKSxcbiAgICAgIH07XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sXG4gICAge30gYXMgUmVjb3JkPHN0cmluZywgeyBzY29wZTogc3RyaW5nIH0+LFxuICApO1xuXG4gIGlmIChpc0J1aWx0SW5MYW5ndWFnZShsYW5nKSkge1xuICAgIHJldHVybiBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIE9iamVjdC5lbnRyaWVzKGVudHJ5cG9pbnRzKS5tYXAoKFtlbnRyeXBvaW50LCB7IHNjb3BlIH1dKSA9PiB7XG4gICAgICAgIGNvbnN0IHBhdGggPSBgJHtlbnRyeXBvaW50fS9hc3NldHMvaTE4bi8ke2xhbmd9Lmpzb25gO1xuICAgICAgICByZXR1cm4gZmV0Y2hJMThuRmlsZShwYXRoKS50aGVuKHRyYW5zbGF0aW9ucyA9PiAoe1xuICAgICAgICAgIFtsYW5nXTogeyBbc2NvcGVdOiB0cmFuc2xhdGlvbnMgfSxcbiAgICAgICAgfSkpO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCBQcm9taXNlLmFsbChcbiAgICBPYmplY3QuZW50cmllcyhlbnRyeXBvaW50cykubWFwKChbZW50cnlwb2ludCwgeyBzY29wZSB9XSkgPT5cbiAgICAgIFByb21pc2UuYWxsKFtcbiAgICAgICAgZmV0Y2hJMThuRmlsZShgJHtlbnRyeXBvaW50fS9hc3NldHMvaTE4bi9lbi5qc29uYCksXG4gICAgICAgIGZldGNoSTE4bkZpbGUoYC9jb25zb2xlLWkxOG4vJHtsYW5nfS8ke3Njb3BlfS5qc29uYCksXG4gICAgICBdKS50aGVuKChbZW4sIG90aGVyXSkgPT4gKHtcbiAgICAgICAgW2xhbmddOiB7XG4gICAgICAgICAgW3Njb3BlXTogT2JqZWN0LmFzc2lnbihlbiwgb3RoZXIpLFxuICAgICAgICB9LFxuICAgICAgfSkpLFxuICAgICksXG4gICk7XG59XG5cbmZ1bmN0aW9uIGZldGNoSTE4bkZpbGUocGF0aDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2xhdGlvbnM+IHtcbiAgcmV0dXJuIGZldGNoKHBhdGgpXG4gICAgLnRoZW4ocmVzID0+IHJlcy5qc29uKCkpXG4gICAgLmNhdGNoKGVyciA9PiB7XG4gICAgICBjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gbG9hZCBwbHVnaW4gaTE4biBmaWxlLCAke3BhdGh9YCk7XG4gICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgICByZXR1cm4ge307XG4gICAgfSk7XG59XG4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWV4dGVuc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsdWdpbi1zZGsvc3JjL2xpYi9hcHAtZXh0ZW5zaW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixpQkFBaUIsR0FFbEIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFN0MsT0FBTyxFQUFhLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFekMsSUFBSSxXQUF3QixDQUFDO0FBRTdCLElBQUkscUJBQXFDLENBQUM7QUFFMUMsTUFBTSxVQUFVLGdCQUFnQjtJQUM5QixPQUFPLFdBQVcsSUFBSSxFQUFFLENBQUM7QUFDM0IsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIsSUFBdUIsRUFDdkIsT0FBZ0I7SUFFaEIsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUNELE9BQU8sV0FBVyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUM5QixJQUFJLEdBQUcsQ0FBQyxPQUFPLElBQUksT0FBTyxJQUFJLEdBQUcsQ0FBQyxPQUFPLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDdEQsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJ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QUFDLEdBQUcsVUFBVSxnQkFBZ0IsaUJBQWlCLE9BQU8sQ0FBQztRQUNwRSxhQUFhLENBQUMsaUJBQWlCLElBQUksSUFBSSxLQUFLLE9BQU8sQ0FBQztLQUNyRCxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEIsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLEVBQUU7UUFDcEMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNOLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSztTQUNmO0tBQ0YsQ0FBQyxDQUFDLENBQ0osQ0FDRixDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLElBQVk7SUFDakMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDO1NBQ2YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1FBQ1YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNaLE1BQU0sSUFBSSxLQUFLLENBQUMsUUFBUSxHQUFHLENBQUMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQzNELENBQUM7UUFDRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwQixDQUFDLENBQUM7U0FDRCxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLG9DQUFvQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzFELE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBGQUxMQkFDS19MQU5HVUFHRSxcbiAgZ2V0VXNlckxhbmd1YWdlLFxuICBpc0J1aWx0SW5MYW5ndWFnZSxcbiAgVHJhbnNsYXRpb25zLFxufSBmcm9tICdAYWxhdWRhLWZlL2NvbW1vbic7XG5pbXBvcnQgeyBzYXRpc2ZpZXMgfSBmcm9tICdjb21wYXJlLXZlcnNpb25zJztcblxuaW1wb3J0IHsgRXh0ZW5zaW9uLCBsb2FkRXh0ZW5zaW9ucyB9IGZyb20gJy4vZXh0ZW5zaW9ucy1sb2FkZXInO1xuaW1wb3J0IHsgdHJhbnNsYXRlU2NvcGUgfSBmcm9tICcuL3V0aWxzJztcblxubGV0IF9leHRlbnNpb25zOiBFeHRlbnNpb25bXTtcblxubGV0IGV4dGVuc2lvblRyYW5zbGF0aW9uczogVHJhbnNsYXRpb25zW107XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRBbGxFeHRlbnNpb25zKCk6IEV4dGVuc2lvbltdIHtcbiAgcmV0dXJuIF9leHRlbnNpb25zIHx8IFtdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXBwRXh0ZW5zaW9uczxUID0gYW55PihcbiAgdHlwZTogc3RyaW5nIHwgc3RyaW5nW10sXG4gIGNsdXN0ZXI/OiBzdHJpbmcsXG4pIHtcbiAgY29uc3QgdHlwZXMgPSBBcnJheS5pc0FycmF5KHR5cGUpID8gdHlwZSA6IFt0eXBlXTtcbiAgaWYgKCFfZXh0ZW5zaW9ucykge1xuICAgIHRocm93IG5ldyBFcnJvcignRXh0ZW5zaW9ucyBub3QgbG9hZGVkJyk7XG4gIH1cbiAgcmV0dXJuIF9leHRlbnNpb25zLmZpbHRlcihleHQgPT4ge1xuICAgIGlmIChleHQuY2x1c3RlciAmJiBjbHVzdGVyICYmIGV4dC5jbHVzdGVyICE9PSBjbHVzdGVyKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHR5cGVzLmluY2x1ZGVzKGV4dC50eXBlKTtcbiAgfSkgYXMgQXJyYXk8RXh0ZW5zaW9uPFQ+Pjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEFwcEV4dGVuc2lvblRyYW5zbGF0aW9ucygpIHtcbiAgcmV0dXJuIGV4dGVuc2lvblRyYW5zbGF0aW9ucztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNldHVwQXBwRXh0ZW5zaW9ucyhob3N0OiBzdHJpbmcsIGhvc3RWZXJzaW9uPzogc3RyaW5nKSB7XG4gIGNvbnN0IGFsbEV4dGVuc2lvbnMgPSBhd2FpdCBsb2FkRXh0ZW5zaW9ucygpO1xuXG4gIF9leHRlbnNpb25zID0gYWxsRXh0ZW5zaW9ucy5maWx0ZXIoZXh0ID0+IHtcbiAgICBpZiAoXG4gICAgICAhZXh0LnR5cGUuc3RhcnRzV2l0aCgnY29uc29sZS0qLycpICYmXG4gICAgICAhZXh0LnR5cGUuc3RhcnRzV2l0aChob3N0ICsgJy8nKVxuICAgICkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbnN0IHJlcXVpcmVkVmVyc2lvbiA9XG4gICAgICBleHQuZGVwZW5kZW5jaWVzPy5baG9zdF0gfHwgZXh0LmRlcGVuZGVuY2llcz8uWydjb25zb2xlLSonXTtcblxuICAgIGNvbnN0IGlzVmVyc2lvbk1hdGNoID1cbiAgICAgIGhvc3RWZXJzaW9uICYmIHJlcXVpcmVkVmVyc2lvblxuICAgICAgICA/IHNhdGlzZmllcyhob3N0VmVyc2lvbiwgcmVxdWlyZWRWZXJzaW9uKVxuICAgICAgICA6IHRydWU7XG5cbiAgICBpZiAoIWlzVmVyc2lvbk1hdGNoKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBFeHRlbnNpb24gXCIke2V4dC5wbHVnaW5OYW1lfX4ke2V4dC5hcHBOYW1lfVwiIChjbHVzdGVyOiAke2V4dC5jbHVzdGVyIHx8ICdkZWZhdWx0J30pIGhvc3QgdmVyc2lvbiBtaXNtYXRjaDogcmVxdWlyZWQgJHtyZXF1aXJlZFZlcnNpb259LCBjdXJyZW50IGhvc3QgdmVyc2lvbiAke2hvc3RWZXJzaW9ufWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBpc1ZlcnNpb25NYXRjaDtcbiAgfSk7XG5cbiAgLy8gZm9yIGRlYnVnXG4gICh3aW5kb3cgYXMgYW55KS5fX2FsYXVkYV9leHRlbnNpb25zID0gX2V4dGVuc2lvbnM7XG5cbiAgZXh0ZW5zaW9uVHJhbnNsYXRpb25zID0gYXdhaXQgbG9hZFRyYW5zbGF0aW9ucygpO1xuXG4gIHJldHVybiBfZXh0ZW5zaW9ucztcbn1cblxuYXN5bmMgZnVuY3Rpb24gbG9hZFRyYW5zbGF0aW9ucygpOiBQcm9taXNlPFxuICBBcnJheTx7IFtsYW5nOiBzdHJpbmddOiBUcmFuc2xhdGlvbnMgfT5cbj4ge1xuICBjb25zdCBsYW5nID0gZ2V0VXNlckxhbmd1YWdlKCk7XG5cbiAgY29uc3QgZW50cnlwb2ludHMgPSBfZXh0ZW5zaW9ucy5yZWR1Y2UoXG4gICAgKGFjYywgY3VycikgPT4ge1xuICAgICAgYWNjW2N1cnIuZW50cnlwb2ludF0gPSB7XG4gICAgICAgIHNjb3BlOiB0cmFuc2xhdGVTY29wZShjdXJyLCBsYW5nKSxcbiAgICAgIH07XG4gICAgICByZXR1cm4gYWNjO1xuICAgIH0sXG4gICAge30gYXMgUmVjb3JkPHN0cmluZywgeyBzY29wZTogc3RyaW5nIH0+LFxuICApO1xuXG4gIGlmIChpc0J1aWx0SW5MYW5ndWFnZShsYW5nKSkge1xuICAgIHJldHVybiBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIE9iamVjdC5lbnRyaWVzKGVudHJ5cG9pbnRzKS5tYXAoKFtlbnRyeXBvaW50LCB7IHNjb3BlIH1dKSA9PiB7XG4gICAgICAgIGNvbnN0IHBhdGggPSBgJHtlbnRyeXBvaW50fS9hc3NldHMvaTE4bi8ke2xhbmd9Lmpzb25gO1xuICAgICAgICByZXR1cm4gZmV0Y2hJMThuRmlsZShwYXRoKS50aGVuKHRyYW5zbGF0aW9ucyA9PiAoe1xuICAgICAgICAgIFtsYW5nXTogeyBbc2NvcGVdOiB0cmFuc2xhdGlvbnMgfSxcbiAgICAgICAgfSkpO1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCBQcm9taXNlLmFsbChcbiAgICBPYmplY3QuZW50cmllcyhlbnRyeXBvaW50cykubWFwKChbZW50cnlwb2ludCwgeyBzY29wZSB9XSkgPT5cbiAgICAgIFByb21pc2UuYWxsKFtcbiAgICAgICAgZmV0Y2hJMThuRmlsZShgJHtlbnRyeXBvaW50fS9hc3NldHMvaTE4bi8ke0ZBTExCQUNLX0xBTkdVQUdFfS5qc29uYCksXG4gICAgICAgIGZldGNoSTE4bkZpbGUoYC9jb25zb2xlLWkxOG4vJHtsYW5nfS8ke3Njb3BlfS5qc29uYCksXG4gICAgICBdKS50aGVuKChbZW4sIG90aGVyXSkgPT4gKHtcbiAgICAgICAgW0ZBTExCQUNLX0xBTkdVQUdFXTogeyBbc2NvcGVdOiBlbiB9LFxuICAgICAgICBbbGFuZ106IHtcbiAgICAgICAgICBbc2NvcGVdOiBvdGhlcixcbiAgICAgICAgfSxcbiAgICAgIH0pKSxcbiAgICApLFxuICApO1xufVxuXG5mdW5jdGlvbiBmZXRjaEkxOG5GaWxlKHBhdGg6IHN0cmluZyk6IFByb21pc2U8VHJhbnNsYXRpb25zPiB7XG4gIHJldHVybiBmZXRjaChwYXRoKVxuICAgIC50aGVuKHJlcyA9PiB7XG4gICAgICBpZiAoIXJlcy5vaykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEhUVFAgJHtyZXMuc3RhdHVzfTogJHtyZXMuc3RhdHVzVGV4dH1gKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXMuanNvbigpO1xuICAgIH0pXG4gICAgLmNhdGNoKGVyciA9PiB7XG4gICAgICBjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gbG9hZCBwbHVnaW4gaTE4biBmaWxlLCAke3BhdGh9YCk7XG4gICAgICBjb25zb2xlLmVycm9yKGVycik7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9KTtcbn1cbiJdfQ==
@@ -0,0 +1,47 @@
1
+ import { ChangeDetectionStrategy, Component, input, } from '@angular/core';
2
+ import { getAppExtensions } from '../../app-extensions';
3
+ import { RemoteComponentOutletComponent } from '../../components';
4
+ import * as i0 from "@angular/core";
5
+ function RemoteGlobalEntryPointComponent_For_1_Template(rf, ctx) { if (rf & 1) {
6
+ i0.ɵɵelement(0, "plg-remote-component-outlet", 0);
7
+ } if (rf & 2) {
8
+ const item_r1 = ctx.$implicit;
9
+ i0.ɵɵproperty("entrypoint", item_r1.entrypoint)("expose", item_r1.options.expose)("name", item_r1.options.component);
10
+ } }
11
+ export function getGlobalEntryPoints(scope, _name = '*') {
12
+ return getAppExtensions(['console-*']
13
+ .concat(scope || [])
14
+ .map(scope => `${scope}/page/body/global-entrypoint/item`)).sort((a, b) => -(a.options.index - b.options.index));
15
+ }
16
+ export class RemoteGlobalEntryPointComponent {
17
+ constructor() {
18
+ this.scope = input();
19
+ }
20
+ ngOnInit() {
21
+ this.entryPoints = getGlobalEntryPoints(this.scope());
22
+ }
23
+ static { this.ɵfac = function RemoteGlobalEntryPointComponent_Factory(t) { return new (t || RemoteGlobalEntryPointComponent)(); }; }
24
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RemoteGlobalEntryPointComponent, selectors: [["plg-remote-global-entrypoint"]], inputs: { scope: [1, "scope"] }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 2, vars: 0, consts: [[3, "entrypoint", "expose", "name"]], template: function RemoteGlobalEntryPointComponent_Template(rf, ctx) { if (rf & 1) {
25
+ i0.ɵɵrepeaterCreate(0, RemoteGlobalEntryPointComponent_For_1_Template, 1, 3, "plg-remote-component-outlet", 0, i0.ɵɵrepeaterTrackByIndex);
26
+ } if (rf & 2) {
27
+ i0.ɵɵrepeater(ctx.entryPoints);
28
+ } }, dependencies: [RemoteComponentOutletComponent], encapsulation: 2, changeDetection: 0 }); }
29
+ }
30
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RemoteGlobalEntryPointComponent, [{
31
+ type: Component,
32
+ args: [{
33
+ selector: 'plg-remote-global-entrypoint',
34
+ changeDetection: ChangeDetectionStrategy.OnPush,
35
+ standalone: true,
36
+ imports: [RemoteComponentOutletComponent],
37
+ template: `@for (item of entryPoints; track $index) {
38
+ <plg-remote-component-outlet
39
+ [entrypoint]="item.entrypoint"
40
+ [expose]="item.options.expose"
41
+ [name]="item.options.component"
42
+ ></plg-remote-component-outlet>
43
+ }`,
44
+ }]
45
+ }], null, null); })();
46
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RemoteGlobalEntryPointComponent, { className: "RemoteGlobalEntryPointComponent", filePath: "lib/extension-points/global-entrypoint/components.ts", lineNumber: 40 }); })();
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGx1Z2luLXNkay9zcmMvbGliL2V4dGVuc2lvbi1wb2ludHMvZ2xvYmFsLWVudHJ5cG9pbnQvY29tcG9uZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7OztJQXdCOUQsaURBSStCOzs7SUFEN0IsQUFEQSxBQURBLCtDQUE4QixrQ0FDQSxtQ0FDQzs7QUFqQnJDLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxLQUFhLEVBQUUsUUFBZ0IsR0FBRztJQUNyRSxPQUFPLGdCQUFnQixDQUNyQixDQUFDLFdBQVcsQ0FBQztTQUNWLE1BQU0sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1NBQ25CLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxtQ0FBbUMsQ0FBQyxDQUM3RCxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7QUFDekQsQ0FBQztBQWVELE1BQU0sT0FBTywrQkFBK0I7SUFiNUM7UUFjRSxVQUFLLEdBQUcsS0FBSyxFQUFVLENBQUM7S0FPekI7SUFIQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN4RCxDQUFDO2dHQVBVLCtCQUErQjtvRUFBL0IsK0JBQStCO1lBUi9CLHlJQU1WOztZQU5VLDhCQU1WOzRCQVBTLDhCQUE4Qjs7aUZBUzdCLCtCQUErQjtjQWIzQyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLDhCQUE4QjtnQkFDeEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLFVBQVUsRUFBRSxJQUFJO2dCQUNoQixPQUFPLEVBQUUsQ0FBQyw4QkFBOEIsQ0FBQztnQkFDekMsUUFBUSxFQUFFOzs7Ozs7SUFNUjthQUNIOztrRkFDWSwrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBpbnB1dCxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgZ2V0QXBwRXh0ZW5zaW9ucyB9IGZyb20gJy4uLy4uL2FwcC1leHRlbnNpb25zJztcbmltcG9ydCB7IFJlbW90ZUNvbXBvbmVudE91dGxldENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgRXh0ZW5zaW9uIH0gZnJvbSAnLi4vLi4vZXh0ZW5zaW9ucy1sb2FkZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdsb2JhbEVudHJ5UG9pbnRPcHRpb24ge1xuICBpbmRleD86IG51bWJlcjtcbiAgZXhwb3NlPzogc3RyaW5nO1xuICBjb21wb25lbnQ6IHN0cmluZztcbiAgcGx1Z2luTmFtZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEdsb2JhbEVudHJ5UG9pbnRzKHNjb3BlOiBzdHJpbmcsIF9uYW1lOiBzdHJpbmcgPSAnKicpIHtcbiAgcmV0dXJuIGdldEFwcEV4dGVuc2lvbnM8R2xvYmFsRW50cnlQb2ludE9wdGlvbj4oXG4gICAgWydjb25zb2xlLSonXVxuICAgICAgLmNvbmNhdChzY29wZSB8fCBbXSlcbiAgICAgIC5tYXAoc2NvcGUgPT4gYCR7c2NvcGV9L3BhZ2UvYm9keS9nbG9iYWwtZW50cnlwb2ludC9pdGVtYCksXG4gICkuc29ydCgoYSwgYikgPT4gLShhLm9wdGlvbnMuaW5kZXggLSBiLm9wdGlvbnMuaW5kZXgpKTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncGxnLXJlbW90ZS1nbG9iYWwtZW50cnlwb2ludCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbUmVtb3RlQ29tcG9uZW50T3V0bGV0Q29tcG9uZW50XSxcbiAgdGVtcGxhdGU6IGBAZm9yIChpdGVtIG9mIGVudHJ5UG9pbnRzOyB0cmFjayAkaW5kZXgpIHtcbiAgICA8cGxnLXJlbW90ZS1jb21wb25lbnQtb3V0bGV0XG4gICAgICBbZW50cnlwb2ludF09XCJpdGVtLmVudHJ5cG9pbnRcIlxuICAgICAgW2V4cG9zZV09XCJpdGVtLm9wdGlvbnMuZXhwb3NlXCJcbiAgICAgIFtuYW1lXT1cIml0ZW0ub3B0aW9ucy5jb21wb25lbnRcIlxuICAgID48L3BsZy1yZW1vdGUtY29tcG9uZW50LW91dGxldD5cbiAgfWAsXG59KVxuZXhwb3J0IGNsYXNzIFJlbW90ZUdsb2JhbEVudHJ5UG9pbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBzY29wZSA9IGlucHV0PHN0cmluZz4oKTtcblxuICBlbnRyeVBvaW50czogQXJyYXk8RXh0ZW5zaW9uPEdsb2JhbEVudHJ5UG9pbnRPcHRpb24+PjtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmVudHJ5UG9pbnRzID0gZ2V0R2xvYmFsRW50cnlQb2ludHModGhpcy5zY29wZSgpKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsdWdpbi1zZGsvc3JjL2xpYi9leHRlbnNpb24tcG9pbnRzL2dsb2JhbC1lbnRyeXBvaW50L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzJztcbiJdfQ==
@@ -1,6 +1,7 @@
1
1
  export * from './account-menu';
2
+ export * from './global-entrypoint';
2
3
  export * from './header-actions';
3
4
  export * from './help-menu';
4
5
  export * from './navigation';
5
6
  export * from './route';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsdWdpbi1zZGsvc3JjL2xpYi9leHRlbnNpb24tcG9pbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYWNjb3VudC1tZW51JztcbmV4cG9ydCAqIGZyb20gJy4vaGVhZGVyLWFjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9oZWxwLW1lbnUnO1xuZXhwb3J0ICogZnJvbSAnLi9uYXZpZ2F0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vcm91dGUnO1xuIl19
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BsdWdpbi1zZGsvc3JjL2xpYi9leHRlbnNpb24tcG9pbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvdW50LW1lbnUnO1xuZXhwb3J0ICogZnJvbSAnLi9nbG9iYWwtZW50cnlwb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL2hlYWRlci1hY3Rpb25zJztcbmV4cG9ydCAqIGZyb20gJy4vaGVscC1tZW51JztcbmV4cG9ydCAqIGZyb20gJy4vbmF2aWdhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3JvdXRlJztcbiJdfQ==
@@ -1,10 +1,10 @@
1
- import { attachAuthorizationHeader, isLocalDev } from '@alauda-fe/common';
2
- import { getBootMode, LOCAL_DEV_EXTENSION_INFO } from './utils';
1
+ import { attachAuthorizationHeader } from '@alauda-fe/common';
2
+ import { getBootMode, LOCAL_DEV_EXTENSION_INFO, isLocalEnv } from './utils';
3
3
  export async function loadExtensions(query = {}) {
4
4
  if (getBootMode() === 'safe') {
5
5
  return [];
6
6
  }
7
- return isLocalDev()
7
+ return isLocalEnv()
8
8
  ? await loadDevExtensions(query)
9
9
  : await loadProdExtensions(query);
10
10
  }
@@ -20,6 +20,7 @@ async function loadDevExtensions(query = {}) {
20
20
  ...LOCAL_DEV_EXTENSION_INFO,
21
21
  ...ext,
22
22
  dependencies: plugin.dependencies || {},
23
+ i18nVersion: plugin.i18nVersion,
23
24
  entrypoint: '/dev-plugin',
24
25
  })))
25
26
  .catch(() => {
@@ -28,7 +29,7 @@ async function loadDevExtensions(query = {}) {
28
29
  });
29
30
  }
30
31
  async function loadProdExtensions(query = {}) {
31
- const reqPrefix = isLocalDev() ? '/api-gateway' : '';
32
+ const reqPrefix = isLocalEnv() ? '/api-gateway' : '';
32
33
  const queryString = Object.entries(query)
33
34
  .map(([key, value]) => `${key}=${value.join(',')}`)
34
35
  .join(';');
@@ -54,10 +55,11 @@ async function loadProdExtensions(query = {}) {
54
55
  .replaceAll('/', '-'),
55
56
  entrypoint: `${reqPrefix}/clusters-rewrite/${cluster}${plugin.path}`,
56
57
  dependencies: pluginJson.dependencies || {},
58
+ i18nVersion: pluginJson.i18nVersion,
57
59
  }));
58
60
  }
59
61
  catch (error) {
60
- console.warn(`Failed to parse console-plugin.json for plugin ${plugin.name}:`, error);
62
+ console.error(`Failed to parse console-plugin.json for plugin ${plugin.name}:`, error);
61
63
  return [];
62
64
  }
63
65
  })), []))
@@ -66,4 +68,4 @@ async function loadProdExtensions(query = {}) {
66
68
  return [];
67
69
  });
68
70
  }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5zaW9ucy1sb2FkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsdWdpbi1zZGsvc3JjL2xpYi9leHRlbnNpb25zLWxvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFMUUsT0FBTyxFQUFFLFdBQVcsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUVoRSxNQUFNLENBQUMsS0FBSyxVQUFVLGNBQWMsQ0FBQyxRQUF5QixFQUFFO0lBQzlELElBQUksV0FBVyxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7UUFDN0IsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBQ0QsT0FBTyxVQUFVLEVBQUU7UUFDakIsQ0FBQyxDQUFDLE1BQU0saUJBQWlCLENBQUMsS0FBSyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxNQUFNLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3RDLENBQUM7QUFFRCxLQUFLLFVBQVUsaUJBQWlCLENBQzlCLFFBQXlCLEVBQUU7SUFFM0IsT0FBTyxNQUFNLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQztTQUNsRCxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFDRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwQixDQUFDLENBQUM7U0FDRCxJQUFJLENBQUMsQ0FBQyxNQUFrQixFQUFFLEVBQUUsQ0FDM0IsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzVCLEdBQUcsd0JBQXdCO1FBQzNCLEdBQUcsR0FBRztRQUNOLFlBQVksRUFB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LEVBQUUsQ0FBQztJQUNaLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGF0dGFjaEF1dGhvcml6YXRpb25IZWFkZXIsIGlzTG9jYWxEZXYgfSBmcm9tICdAYWxhdWRhLWZlL2NvbW1vbic7XG5cbmltcG9ydCB7IGdldEJvb3RNb2RlLCBMT0NBTF9ERVZfRVhURU5TSU9OX0lORk8gfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxvYWRFeHRlbnNpb25zKHF1ZXJ5OiBFeHRlbnNpb25zUXVlcnkgPSB7fSkge1xuICBpZiAoZ2V0Qm9vdE1vZGUoKSA9PT0gJ3NhZmUnKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG4gIHJldHVybiBpc0xvY2FsRGV2KClcbiAgICA/IGF3YWl0IGxvYWREZXZFeHRlbnNpb25zKHF1ZXJ5KVxuICAgIDogYXdhaXQgbG9hZFByb2RFeHRlbnNpb25zKHF1ZXJ5KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gbG9hZERldkV4dGVuc2lvbnMoXG4gIHF1ZXJ5OiBFeHRlbnNpb25zUXVlcnkgPSB7fSxcbik6IFByb21pc2U8RXh0ZW5zaW9uW10+IHtcbiAgcmV0dXJuIGF3YWl0IGZldGNoKGAvZGV2LXBsdWdpbi9jb25zb2xlLXBsdWdpbi5qc29uYClcbiAgICAudGhlbihyZXMgPT4ge1xuICAgICAgaWYgKCFyZXMub2spIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggbG9jYWwgZGV2IGV4dGVuc2lvbnMnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXMuanNvbigpO1xuICAgIH0pXG4gICAgLnRoZW4oKHBsdWdpbjogUGx1Z2luSlNPTikgPT5cbiAgICAgIHBsdWdpbi5leHRlbnNpb25zLm1hcChleHQgPT4gKHtcbiAgICAgICAgLi4uTE9DQUxfREVWX0VYVEVOU0lPTl9JTkZPLFxuICAgICAgICAuLi5leHQsXG4gICAgICAgIGRlcGVuZGVuY2llczogcGx1Z2luLmRlcGVuZGVuY2llcyB8fCB7fSxcbiAgICAgICAgZW50cnlwb2ludDogJy9kZXYtcGx1Z2luJyxcbiAgICAgIH0pKSxcbiAgICApXG4gICAgLmNhdGNoKCgpID0+IHtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgJ0ZhaWxlZCB0byBmZXRjaCBsb2NhbCBkZXYgZXh0ZW5zaW9ucywgbG9hZGluZyBwcm9kIGV4dGVuc2lvbnMnLFxuICAgICAgKTtcbiAgICAgIHJldHVybiBsb2FkUHJvZEV4dGVuc2lvbnMocXVlcnkpO1xuICAgIH0pO1xufVxuXG5hc3luYyBmdW5jdGlvbiBsb2FkUHJvZEV4dGVuc2lvbnMoXG4gIHF1ZXJ5OiBFeHRlbnNpb25zUXVlcnkgPSB7fSxcbik6IFByb21pc2U8RXh0ZW5zaW9uW10+IHtcbiAgY29uc3QgcmVxUHJlZml4ID0gaXNMb2NhbERldigpID8gJy9hcGktZ2F0ZXdheScgOiAnJztcbiAgY29uc3QgcXVlcnlTdHJpbmcgPSBPYmplY3QuZW50cmllcyhxdWVyeSlcbiAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IGAke2tleX09JHt2YWx1ZS5qb2luKCcsJyl9YClcbiAgICAuam9pbignOycpO1xuXG4gIHJldHVybiBhd2FpdCBmZXRjaChcbiAgICBgJHtyZXFQcmVmaXh9L2Zyb250ZW5kLXBsdWdpbnMvY2x1c3RlcnMvY29uc29sZS1wbHVnaW5zJHtxdWVyeVN0cmluZyAmJiAnP2ZpbHRlcj0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHF1ZXJ5U3RyaW5nKX1gLFxuICAgIHtcbiAgICAgIGhlYWRlcnM6IGF0dGFjaEF1dGhvcml6YXRpb25IZWFkZXIoKSxcbiAgICB9LFxuICApXG4gICAgLnRoZW4ocmVzID0+IHtcbiAgICAgIGlmICghcmVzLm9rKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGZldGNoIGV4dGVuc2lvbnMnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXMuanNvbigpO1xuICAgIH0pXG4gICAgLnRoZW4oKHJhd1BsdWdpbnM6IFJhd1BsdWdpbnMpID0+XG4gICAgICBPYmplY3QuZW50cmllcyhyYXdQbHVnaW5zKS5yZWR1Y2UoXG4gICAgICAgIChhY2MsIFtjbHVzdGVyLCBwbHVnaW5zXSkgPT5cbiAgICAgICAgICBhY2MuY29uY2F0KFxuICAgICAgICAgICAgcGx1Z2lucy5mbGF0TWFwKHBsdWdpbiA9PiB7XG4gICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcGx1Z2luSnNvbiA9IEpTT04ucGFyc2UoXG4gICAgICAgICAgICAgICAgICBwbHVnaW5bJ2NvbnNvbGUtcGx1Z2luLmpzb24nXSxcbiAgICAgICAgICAgICAgICApIGFzIFBsdWdpbkpTT047XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gcGx1Z2luSnNvbi5leHRlbnNpb25zLm1hcChleHQgPT4gKHtcbiAgICAgICAgICAgICAgICAgIC4uLmV4dCxcbiAgICAgICAgICAgICAgICAgIGNsdXN0ZXIsXG4gICAgICAgICAgICAgICAgICBwbHVnaW5OYW1lOiBwbHVnaW4ubmFtZSxcbiAgICAgICAgICAgICAgICAgIHBsdWdpblZlcnNpb246IHBsdWdpbi52ZXJzaW9uLFxuICAgICAgICAgICAgICAgICAgYXBwTmFtZTogcGx1Z2luLnBhdGhcbiAgICAgICAgICAgICAgICAgICAgLnNsaWNlKHBsdWdpbi5wYXRoLmxhc3RJbmRleE9mKCcvJykgKyAxKVxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZUFsbCgnLycsICctJyksXG4gICAgICAgICAgICAgICAgICBlbnRyeXBvaW50OiBgJHtyZXFQcmVmaXh9L2NsdXN0ZXJzLXJld3JpdGUvJHtjbHVzdGVyfSR7cGx1Z2luLnBhdGh9YCxcbiAgICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llczogcGx1Z2luSnNvbi5kZXBlbmRlbmNpZXMgfHwge30sXG4gICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAgICAgICAgIGBGYWlsZWQgdG8gcGFyc2UgY29uc29sZS1wbHVnaW4uanNvbiBmb3IgcGx1Z2luICR7cGx1Z2luLm5hbWV9OmAsXG4gICAgICAgICAgICAgICAgICBlcnJvcixcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKSxcbiAgICAgICAgW10gYXMgRXh0ZW5zaW9uW10sXG4gICAgICApLFxuICAgIClcbiAgICAuY2F0Y2goZXJyID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9KTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeHRlbnNpb25zUXVlcnkge1xuICB0eXBlcz86IHN0cmluZ1tdO1xuICBjbHVzdGVycz86IHN0cmluZ1tdO1xuICBvcGVyYXRvcnM/OiBzdHJpbmdbXTtcbiAgY2hhbm5lbHM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeHRlbnNpb248VCA9IGFueT4gZXh0ZW5kcyBSYXdFeHRlbnNpb248VD4ge1xuICBjbHVzdGVyOiBzdHJpbmc7XG4gIHBsdWdpbk5hbWU6IHN0cmluZztcbiAgcGx1Z2luVmVyc2lvbjogc3RyaW5nO1xuICBhcHBOYW1lOiBzdHJpbmc7XG4gIGVudHJ5cG9pbnQ6IHN0cmluZztcbiAgZGVwZW5kZW5jaWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuXG5pbnRlcmZhY2UgUmF3UGx1Z2lucyB7XG4gIFtjbHVzdGVyOiBzdHJpbmddOiBBcnJheTx7XG4gICAgb3BlcmF0b3I6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgdmVyc2lvbjogc3RyaW5nO1xuICAgIHBhdGg6IHN0cmluZztcbiAgICAnY29uc29sZS1wbHVnaW4uanNvbic6IHN0cmluZztcbiAgfT47XG59XG5cbmludGVyZmFjZSBQbHVnaW5KU09OIHtcbiAgZXh0ZW5zaW9uczogUmF3RXh0ZW5zaW9uW107XG4gIGRlcGVuZGVuY2llcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG59XG5cbmludGVyZmFjZSBSYXdFeHRlbnNpb248VCA9IGFueT4ge1xuICB0eXBlOiBzdHJpbmc7XG4gIG9wdGlvbnM6IFQ7XG59XG4iXX0=
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5zaW9ucy1sb2FkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsdWdpbi1zZGsvc3JjL2xpYi9leHRlbnNpb25zLWxvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5RCxPQUFPLEVBQUUsV0FBVyxFQUFFLHdCQUF3QixFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUU1RSxNQUFNLENBQUMsS0FBSyxVQUFVLGNBQWMsQ0FBQyxRQUF5QixFQUFFO0lBQzlELElBQUksV0FBVyxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUM7UUFDN0IsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBQ0QsT0FBTyxVQUFVLEVBQUU7UUFDakIsQ0FBQyxDQUFDLE1BQU0saUJBQWlCLENBQUMsS0FBSyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxNQUFNLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3RDLENBQUM7QUFFRCxLQUFLLFVBQVUsaUJBQWlCLENBQzlCLFFBQXlCLEVBQUU7SUFFM0IsT0FBTyxNQUFNLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQztTQUNsRCxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDVixJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFDRCxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwQixDQUFDLENBQUM7U0FDRCxJQUFJLENBQUMsQ0FBQyxNQUFrQixFQUFFLEVBQUUsQ0FDM0IsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzVCLEdBQUcsd0JBQXdCO1FBQzNCLEdBQUcsR0FBRztRQUNOLFlBQVksRUFB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QUcsQ0FBQyxFQUFFO1FBQ1gsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuQixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGF0dGFjaEF1dGhvcml6YXRpb25IZWFkZXIgfSBmcm9tICdAYWxhdWRhLWZlL2NvbW1vbic7XG5cbmltcG9ydCB7IGdldEJvb3RNb2RlLCBMT0NBTF9ERVZfRVhURU5TSU9OX0lORk8sIGlzTG9jYWxFbnYgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxvYWRFeHRlbnNpb25zKHF1ZXJ5OiBFeHRlbnNpb25zUXVlcnkgPSB7fSkge1xuICBpZiAoZ2V0Qm9vdE1vZGUoKSA9PT0gJ3NhZmUnKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG4gIHJldHVybiBpc0xvY2FsRW52KClcbiAgICA/IGF3YWl0IGxvYWREZXZFeHRlbnNpb25zKHF1ZXJ5KVxuICAgIDogYXdhaXQgbG9hZFByb2RFeHRlbnNpb25zKHF1ZXJ5KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gbG9hZERldkV4dGVuc2lvbnMoXG4gIHF1ZXJ5OiBFeHRlbnNpb25zUXVlcnkgPSB7fSxcbik6IFByb21pc2U8RXh0ZW5zaW9uW10+IHtcbiAgcmV0dXJuIGF3YWl0IGZldGNoKGAvZGV2LXBsdWdpbi9jb25zb2xlLXBsdWdpbi5qc29uYClcbiAgICAudGhlbihyZXMgPT4ge1xuICAgICAgaWYgKCFyZXMub2spIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gZmV0Y2ggbG9jYWwgZGV2IGV4dGVuc2lvbnMnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXMuanNvbigpO1xuICAgIH0pXG4gICAgLnRoZW4oKHBsdWdpbjogUGx1Z2luSlNPTikgPT5cbiAgICAgIHBsdWdpbi5leHRlbnNpb25zLm1hcChleHQgPT4gKHtcbiAgICAgICAgLi4uTE9DQUxfREVWX0VYVEVOU0lPTl9JTkZPLFxuICAgICAgICAuLi5leHQsXG4gICAgICAgIGRlcGVuZGVuY2llczogcGx1Z2luLmRlcGVuZGVuY2llcyB8fCB7fSxcbiAgICAgICAgaTE4blZlcnNpb246IHBsdWdpbi5pMThuVmVyc2lvbixcbiAgICAgICAgZW50cnlwb2ludDogJy9kZXYtcGx1Z2luJyxcbiAgICAgIH0pKSxcbiAgICApXG4gICAgLmNhdGNoKCgpID0+IHtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgJ0ZhaWxlZCB0byBmZXRjaCBsb2NhbCBkZXYgZXh0ZW5zaW9ucywgbG9hZGluZyBwcm9kIGV4dGVuc2lvbnMnLFxuICAgICAgKTtcbiAgICAgIHJldHVybiBsb2FkUHJvZEV4dGVuc2lvbnMocXVlcnkpO1xuICAgIH0pO1xufVxuXG5hc3luYyBmdW5jdGlvbiBsb2FkUHJvZEV4dGVuc2lvbnMoXG4gIHF1ZXJ5OiBFeHRlbnNpb25zUXVlcnkgPSB7fSxcbik6IFByb21pc2U8RXh0ZW5zaW9uW10+IHtcbiAgY29uc3QgcmVxUHJlZml4ID0gaXNMb2NhbEVudigpID8gJy9hcGktZ2F0ZXdheScgOiAnJztcbiAgY29uc3QgcXVlcnlTdHJpbmcgPSBPYmplY3QuZW50cmllcyhxdWVyeSlcbiAgICAubWFwKChba2V5LCB2YWx1ZV0pID0+IGAke2tleX09JHt2YWx1ZS5qb2luKCcsJyl9YClcbiAgICAuam9pbignOycpO1xuXG4gIHJldHVybiBhd2FpdCBmZXRjaChcbiAgICBgJHtyZXFQcmVmaXh9L2Zyb250ZW5kLXBsdWdpbnMvY2x1c3RlcnMvY29uc29sZS1wbHVnaW5zJHtxdWVyeVN0cmluZyAmJiAnP2ZpbHRlcj0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHF1ZXJ5U3RyaW5nKX1gLFxuICAgIHtcbiAgICAgIGhlYWRlcnM6IGF0dGFjaEF1dGhvcml6YXRpb25IZWFkZXIoKSxcbiAgICB9LFxuICApXG4gICAgLnRoZW4ocmVzID0+IHtcbiAgICAgIGlmICghcmVzLm9rKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGZldGNoIGV4dGVuc2lvbnMnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXMuanNvbigpO1xuICAgIH0pXG4gICAgLnRoZW4oKHJhd1BsdWdpbnM6IFJhd1BsdWdpbnMpID0+XG4gICAgICBPYmplY3QuZW50cmllcyhyYXdQbHVnaW5zKS5yZWR1Y2UoXG4gICAgICAgIChhY2MsIFtjbHVzdGVyLCBwbHVnaW5zXSkgPT5cbiAgICAgICAgICBhY2MuY29uY2F0KFxuICAgICAgICAgICAgcGx1Z2lucy5mbGF0TWFwKHBsdWdpbiA9PiB7XG4gICAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcGx1Z2luSnNvbiA9IEpTT04ucGFyc2UoXG4gICAgICAgICAgICAgICAgICBwbHVnaW5bJ2NvbnNvbGUtcGx1Z2luLmpzb24nXSxcbiAgICAgICAgICAgICAgICApIGFzIFBsdWdpbkpTT047XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gcGx1Z2luSnNvbi5leHRlbnNpb25zLm1hcChleHQgPT4gKHtcbiAgICAgICAgICAgICAgICAgIC4uLmV4dCxcbiAgICAgICAgICAgICAgICAgIGNsdXN0ZXIsXG4gICAgICAgICAgICAgICAgICBwbHVnaW5OYW1lOiBwbHVnaW4ubmFtZSxcbiAgICAgICAgICAgICAgICAgIHBsdWdpblZlcnNpb246IHBsdWdpbi52ZXJzaW9uLFxuICAgICAgICAgICAgICAgICAgYXBwTmFtZTogcGx1Z2luLnBhdGhcbiAgICAgICAgICAgICAgICAgICAgLnNsaWNlKHBsdWdpbi5wYXRoLmxhc3RJbmRleE9mKCcvJykgKyAxKVxuICAgICAgICAgICAgICAgICAgICAucmVwbGFjZUFsbCgnLycsICctJyksXG4gICAgICAgICAgICAgICAgICBlbnRyeXBvaW50OiBgJHtyZXFQcmVmaXh9L2NsdXN0ZXJzLXJld3JpdGUvJHtjbHVzdGVyfSR7cGx1Z2luLnBhdGh9YCxcbiAgICAgICAgICAgICAgICAgIGRlcGVuZGVuY2llczogcGx1Z2luSnNvbi5kZXBlbmRlbmNpZXMgfHwge30sXG4gICAgICAgICAgICAgICAgICBpMThuVmVyc2lvbjogcGx1Z2luSnNvbi5pMThuVmVyc2lvbixcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgICAgICAgICAgIGBGYWlsZWQgdG8gcGFyc2UgY29uc29sZS1wbHVnaW4uanNvbiBmb3IgcGx1Z2luICR7cGx1Z2luLm5hbWV9OmAsXG4gICAgICAgICAgICAgICAgICBlcnJvcixcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKSxcbiAgICAgICAgW10gYXMgRXh0ZW5zaW9uW10sXG4gICAgICApLFxuICAgIClcbiAgICAuY2F0Y2goZXJyID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9KTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeHRlbnNpb25zUXVlcnkge1xuICB0eXBlcz86IHN0cmluZ1tdO1xuICBjbHVzdGVycz86IHN0cmluZ1tdO1xuICBvcGVyYXRvcnM/OiBzdHJpbmdbXTtcbiAgY2hhbm5lbHM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeHRlbnNpb248VCA9IGFueT4gZXh0ZW5kcyBSYXdFeHRlbnNpb248VD4ge1xuICBjbHVzdGVyOiBzdHJpbmc7XG4gIHBsdWdpbk5hbWU6IHN0cmluZztcbiAgcGx1Z2luVmVyc2lvbjogc3RyaW5nO1xuICBhcHBOYW1lOiBzdHJpbmc7XG4gIGVudHJ5cG9pbnQ6IHN0cmluZztcbiAgZGVwZW5kZW5jaWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICBpMThuVmVyc2lvbj86IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIFJhd1BsdWdpbnMge1xuICBbY2x1c3Rlcjogc3RyaW5nXTogQXJyYXk8e1xuICAgIG5hbWU6IHN0cmluZztcbiAgICB2ZXJzaW9uOiBzdHJpbmc7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgICdjb25zb2xlLXBsdWdpbi5qc29uJzogc3RyaW5nO1xuICB9Pjtcbn1cblxuaW50ZXJmYWNlIFBsdWdpbkpTT04ge1xuICBleHRlbnNpb25zOiBSYXdFeHRlbnNpb25bXTtcbiAgZGVwZW5kZW5jaWVzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgaTE4blZlcnNpb24/OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBSYXdFeHRlbnNpb248VCA9IGFueT4ge1xuICB0eXBlOiBzdHJpbmc7XG4gIG9wdGlvbnM6IFQ7XG59XG4iXX0=
@@ -3,9 +3,6 @@ import { loadRemoteModule, setRemoteDefinitions } from '@nx/angular/mf';
3
3
  import { compare } from 'compare-versions';
4
4
  const remoteRecord = new Set();
5
5
  const BOOT_MODE_KEY = '__boot_mode__';
6
- /**
7
- * @deprecated Use isLocalDev from @alauda-fe/common instead
8
- */
9
6
  export function isLocalEnv() {
10
7
  return location.hostname === 'localhost';
11
8
  }
@@ -65,10 +62,16 @@ export function filterLatestVersion(identity) {
65
62
  return acc;
66
63
  }, []);
67
64
  }
68
- export const translateScope = ({ cluster, pluginName, appName, }, locale) => isBuiltInLanguage(locale)
69
- ? `plugin__${cluster}~${pluginName}~${appName}`
70
- : `plugin__${pluginName}~${appName}`;
65
+ export const translateScope = (extension, locale) => {
66
+ if (isBuiltInLanguage(locale)) {
67
+ return `plugin__${extension.cluster}~${extension.pluginName}~${extension.appName}`;
68
+ }
69
+ const baseScope = `plugin__${extension.pluginName}~${extension.appName}`;
70
+ return extension.i18nVersion
71
+ ? `${baseScope}~${extension.i18nVersion}`
72
+ : baseScope;
73
+ };
71
74
  export const translateScopeKey = (scope, key) => {
72
75
  return `${scope}.${key}`;
73
76
  };
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsdWdpbi1zZGsvc3JjL2xpYi91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBSTNDLE1BQU0sWUFBWSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7QUFFdkMsTUFBTSxhQUFhLEdBQUcsZUFBZSxDQUFDO0FBRXRDOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFVBQVU7SUFDeEIsT0FBTyxRQUFRLENBQUMsUUFBUSxLQUFLLFdBQVcsQ0FBQztBQUMzQyxDQUFDO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUFDLFVBQWtCO0lBQ25ELE9BQU8sVUFBVSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUc7SUFDdEMsT0FBTyxFQUFFLGNBQWM7SUFDdkIsVUFBVSxFQUFFLFdBQVc7SUFDdkIsYUFBYSxFQUFFLFFBQVE7SUFDdkIsT0FBTyxFQUFFLFNBQVM7Q0FDbkIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHO0lBQ25DLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCLGFBQWEsRUFBRSxRQUFRO0lBQ3ZCLE9BQU8sRUFBRSxTQUFTO0NBQ25CLENBQUM7QUFFRixNQUFNLFVBQVUsV0FBVztJQUN6QixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsTUFBTTtTQUMxQixLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQ1IsS0FBSyxDQUFDLEdBQUcsQ0FBQztTQUNWLE1BQU0sQ0FDTCxDQUFDLEdBQUcsRUFB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RUFBRSxHQUFXLEVBQUUsRUFBRTtJQUM5RCxPQUFPLEdBQUcsS0FBSyxJQUFJLEdBQUcsRUFBRSxDQUFDO0FBQzNCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdMT0JBTF9DTFVTVEVSLCBpc0J1aWx0SW5MYW5ndWFnZSB9IGZyb20gJ0BhbGF1ZGEtZmUvY29tbW9uJztcbmltcG9ydCB7IGxvYWRSZW1vdGVNb2R1bGUsIHNldFJlbW90ZURlZmluaXRpb25zIH0gZnJvbSAnQG54L2FuZ3VsYXIvbWYnO1xuaW1wb3J0IHsgY29tcGFyZSB9IGZyb20gJ2NvbXBhcmUtdmVyc2lvbnMnO1xuXG5pbXBvcnQgeyBFeHRlbnNpb24gfSBmcm9tICcuL2V4dGVuc2lvbnMtbG9hZGVyJztcblxuY29uc3QgcmVtb3RlUmVjb3JkID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbmNvbnN0IEJPT1RfTU9ERV9LRVkgPSAnX19ib290X21vZGVfXyc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgVXNlIGlzTG9jYWxEZXYgZnJvbSBAYWxhdWRhLWZlL2NvbW1vbiBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0xvY2FsRW52KCkge1xuICByZXR1cm4gbG9jYXRpb24uaG9zdG5hbWUgPT09ICdsb2NhbGhvc3QnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNTdGF0aWNQbHVnaW5QYXRoKHB1YmxpY1BhdGg6IHN0cmluZykge1xuICByZXR1cm4gcHVibGljUGF0aC5pbmNsdWRlcygnL19wbHVnaW5zLycpO1xufVxuXG5leHBvcnQgY29uc3QgTE9DQUxfREVWX0VYVEVOU0lPTl9JTkZPID0ge1xuICBjbHVzdGVyOiBHTE9CQUxfQ0xVU1RFUixcbiAgcGx1Z2luTmFtZTogJ2xvY2FsLWRldicsXG4gIHBsdWdpblZlcnNpb246ICd2MS4wLjAnLFxuICBhcHBOYW1lOiAnZGVmYXVsdCcsXG59O1xuXG5leHBvcnQgY29uc3QgU1RBVElDX0VYVEVOU0lPTl9JTkZPID0ge1xuICBjbHVzdGVyOiBHTE9CQUxfQ0xVU1RFUixcbiAgcGx1Z2luVmVyc2lvbjogJ3YxLjAuMCcsXG4gIGFwcE5hbWU6ICdkZWZhdWx0Jyxcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRCb290TW9kZSgpOiAnc3RhbmRhcmQnIHwgJ3NhZmUnIHtcbiAgY29uc3QgcXVlcnkgPSBsb2NhdGlvbi5zZWFyY2hcbiAgICAuc2xpY2UoMSlcbiAgICAuc3BsaXQoJyYnKVxuICAgIC5yZWR1Y2UoXG4gICAgICAoYWNjLCBjdXIpID0+IHtcbiAgICAgICAgY29uc3QgW2tleSwgdmFsdWVdID0gY3VyLnNwbGl0KCc9Jyk7XG4gICAgICAgIGFjY1trZXldID0gdmFsdWU7XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LFxuICAgICAge30gYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbiAgICApO1xuICBjb25zdCBtb2RlID0gKHF1ZXJ5W0JPT1RfTU9ERV9LRVldIHx8XG4gICAgc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShCT09UX01PREVfS0VZKSB8fFxuICAgICdzdGFuZGFyZCcpIGFzICdzdGFuZGFyZCcgfCAnc2FmZSc7XG5cbiAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShCT09UX01PREVfS0VZLCBtb2RlKTtcblxuICByZXR1cm4gbW9kZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvYWRSZW1vdGUocmVtb3RlOiBzdHJpbmcsIG1vZHVsZTogc3RyaW5nKSB7XG4gIGlmICghcmVtb3RlUmVjb3JkLmhhcyhyZW1vdGUpKSB7XG4gICAgcmVtb3RlUmVjb3JkLmFkZChyZW1vdGUpO1xuICAgIHNldFJlbW90ZURlZmluaXRpb25zKHsgW3JlbW90ZV06IHJlbW90ZSB9KTtcbiAgfVxuXG4gIHJldHVybiBsb2FkUmVtb3RlTW9kdWxlKHJlbW90ZSwgbW9kdWxlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZpbHRlckxhdGVzdFZlcnNpb248TyA9IGFueT4oXG4gIGlkZW50aXR5OiAoZXh0OiBPKSA9PiB1bmtub3duLFxuKTogKGV4dHM6IEFycmF5PEV4dGVuc2lvbjxPPj4pID0+IEFycmF5PEV4dGVuc2lvbjxPPj4ge1xuICByZXR1cm4gKGV4dHM6IEFycmF5PEV4dGVuc2lvbjxPPj4pID0+XG4gICAgZXh0cy5yZWR1Y2UoXG4gICAgICAoYWNjLCBleHQpID0+IHtcbiAgICAgICAgY29uc3QgZXhpc3RlZEluZGV4ID0gYWNjLmZpbmRJbmRleChcbiAgICAgICAgICBhID0+XG4gICAgICAgICAgICBhLnBsdWdpbk5hbWUgPT09IGV4dC5wbHVnaW5OYW1lICYmXG4gICAgICAgICAgICBpZGVudGl0eShhLm9wdGlvbnMpID09PSBpZGVudGl0eShleHQub3B0aW9ucyksXG4gICAgICAgICk7XG4gICAgICAgIGlmIChleGlzdGVkSW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgYWNjLnB1c2goZXh0KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgYWNjW2V4aXN0ZWRJbmRleF0gPSBjb21wYXJlKFxuICAgICAgICAgICAgICBhY2NbZXhpc3RlZEluZGV4XS5wbHVnaW5WZXJzaW9uLFxuICAgICAgICAgICAgICBleHQucGx1Z2luVmVyc2lvbixcbiAgICAgICAgICAgICAgJz49JyxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgPyBhY2NbZXhpc3RlZEluZGV4XVxuICAgICAgICAgICAgICA6IGV4dDtcbiAgICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gICAgICAgICAgICAgIGBFcnJvciB3aGVuIGNvbXBhcmluZyBvcGVyYXRvciAoJHthY2NbZXhpc3RlZEluZGV4XS5wbHVnaW5OYW1lfSkgdmVyc2lvbnMgKCR7YWNjW2V4aXN0ZWRJbmRleF0ucGx1Z2luVmVyc2lvbn0sICR7ZXh0LnBsdWdpblZlcnNpb259KS4gVXNpbmcgJHthY2NbZXhpc3RlZEluZGV4XS5wbHVnaW5WZXJzaW9ufSBmcm9tIGNsdXN0ZXIgJHthY2NbZXhpc3RlZEluZGV4XS5jbHVzdGVyfWAsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSxcbiAgICAgIFtdIGFzIEFycmF5PEV4dGVuc2lvbjxPPj4sXG4gICAgKTtcbn1cblxuZXhwb3J0IGNvbnN0IHRyYW5zbGF0ZVNjb3BlID0gKFxuICB7XG4gICAgY2x1c3RlcixcbiAgICBwbHVnaW5OYW1lLFxuICAgIGFwcE5hbWUsXG4gIH06IHtcbiAgICBjbHVzdGVyOiBzdHJpbmc7XG4gICAgcGx1Z2luTmFtZTogc3RyaW5nO1xuICAgIGFwcE5hbWU6IHN0cmluZztcbiAgfSxcbiAgbG9jYWxlOiBzdHJpbmcsXG4pID0+XG4gIGlzQnVpbHRJbkxhbmd1YWdlKGxvY2FsZSlcbiAgICA/IGBwbHVnaW5fXyR7Y2x1c3Rlcn1+JHtwbHVnaW5OYW1lfX4ke2FwcE5hbWV9YFxuICAgIDogYHBsdWdpbl9fJHtwbHVnaW5OYW1lfX4ke2FwcE5hbWV9YDtcblxuZXhwb3J0IGNvbnN0IHRyYW5zbGF0ZVNjb3BlS2V5ID0gKHNjb3BlOiBzdHJpbmcsIGtleTogc3RyaW5nKSA9PiB7XG4gIHJldHVybiBgJHtzY29wZX0uJHtrZXl9YDtcbn07XG4iXX0=
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3BsdWdpbi1zZGsvc3JjL2xpYi91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBSTNDLE1BQU0sWUFBWSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7QUFFdkMsTUFBTSxhQUFhLEdBQUcsZUFBZSxDQUFDO0FBRXRDLE1BQU0sVUFBVSxVQUFVO0lBQ3hCLE9BQU8sUUFBUSxDQUFDLFFBQVEsS0FBSyxXQUFXLENBQUM7QUFDM0MsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxVQUFrQjtJQUNuRCxPQUFPLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDM0MsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHO0lBQ3RDLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCLFVBQVUsRUFBRSxXQUFXO0lBQ3ZCLGFBQWEsRUFBRSxRQUFRO0lBQ3ZCLE9BQU8sRUFBRSxTQUFTO0NBQ25CLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRztJQUNuQyxPQUFPLEVBQUUsY0FBYztJQUN2QixhQUFhLEVBQUUsUUFBUTtJQUN2QixPQUFPLEVBQUUsU0FBUztDQUNuQixDQUFDO0FBRUYsTUFBTSxVQUFVLFdBQVc7SUFDekIsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLE1BQU07U0FDMUIsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNSLEtBQUssQ0FBQyxHQUFHLENBQUM7U0FDVixNQUFNLENBQ0wsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFF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RSxPQUFPLFNBQVMsQ0FBQyxXQUFXO1FBQzFCLENBQUMsQ0FBQyxHQUFHLFNBQVMsSUFBSSxTQUFTLENBQUMsV0FBVyxFQUFFO1FBQ3pDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDaEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxLQUFhLEVBQUUsR0FBVyxFQUFFLEVBQUU7SUFDOUQsT0FBTyxHQUFHLEtBQUssSUFBSSxHQUFHLEVBQUUsQ0FBQztBQUMzQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHTE9CQUxfQ0xVU1RFUiwgaXNCdWlsdEluTGFuZ3VhZ2UgfSBmcm9tICdAYWxhdWRhLWZlL2NvbW1vbic7XG5pbXBvcnQgeyBsb2FkUmVtb3RlTW9kdWxlLCBzZXRSZW1vdGVEZWZpbml0aW9ucyB9IGZyb20gJ0BueC9hbmd1bGFyL21mJztcbmltcG9ydCB7IGNvbXBhcmUgfSBmcm9tICdjb21wYXJlLXZlcnNpb25zJztcblxuaW1wb3J0IHsgRXh0ZW5zaW9uIH0gZnJvbSAnLi9leHRlbnNpb25zLWxvYWRlcic7XG5cbmNvbnN0IHJlbW90ZVJlY29yZCA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuXG5jb25zdCBCT09UX01PREVfS0VZID0gJ19fYm9vdF9tb2RlX18nO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNMb2NhbEVudigpIHtcbiAgcmV0dXJuIGxvY2F0aW9uLmhvc3RuYW1lID09PSAnbG9jYWxob3N0Jztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzU3RhdGljUGx1Z2luUGF0aChwdWJsaWNQYXRoOiBzdHJpbmcpIHtcbiAgcmV0dXJuIHB1YmxpY1BhdGguaW5jbHVkZXMoJy9fcGx1Z2lucy8nKTtcbn1cblxuZXhwb3J0IGNvbnN0IExPQ0FMX0RFVl9FWFRFTlNJT05fSU5GTyA9IHtcbiAgY2x1c3RlcjogR0xPQkFMX0NMVVNURVIsXG4gIHBsdWdpbk5hbWU6ICdsb2NhbC1kZXYnLFxuICBwbHVnaW5WZXJzaW9uOiAndjEuMC4wJyxcbiAgYXBwTmFtZTogJ2RlZmF1bHQnLFxufTtcblxuZXhwb3J0IGNvbnN0IFNUQVRJQ19FWFRFTlNJT05fSU5GTyA9IHtcbiAgY2x1c3RlcjogR0xPQkFMX0NMVVNURVIsXG4gIHBsdWdpblZlcnNpb246ICd2MS4wLjAnLFxuICBhcHBOYW1lOiAnZGVmYXVsdCcsXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Qm9vdE1vZGUoKTogJ3N0YW5kYXJkJyB8ICdzYWZlJyB7XG4gIGNvbnN0IHF1ZXJ5ID0gbG9jYXRpb24uc2VhcmNoXG4gICAgLnNsaWNlKDEpXG4gICAgLnNwbGl0KCcmJylcbiAgICAucmVkdWNlKFxuICAgICAgKGFjYywgY3VyKSA9PiB7XG4gICAgICAgIGNvbnN0IFtrZXksIHZhbHVlXSA9IGN1ci5zcGxpdCgnPScpO1xuICAgICAgICBhY2Nba2V5XSA9IHZhbHVlO1xuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSxcbiAgICAgIHt9IGFzIFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXG4gICAgKTtcbiAgY29uc3QgbW9kZSA9IChxdWVyeVtCT09UX01PREVfS0VZXSB8fFxuICAgIHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oQk9PVF9NT0RFX0tFWSkgfHxcbiAgICAnc3RhbmRhcmQnKSBhcyAnc3RhbmRhcmQnIHwgJ3NhZmUnO1xuXG4gIHNlc3Npb25TdG9yYWdlLnNldEl0ZW0oQk9PVF9NT0RFX0tFWSwgbW9kZSk7XG5cbiAgcmV0dXJuIG1vZGU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2FkUmVtb3RlKHJlbW90ZTogc3RyaW5nLCBtb2R1bGU6IHN0cmluZykge1xuICBpZiAoIXJlbW90ZVJlY29yZC5oYXMocmVtb3RlKSkge1xuICAgIHJlbW90ZVJlY29yZC5hZGQocmVtb3RlKTtcbiAgICBzZXRSZW1vdGVEZWZpbml0aW9ucyh7IFtyZW1vdGVdOiByZW1vdGUgfSk7XG4gIH1cblxuICByZXR1cm4gbG9hZFJlbW90ZU1vZHVsZShyZW1vdGUsIG1vZHVsZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmaWx0ZXJMYXRlc3RWZXJzaW9uPE8gPSBhbnk+KFxuICBpZGVudGl0eTogKGV4dDogTykgPT4gdW5rbm93bixcbik6IChleHRzOiBBcnJheTxFeHRlbnNpb248Tz4+KSA9PiBBcnJheTxFeHRlbnNpb248Tz4+IHtcbiAgcmV0dXJuIChleHRzOiBBcnJheTxFeHRlbnNpb248Tz4+KSA9PlxuICAgIGV4dHMucmVkdWNlKFxuICAgICAgKGFjYywgZXh0KSA9PiB7XG4gICAgICAgIGNvbnN0IGV4aXN0ZWRJbmRleCA9IGFjYy5maW5kSW5kZXgoXG4gICAgICAgICAgYSA9PlxuICAgICAgICAgICAgYS5wbHVnaW5OYW1lID09PSBleHQucGx1Z2luTmFtZSAmJlxuICAgICAgICAgICAgaWRlbnRpdHkoYS5vcHRpb25zKSA9PT0gaWRlbnRpdHkoZXh0Lm9wdGlvbnMpLFxuICAgICAgICApO1xuICAgICAgICBpZiAoZXhpc3RlZEluZGV4ID09PSAtMSkge1xuICAgICAgICAgIGFjYy5wdXNoKGV4dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGFjY1tleGlzdGVkSW5kZXhdID0gY29tcGFyZShcbiAgICAgICAgICAgICAgYWNjW2V4aXN0ZWRJbmRleF0ucGx1Z2luVmVyc2lvbixcbiAgICAgICAgICAgICAgZXh0LnBsdWdpblZlcnNpb24sXG4gICAgICAgICAgICAgICc+PScsXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAgID8gYWNjW2V4aXN0ZWRJbmRleF1cbiAgICAgICAgICAgICAgOiBleHQ7XG4gICAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICAgICBgRXJyb3Igd2hlbiBjb21wYXJpbmcgb3BlcmF0b3IgKCR7YWNjW2V4aXN0ZWRJbmRleF0ucGx1Z2luTmFtZX0pIHZlcnNpb25zICgke2FjY1tleGlzdGVkSW5kZXhdLnBsdWdpblZlcnNpb259LCAke2V4dC5wbHVnaW5WZXJzaW9ufSkuIFVzaW5nICR7YWNjW2V4aXN0ZWRJbmRleF0ucGx1Z2luVmVyc2lvbn0gZnJvbSBjbHVzdGVyICR7YWNjW2V4aXN0ZWRJbmRleF0uY2x1c3Rlcn1gLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgIH0sXG4gICAgICBbXSBhcyBBcnJheTxFeHRlbnNpb248Tz4+LFxuICAgICk7XG59XG5cbmV4cG9ydCBjb25zdCB0cmFuc2xhdGVTY29wZSA9IChcbiAgZXh0ZW5zaW9uOiB7XG4gICAgY2x1c3Rlcjogc3RyaW5nO1xuICAgIHBsdWdpbk5hbWU6IHN0cmluZztcbiAgICBhcHBOYW1lOiBzdHJpbmc7XG4gICAgaTE4blZlcnNpb24/OiBzdHJpbmc7XG4gIH0sXG4gIGxvY2FsZTogc3RyaW5nLFxuKSA9PiB7XG4gIGlmIChpc0J1aWx0SW5MYW5ndWFnZShsb2NhbGUpKSB7XG4gICAgcmV0dXJuIGBwbHVnaW5fXyR7ZXh0ZW5zaW9uLmNsdXN0ZXJ9fiR7ZXh0ZW5zaW9uLnBsdWdpbk5hbWV9fiR7ZXh0ZW5zaW9uLmFwcE5hbWV9YDtcbiAgfVxuXG4gIGNvbnN0IGJhc2VTY29wZSA9IGBwbHVnaW5fXyR7ZXh0ZW5zaW9uLnBsdWdpbk5hbWV9fiR7ZXh0ZW5zaW9uLmFwcE5hbWV9YDtcblxuICByZXR1cm4gZXh0ZW5zaW9uLmkxOG5WZXJzaW9uXG4gICAgPyBgJHtiYXNlU2NvcGV9fiR7ZXh0ZW5zaW9uLmkxOG5WZXJzaW9ufWBcbiAgICA6IGJhc2VTY29wZTtcbn07XG5cbmV4cG9ydCBjb25zdCB0cmFuc2xhdGVTY29wZUtleSA9IChzY29wZTogc3RyaW5nLCBrZXk6IHN0cmluZykgPT4ge1xuICByZXR1cm4gYCR7c2NvcGV9LiR7a2V5fWA7XG59O1xuIl19
@@ -1,9 +1,8 @@
1
- import { isLocalDev } from '@alauda-fe/common';
2
- import { isStaticPluginPath, LOCAL_DEV_EXTENSION_INFO, STATIC_EXTENSION_INFO, } from '@alauda-fe/plugin-sdk';
1
+ import { isStaticPluginPath, LOCAL_DEV_EXTENSION_INFO, STATIC_EXTENSION_INFO, isLocalEnv, } from '@alauda-fe/plugin-sdk';
3
2
  export const PUBLIC_PATH = __webpack_public_path__;
4
3
  export const RUNTIME = runtimeInfo();
5
4
  function runtimeInfo() {
6
- if (isLocalDev()) {
5
+ if (isLocalEnv()) {
7
6
  return {
8
7
  ...LOCAL_DEV_EXTENSION_INFO,
9
8
  publicPath: PUBLIC_PATH,
@@ -28,4 +27,4 @@ function runtimeInfo() {
28
27
  appName: arr.slice(pluginIndex + 3, arr.length - 1).join('-'),
29
28
  };
30
29
  }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVudGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGx1Z2luLXNkay9yZW1vdGUvbGliL3J1bnRpbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRS9DLE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsd0JBQXdCLEVBQ3hCLHFCQUFxQixHQUN0QixNQUFNLHVCQUF1QixDQUFDO0FBSS9CLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyx1QkFBdUIsQ0FBQztBQUVuRCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsV0FBVyxFQUFFLENBQUM7QUFFckMsU0FBUyxXQUFXO0lBQ2xCLElBQUksVUFBVSxFQUFFLEVBQUUsQ0FBQztRQUNqQixPQUFPO1lBQ0wsR0FBRyx3QkFBd0I7WUFDM0IsVUFBVSxFQUFFLFdBQVc7U0FDeEIsQ0FBQztJQUNKLENBQUM7SUFDRCxNQUFNLEdBQUcsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRW5DLElBQUksa0JBQWtCLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUNwQyxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDO1FBRS9ELE9BQU87WUFDTCxHQUFHLHFCQUFxQjtZQUN4QixVQUFVLEVBQUUsR0FBRyxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7WUFDaEMsVUFBVSxFQUFFLFdBQVc7U0FDeEIsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRTVFLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFM0UsT0FBTztRQUNMLFVBQVUsRUFBRSxXQUFXO1FBQ3ZCLE9BQU8sRUFBRSxHQUFHLENBQUMsWUFBWSxDQUFDO1FBQzFCLFVBQVUsRUFBRSxHQUFHLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNoQyxhQUFhLEVBQUUsR0FBRyxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDbkMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxHQUFHLENBQUMsRUFBRSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7S0FDOUQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc0xvY2FsRGV2IH0gZnJvbSAnQGFsYXVkYS1mZS9jb21tb24nO1xuXG5pbXBvcnQge1xuICBpc1N0YXRpY1BsdWdpblBhdGgsXG4gIExPQ0FMX0RFVl9FWFRFTlNJT05fSU5GTyxcbiAgU1RBVElDX0VYVEVOU0lPTl9JTkZPLFxufSBmcm9tICdAYWxhdWRhLWZlL3BsdWdpbi1zZGsnO1xuXG5kZWNsYXJlIGNvbnN0IF9fd2VicGFja19wdWJsaWNfcGF0aF9fOiBzdHJpbmc7XG5cbmV4cG9ydCBjb25zdCBQVUJMSUNfUEFUSCA9IF9fd2VicGFja19wdWJsaWNfcGF0aF9fO1xuXG5leHBvcnQgY29uc3QgUlVOVElNRSA9IHJ1bnRpbWVJbmZvKCk7XG5cbmZ1bmN0aW9uIHJ1bnRpbWVJbmZvKCk6IFJ1bnRpbWUge1xuICBpZiAoaXNMb2NhbERldigpKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLkxPQ0FMX0RFVl9FWFRFTlNJT05fSU5GTyxcbiAgICAgIHB1YmxpY1BhdGg6IFBVQkxJQ19QQVRILFxuICAgIH07XG4gIH1cbiAgY29uc3QgYXJyID0gUFVCTElDX1BBVEguc3BsaXQoJy8nKTtcblxuICBpZiAoaXNTdGF0aWNQbHVnaW5QYXRoKFBVQkxJQ19QQVRIKSkge1xuICAgIGNvbnN0IHBsdWdpbkluZGV4ID0gYXJyLmZpbmRJbmRleChpdGVtID0+IGl0ZW0gPT09ICdfcGx1Z2lucycpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLlNUQVRJQ19FWFRFTlNJT05fSU5GTyxcbiAgICAgIHBsdWdpbk5hbWU6IGFycltwbHVnaW5JbmRleCArIDFdLFxuICAgICAgcHVibGljUGF0aDogUFVCTElDX1BBVEgsXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IGNsdXN0ZXJJbmRleCA9IGFyci5maW5kSW5kZXgoaXRlbSA9PiBpdGVtID09PSAnY2x1c3RlcnMtcmV3cml0ZScpICsgMTtcblxuICBjb25zdCBwbHVnaW5JbmRleCA9IGFyci5maW5kSW5kZXgoaXRlbSA9PiBpdGVtID09PSAnZnJvbnRlbmQtcGx1Z2lucycpICsgMTtcblxuICByZXR1cm4ge1xuICAgIHB1YmxpY1BhdGg6IFBVQkxJQ19QQVRILFxuICAgIGNsdXN0ZXI6IGFycltjbHVzdGVySW5kZXhdLFxuICAgIHBsdWdpbk5hbWU6IGFycltwbHVnaW5JbmRleCArIDFdLFxuICAgIHBsdWdpblZlcnNpb246IGFycltwbHVnaW5JbmRleCArIDJdLFxuICAgIGFwcE5hbWU6IGFyci5zbGljZShwbHVnaW5JbmRleCArIDMsIGFyci5sZW5ndGggLSAxKS5qb2luKCctJyksXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUnVudGltZSB7XG4gIHB1YmxpY1BhdGg6IHN0cmluZztcbiAgY2x1c3Rlcjogc3RyaW5nO1xuICBwbHVnaW5OYW1lOiBzdHJpbmc7XG4gIHBsdWdpblZlcnNpb246IHN0cmluZztcbiAgYXBwTmFtZTogc3RyaW5nO1xufVxuIl19
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVudGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGx1Z2luLXNkay9yZW1vdGUvbGliL3J1bnRpbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGtCQUFrQixFQUNsQix3QkFBd0IsRUFDeEIscUJBQXFCLEVBQ3JCLFVBQVUsR0FDWCxNQUFNLHVCQUF1QixDQUFDO0FBSS9CLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyx1QkFBdUIsQ0FBQztBQUVuRCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsV0FBVyxFQUFFLENBQUM7QUFFckMsU0FBUyxXQUFXO0lBQ2xCLElBQUksVUFBVSxFQUFFLEVBQUUsQ0FBQztRQUNqQixPQUFPO1lBQ0wsR0FBRyx3QkFBd0I7WUFDM0IsVUFBVSxFQUFFLFdBQVc7U0FDeEIsQ0FBQztJQUNKLENBQUM7SUFDRCxNQUFNLEdBQUcsR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRW5DLElBQUksa0JBQWtCLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztRQUNwQyxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxDQUFDO1FBRS9ELE9BQU87WUFDTCxHQUFHLHFCQUFxQjtZQUN4QixVQUFVLEVBQUUsR0FBRyxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7WUFDaEMsVUFBVSxFQUFFLFdBQVc7U0FDeEIsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRTVFLE1BQU0sV0FBVyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFM0UsT0FBTztRQUNMLFVBQVUsRUFBRSxXQUFXO1FBQ3ZCLE9BQU8sRUFBRSxHQUFHLENBQUMsWUFBWSxDQUFDO1FBQzFCLFVBQVUsRUFBRSxHQUFHLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztRQUNoQyxhQUFhLEVBQUUsR0FBRyxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFDbkMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsV0FBVyxHQUFHLENBQUMsRUFBRSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7S0FDOUQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBpc1N0YXRpY1BsdWdpblBhdGgsXG4gIExPQ0FMX0RFVl9FWFRFTlNJT05fSU5GTyxcbiAgU1RBVElDX0VYVEVOU0lPTl9JTkZPLFxuICBpc0xvY2FsRW52LFxufSBmcm9tICdAYWxhdWRhLWZlL3BsdWdpbi1zZGsnO1xuXG5kZWNsYXJlIGNvbnN0IF9fd2VicGFja19wdWJsaWNfcGF0aF9fOiBzdHJpbmc7XG5cbmV4cG9ydCBjb25zdCBQVUJMSUNfUEFUSCA9IF9fd2VicGFja19wdWJsaWNfcGF0aF9fO1xuXG5leHBvcnQgY29uc3QgUlVOVElNRSA9IHJ1bnRpbWVJbmZvKCk7XG5cbmZ1bmN0aW9uIHJ1bnRpbWVJbmZvKCk6IFJ1bnRpbWUge1xuICBpZiAoaXNMb2NhbEVudigpKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLkxPQ0FMX0RFVl9FWFRFTlNJT05fSU5GTyxcbiAgICAgIHB1YmxpY1BhdGg6IFBVQkxJQ19QQVRILFxuICAgIH07XG4gIH1cbiAgY29uc3QgYXJyID0gUFVCTElDX1BBVEguc3BsaXQoJy8nKTtcblxuICBpZiAoaXNTdGF0aWNQbHVnaW5QYXRoKFBVQkxJQ19QQVRIKSkge1xuICAgIGNvbnN0IHBsdWdpbkluZGV4ID0gYXJyLmZpbmRJbmRleChpdGVtID0+IGl0ZW0gPT09ICdfcGx1Z2lucycpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLlNUQVRJQ19FWFRFTlNJT05fSU5GTyxcbiAgICAgIHBsdWdpbk5hbWU6IGFycltwbHVnaW5JbmRleCArIDFdLFxuICAgICAgcHVibGljUGF0aDogUFVCTElDX1BBVEgsXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0IGNsdXN0ZXJJbmRleCA9IGFyci5maW5kSW5kZXgoaXRlbSA9PiBpdGVtID09PSAnY2x1c3RlcnMtcmV3cml0ZScpICsgMTtcblxuICBjb25zdCBwbHVnaW5JbmRleCA9IGFyci5maW5kSW5kZXgoaXRlbSA9PiBpdGVtID09PSAnZnJvbnRlbmQtcGx1Z2lucycpICsgMTtcblxuICByZXR1cm4ge1xuICAgIHB1YmxpY1BhdGg6IFBVQkxJQ19QQVRILFxuICAgIGNsdXN0ZXI6IGFycltjbHVzdGVySW5kZXhdLFxuICAgIHBsdWdpbk5hbWU6IGFycltwbHVnaW5JbmRleCArIDFdLFxuICAgIHBsdWdpblZlcnNpb246IGFycltwbHVnaW5JbmRleCArIDJdLFxuICAgIGFwcE5hbWU6IGFyci5zbGljZShwbHVnaW5JbmRleCArIDMsIGFyci5sZW5ndGggLSAxKS5qb2luKCctJyksXG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUnVudGltZSB7XG4gIHB1YmxpY1BhdGg6IHN0cmluZztcbiAgY2x1c3Rlcjogc3RyaW5nO1xuICBwbHVnaW5OYW1lOiBzdHJpbmc7XG4gIHBsdWdpblZlcnNpb246IHN0cmluZztcbiAgYXBwTmFtZTogc3RyaW5nO1xufVxuIl19
@@ -1,8 +1,84 @@
1
- import { GLOBAL_CLUSTER, isBuiltInLanguage, TranslatePipe, TranslateService, } from '@alauda-fe/common';
1
+ import { NotificationService } from '@alauda/ui';
2
+ import { FALLBACK_LANGUAGE, GLOBAL_CLUSTER, isBuiltInLanguage, TranslatePipe, TranslateService, } from '@alauda-fe/common';
2
3
  import { inject, Injectable, Pipe } from '@angular/core';
3
4
  import { RUNTIME } from './runtime';
4
- import { translateScope, translateScopeKey } from '@alauda-fe/plugin-sdk';
5
+ import { translateScope, translateScopeKey, getAllExtensions, } from '@alauda-fe/plugin-sdk';
5
6
  import * as i0 from "@angular/core";
7
+ /**
8
+ * 获取扩展列表,支持新旧版本兼容(ACP <= v4.1)
9
+ * 优先使用新版 plugin-sdk 的 getAllExtensions 方法
10
+ * 回退到旧版本的全局变量 __alauda_extensions
11
+ */
12
+ function getExtensions() {
13
+ try {
14
+ // 尝试使用新版本的 getAllExtensions 方法
15
+ if (typeof getAllExtensions === 'function') {
16
+ return getAllExtensions();
17
+ }
18
+ }
19
+ catch (error) {
20
+ // getAllExtensions 不存在或调用失败时忽略错误
21
+ console.debug('getAllExtensions method not available or failed:', error);
22
+ }
23
+ // 回退到旧版本的全局变量
24
+ try {
25
+ const windowExtensions = window.__alauda_extensions;
26
+ if (Array.isArray(windowExtensions)) {
27
+ console.debug('Using fallback __alauda_extensions:', windowExtensions.length, 'extensions found');
28
+ return windowExtensions;
29
+ }
30
+ }
31
+ catch (error) {
32
+ console.debug('__alauda_extensions not available:', error);
33
+ }
34
+ // 两种方式都不可用时返回 null,功能将以降级模式运行
35
+ console.debug('No extension source available, running in fallback mode');
36
+ return null;
37
+ }
38
+ /**
39
+ * 获取当前插件的i18n版本号
40
+ * 如果无法获取扩展信息,返回 undefined,translateScope 将使用基础作用域
41
+ */
42
+ function getCurrentPluginI18nVersion() {
43
+ const extensions = getExtensions();
44
+ if (!extensions) {
45
+ console.debug('No extensions available, i18n will use base scope without version');
46
+ return undefined;
47
+ }
48
+ const currentExtension = extensions.find((ext) => ext.pluginName === RUNTIME.pluginName &&
49
+ ext.appName === RUNTIME.appName &&
50
+ ext.cluster === RUNTIME.cluster);
51
+ if (!currentExtension) {
52
+ console.debug('Current extension not found in extensions list, using base scope');
53
+ return undefined;
54
+ }
55
+ const version = currentExtension?.i18nVersion;
56
+ console.debug('Plugin i18n version:', version || 'not specified');
57
+ return version;
58
+ }
59
+ /**
60
+ * 获取i18n文件
61
+ */
62
+ function fetchI18nFile(lang, scope) {
63
+ const path = isBuiltInLanguage(lang)
64
+ ? RUNTIME.publicPath + 'assets/i18n/' + lang + '.json'
65
+ : `/console-i18n/${lang}/${scope}.json`;
66
+ return fetch(path)
67
+ .then(res => {
68
+ if (!res.ok) {
69
+ throw new Error(`HTTP ${res.status}: ${res.statusText}`);
70
+ }
71
+ return res.json();
72
+ })
73
+ .catch(err => {
74
+ console.error(`Failed to load i18n file for plugin ${RUNTIME.pluginName}~${RUNTIME.appName} and language ${lang}`);
75
+ console.error(err);
76
+ return null;
77
+ });
78
+ }
79
+ /**
80
+ * @deprecated use `translateScope` function from plugin-sdk instead
81
+ */
6
82
  export const getTranslateScope = (locale) => {
7
83
  const cluster = isBuiltInLanguage(locale) ? RUNTIME.cluster : GLOBAL_CLUSTER;
8
84
  return `plugin__${cluster}~${RUNTIME.pluginName}~${RUNTIME.appName}`;
@@ -10,51 +86,58 @@ export const getTranslateScope = (locale) => {
10
86
  export class TranslateScopeService {
11
87
  constructor() {
12
88
  this.translate = inject(TranslateService);
13
- this.loadedLang = new Set();
14
- this.scope = translateScope(RUNTIME, this.translate.locale);
15
- if (!this.translate.translationsList.find(item => item?.[this.translate.locale]?.[this.scope])) {
89
+ this.notification = inject(NotificationService);
90
+ this.scope = translateScope({
91
+ ...RUNTIME,
92
+ i18nVersion: getCurrentPluginI18nVersion(),
93
+ }, this.translate.locale);
94
+ const fallbackLangI18nLoaded = this.translate.translationsList.find(item => item?.[FALLBACK_LANGUAGE]?.[this.scope]);
95
+ if (!fallbackLangI18nLoaded) {
96
+ // 基座未预加载插件翻译文件时自行加载
16
97
  this.setupI18nAssets();
17
98
  }
99
+ else if (!isBuiltInLanguage(this.translate.locale)) {
100
+ this.checkTranslationAvailability();
101
+ }
18
102
  }
19
103
  getScopedKey(key) {
20
104
  return translateScopeKey(this.scope, key);
21
105
  }
106
+ checkTranslationAvailability() {
107
+ const currentLang = this.translate.locale;
108
+ const hasTranslation = this.translate.translationsList.find(item => item?.[currentLang]?.[this.scope]);
109
+ if (!hasTranslation) {
110
+ const fileName = `${this.scope}.json`;
111
+ this.notification.warning({
112
+ title: this.translate.get('translation_file_missing_warning'),
113
+ content: this.translate.get('plugin_missing_translation_file', {
114
+ pluginName: RUNTIME.pluginName,
115
+ appName: RUNTIME.appName,
116
+ lang: currentLang,
117
+ fileName,
118
+ }),
119
+ duration: 5000,
120
+ });
121
+ }
122
+ }
22
123
  async setupI18nAssets() {
23
124
  const lang = this.translate.locale;
24
125
  if (isBuiltInLanguage(lang)) {
25
126
  this.translate.addTranslations({
26
- [lang]: { [this.scope]: await this.loadTranslations(lang) },
127
+ [lang]: { [this.scope]: await fetchI18nFile(lang, this.scope) },
27
128
  });
28
129
  }
29
130
  else {
30
131
  const [en, other] = await Promise.all([
31
- this.loadTranslations('en'),
32
- this.loadTranslations(lang),
132
+ fetchI18nFile(this.translate.options.fallbackLocale, this.scope),
133
+ fetchI18nFile(lang, this.scope),
33
134
  ]);
34
135
  this.translate.addTranslations({
35
- [lang]: { [this.scope]: Object.assign(en, other) },
136
+ [FALLBACK_LANGUAGE]: { [this.scope]: en },
137
+ [lang]: { [this.scope]: other },
36
138
  });
37
139
  }
38
140
  }
39
- async loadTranslations(lang) {
40
- if (this.loadedLang.has(lang)) {
41
- return;
42
- }
43
- this.loadedLang.add(lang);
44
- return this.fetchI18nFile(lang);
45
- }
46
- fetchI18nFile(lang) {
47
- const path = isBuiltInLanguage(lang)
48
- ? RUNTIME.publicPath + 'assets/i18n/' + lang + '.json'
49
- : `/console-i18n/${lang}/plugin__${RUNTIME.pluginName}~${RUNTIME.appName}.json`;
50
- return fetch(path)
51
- .then(res => res.json())
52
- .catch(err => {
53
- console.error(`Failed to load i18n file for plugin ${RUNTIME.pluginName}~${RUNTIME.appName} and language ${lang}`);
54
- console.error(err);
55
- return {};
56
- });
57
- }
58
141
  static { this.ɵfac = function TranslateScopeService_Factory(t) { return new (t || TranslateScopeService)(); }; }
59
142
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: TranslateScopeService, factory: TranslateScopeService.ɵfac, providedIn: 'root' }); }
60
143
  }
@@ -115,4 +198,4 @@ export class ScopedTranslateKeyPipe {
115
198
  name: 'scopedTranslateKey',
116
199
  }]
117
200
  }], null, null); })();
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbHVnaW4tc2RrL3JlbW90ZS9saWIvdHJhbnNsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxjQUFjLEVBQ2QsaUJBQWlCLEVBRWpCLGFBQWEsRUFDYixnQkFBZ0IsR0FDakIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRXhFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFcEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUUxRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLE1BQWMsRUFBRSxFQUFFO0lBQ2xELE1BQU0sT0FBTyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUM7SUFDN0UsT0FBTyxXQUFXLE9BQU8sSUFBSSxPQUFPLENBQUMsVUFBVSxJQUFJLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztBQUN2RSxDQUFDLENBQUM7QUFLRixNQUFNLE9BQU8scUJBQXFCO0lBTWhDO1FBTFEsY0FBUyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3JDLGVBQVUsR0FBRyxJQUFJLEdBQUcsRUFBVSxDQUFDO1FBRTlCLFVBQUssR0FBRyxjQUFjLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7UUFHOUQsSUFDRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUNuQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FB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IjpbImltcG9ydCB7XG4gIEdMT0JBTF9DTFVTVEVSLFxuICBpc0J1aWx0SW5MYW5ndWFnZSxcbiAgVHJhbnNsYXRlS2V5LFxuICBUcmFuc2xhdGVQaXBlLFxuICBUcmFuc2xhdGVTZXJ2aWNlLFxufSBmcm9tICdAYWxhdWRhLWZlL2NvbW1vbic7XG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUlVOVElNRSB9IGZyb20gJy4vcnVudGltZSc7XG5cbmltcG9ydCB7IHRyYW5zbGF0ZVNjb3BlLCB0cmFuc2xhdGVTY29wZUtleSB9IGZyb20gJ0BhbGF1ZGEtZmUvcGx1Z2luLXNkayc7XG5cbmV4cG9ydCBjb25zdCBnZXRUcmFuc2xhdGVTY29wZSA9IChsb2NhbGU6IHN0cmluZykgPT4ge1xuICBjb25zdCBjbHVzdGVyID0gaXNCdWlsdEluTGFuZ3VhZ2UobG9jYWxlKSA/IFJVTlRJTUUuY2x1c3RlciA6IEdMT0JBTF9DTFVTVEVSO1xuICByZXR1cm4gYHBsdWdpbl9fJHtjbHVzdGVyfX4ke1JVTlRJTUUucGx1Z2luTmFtZX1+JHtSVU5USU1FLmFwcE5hbWV9YDtcbn07XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGVTY29wZVNlcnZpY2Uge1xuICBwcml2YXRlIHRyYW5zbGF0ZSA9IGluamVjdChUcmFuc2xhdGVTZXJ2aWNlKTtcbiAgcHJpdmF0ZSBsb2FkZWRMYW5nID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbiAgcmVhZG9ubHkgc2NvcGUgPSB0cmFuc2xhdGVTY29wZShSVU5USU1FLCB0aGlzLnRyYW5zbGF0ZS5sb2NhbGUpO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGlmIChcbiAgICAgICF0aGlzLnRyYW5zbGF0ZS50cmFuc2xhdGlvbnNMaXN0LmZpbmQoXG4gICAgICAgIGl0ZW0gPT4gaXRlbT8uW3RoaXMudHJhbnNsYXRlLmxvY2FsZV0/Llt0aGlzLnNjb3BlXSxcbiAgICAgIClcbiAgICApIHtcbiAgICAgIHRoaXMuc2V0dXBJMThuQXNzZXRzKCk7XG4gICAgfVxuICB9XG5cbiAgZ2V0U2NvcGVkS2V5KGtleTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRyYW5zbGF0ZVNjb3BlS2V5KHRoaXMuc2NvcGUsIGtleSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNldHVwSTE4bkFzc2V0cygpIHtcbiAgICBjb25zdCBsYW5nID0gdGhpcy50cmFuc2xhdGUubG9jYWxlO1xuICAgIGlmIChpc0J1aWx0SW5MYW5ndWFnZShsYW5nKSkge1xuICAgICAgdGhpcy50cmFuc2xhdGUuYWRkVHJhbnNsYXRpb25zKHtcbiAgICAgICAgW2xhbmddOiB7IFt0aGlzLnNjb3BlXTogYXdhaXQgdGhpcy5sb2FkVHJhbnNsYXRpb25zKGxhbmcpIH0sXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgW2VuLCBvdGhlcl0gPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgICAgIHRoaXMubG9hZFRyYW5zbGF0aW9ucygnZW4nKSxcbiAgICAgICAgdGhpcy5sb2FkVHJhbnNsYXRpb25zKGxhbmcpLFxuICAgICAgXSk7XG5cbiAgICAgIHRoaXMudHJhbnNsYXRlLmFkZFRyYW5zbGF0aW9ucyh7XG4gICAgICAgIFtsYW5nXTogeyBbdGhpcy5zY29wZV06IE9iamVjdC5hc3NpZ24oZW4sIG90aGVyKSB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBsb2FkVHJhbnNsYXRpb25zKGxhbmc6IHN0cmluZykge1xuICAgIGlmICh0aGlzLmxvYWRlZExhbmcuaGFzKGxhbmcpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5sb2FkZWRMYW5nLmFkZChsYW5nKTtcblxuICAgIHJldHVybiB0aGlzLmZldGNoSTE4bkZpbGUobGFuZyk7XG4gIH1cblxuICBwcml2YXRlIGZldGNoSTE4bkZpbGUobGFuZzogc3RyaW5nKSB7XG4gICAgY29uc3QgcGF0aCA9IGlzQnVpbHRJbkxhbmd1YWdlKGxhbmcpXG4gICAgICA/IFJVTlRJTUUucHVibGljUGF0aCArICdhc3NldHMvaTE4bi8nICsgbGFuZyArICcuanNvbidcbiAgICAgIDogYC9jb25zb2xlLWkxOG4vJHtsYW5nfS9wbHVnaW5fXyR7UlVOVElNRS5wbHVnaW5OYW1lfX4ke1JVTlRJTUUuYXBwTmFtZX0uanNvbmA7XG4gICAgcmV0dXJuIGZldGNoKHBhdGgpXG4gICAgICAudGhlbihyZXMgPT4gcmVzLmpzb24oKSlcbiAgICAgIC5jYXRjaChlcnIgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgIGBGYWlsZWQgdG8gbG9hZCBpMThuIGZpbGUgZm9yIHBsdWdpbiAke1JVTlRJTUUucGx1Z2luTmFtZX1+JHtSVU5USU1FLmFwcE5hbWV9IGFuZCBsYW5ndWFnZSAke2xhbmd9YCxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xuICAgICAgICByZXR1cm4ge307XG4gICAgICB9KTtcbiAgfVxufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFNjb3BlZFRyYW5zbGF0ZVNlcnZpY2Uge1xuICBwcml2YXRlIHNjb3BlID0gaW5qZWN0KFRyYW5zbGF0ZVNjb3BlU2VydmljZSk7XG4gIHByaXZhdGUgdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuXG4gIGdldChrZXk6IHN0cmluZywgZGF0YT86IHVua25vd24pIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuZ2V0KHRoaXMuc2NvcGUuZ2V0U2NvcGVkS2V5KGtleSksIGRhdGEpO1xuICB9XG59XG5cbkBQaXBlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgbmFtZTogJ3Njb3BlZFRyYW5zbGF0ZScsXG4gIHB1cmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBTY29wZWRUcmFuc2xhdGVQaXBlXG4gIGV4dGVuZHMgVHJhbnNsYXRlUGlwZVxuICBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm1cbntcbiAgcHJpdmF0ZSBzY29wZSA9IGluamVjdChUcmFuc2xhdGVTY29wZVNlcnZpY2UpO1xuXG4gIG92ZXJyaWRlIHRyYW5zZm9ybShrZXk6IFRyYW5zbGF0ZUtleSB8IGFueSwgZGF0YT86IHVua25vd24pOiBzdHJpbmcge1xuICAgIHJldHVybiBzdXBlci50cmFuc2Zvcm0odGhpcy5zY29wZS5nZXRTY29wZWRLZXkoa2V5KSwgZGF0YSk7XG4gIH1cbn1cblxuQFBpcGUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBuYW1lOiAnc2NvcGVkVHJhbnNsYXRlS2V5Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2NvcGVkVHJhbnNsYXRlS2V5UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICBwcml2YXRlIHNjb3BlID0gaW5qZWN0KFRyYW5zbGF0ZVNjb3BlU2VydmljZSk7XG5cbiAgdHJhbnNmb3JtKGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zY29wZS5nZXRTY29wZWRLZXkoa2V5KTtcbiAgfVxufVxuIl19
201
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbHVnaW4tc2RrL3JlbW90ZS9saWIvdHJhbnNsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNqRCxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGNBQWMsRUFDZCxpQkFBaUIsRUFFakIsYUFBYSxFQUNiLGdCQUFnQixHQUNqQixNQUFNLG1CQUFtQixDQUFDO0FBQzNCLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFeEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVwQyxPQUFPLEVBQ0wsY0FBYyxFQUNkLGlCQUFpQixFQUNqQixnQkFBZ0IsR0FDakIsTUFBTSx1QkFBdUIsQ0FBQzs7QUFFL0I7Ozs7R0FJRztBQUNILFNBQVMsYUFBYTtJQUNwQixJQUFJLENBQUM7UUFDSCwrQkFBK0I7UUFDL0IsSUFBSSxPQUFPLGdCQUFnQixLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQzNDLE9BQU8sZ0JBQWdCLEVBQUUsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixpQ0FBaUM7UUFDakMsT0FBTyxDQUFDLEtBQUssQ0FBQyxrREFBa0QsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRUQsY0FBYztJQUNkLElBQUksQ0FBQztRQUNILE1BQU0sZ0JBQWdCLEdBQUksTUFBYyxDQUFDLG1CQUFtQixDQUFDO1FBQzdELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7WUFDcEMsT0FBTyxDQUFDLEtBQUssQ0FDWCxxQ0FBcUMsRUFDckMsZ0JBQWdCLENBQUMsTUFBTSxFQUN2QixrQkFBa0IsQ0FDbkIs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bUJBQW1CO2NBTC9CLElBQUk7ZUFBQztnQkFDSixVQUFVLEVBQUUsSUFBSTtnQkFDaEIsSUFBSSxFQUFFLGlCQUFpQjtnQkFDdkIsSUFBSSxFQUFFLEtBQUs7YUFDWjs7QUFnQkQsTUFBTSxPQUFPLHNCQUFzQjtJQUpuQztRQUtVLFVBQUssR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztLQUsvQztJQUhDLFNBQVMsQ0FBQyxHQUFXO1FBQ25CLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEMsQ0FBQzt1RkFMVSxzQkFBc0I7NEZBQXRCLHNCQUFzQjs7aUZBQXRCLHNCQUFzQjtjQUpsQyxJQUFJO2VBQUM7Z0JBQ0osVUFBVSxFQUFFLElBQUk7Z0JBQ2hCLElBQUksRUFBRSxvQkFBb0I7YUFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOb3RpZmljYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBGQUxMQkFDS19MQU5HVUFHRSxcbiAgR0xPQkFMX0NMVVNURVIsXG4gIGlzQnVpbHRJbkxhbmd1YWdlLFxuICBUcmFuc2xhdGVLZXksXG4gIFRyYW5zbGF0ZVBpcGUsXG4gIFRyYW5zbGF0ZVNlcnZpY2UsXG59IGZyb20gJ0BhbGF1ZGEtZmUvY29tbW9uJztcbmltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBSVU5USU1FIH0gZnJvbSAnLi9ydW50aW1lJztcblxuaW1wb3J0IHtcbiAgdHJhbnNsYXRlU2NvcGUsXG4gIHRyYW5zbGF0ZVNjb3BlS2V5LFxuICBnZXRBbGxFeHRlbnNpb25zLFxufSBmcm9tICdAYWxhdWRhLWZlL3BsdWdpbi1zZGsnO1xuXG4vKipcbiAqIOiOt+WPluaJqeWxleWIl+ihqO+8jOaUr+aMgeaWsOaXp+eJiOacrOWFvOWuue+8iEFDUCA8PSB2NC4x77yJXG4gKiDkvJjlhYjkvb/nlKjmlrDniYggcGx1Z2luLXNkayDnmoQgZ2V0QWxsRXh0ZW5zaW9ucyDmlrnms5VcbiAqIOWbnumAgOWIsOaXp+eJiOacrOeahOWFqOWxgOWPmOmHjyBfX2FsYXVkYV9leHRlbnNpb25zXG4gKi9cbmZ1bmN0aW9uIGdldEV4dGVuc2lvbnMoKTogYW55W10gfCBudWxsIHtcbiAgdHJ5IHtcbiAgICAvLyDlsJ3or5Xkvb/nlKjmlrDniYjmnKznmoQgZ2V0QWxsRXh0ZW5zaW9ucyDmlrnms5VcbiAgICBpZiAodHlwZW9mIGdldEFsbEV4dGVuc2lvbnMgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHJldHVybiBnZXRBbGxFeHRlbnNpb25zKCk7XG4gICAgfVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIC8vIGdldEFsbEV4dGVuc2lvbnMg5LiN5a2Y5Zyo5oiW6LCD55So5aSx6LSl5pe25b+955Wl6ZSZ6K+vXG4gICAgY29uc29sZS5kZWJ1ZygnZ2V0QWxsRXh0ZW5zaW9ucyBtZXRob2Qgbm90IGF2YWlsYWJsZSBvciBmYWlsZWQ6JywgZXJyb3IpO1xuICB9XG5cbiAgLy8g5Zue6YCA5Yiw5pen54mI5pys55qE5YWo5bGA5Y+Y6YePXG4gIHRyeSB7XG4gICAgY29uc3Qgd2luZG93RXh0ZW5zaW9ucyA9ICh3aW5kb3cgYXMgYW55KS5fX2FsYXVkYV9leHRlbnNpb25zO1xuICAgIGlmIChBcnJheS5pc0FycmF5KHdpbmRvd0V4dGVuc2lvbnMpKSB7XG4gICAgICBjb25zb2xlLmRlYnVnKFxuICAgICAgICAnVXNpbmcgZmFsbGJhY2sgX19hbGF1ZGFfZXh0ZW5zaW9uczonLFxuICAgICAgICB3aW5kb3dFeHRlbnNpb25zLmxlbmd0aCxcbiAgICAgICAgJ2V4dGVuc2lvbnMgZm91bmQnLFxuICAgICAgKTtcbiAgICAgIHJldHVybiB3aW5kb3dFeHRlbnNpb25zO1xuICAgIH1cbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmRlYnVnKCdfX2FsYXVkYV9leHRlbnNpb25zIG5vdCBhdmFpbGFibGU6JywgZXJyb3IpO1xuICB9XG5cbiAgLy8g5Lik56eN5pa55byP6YO95LiN5Y+v55So5pe26L+U5ZueIG51bGzvvIzlip/og73lsIbku6XpmY3nuqfmqKHlvI/ov5DooYxcbiAgY29uc29sZS5kZWJ1ZygnTm8gZXh0ZW5zaW9uIHNvdXJjZSBhdmFpbGFibGUsIHJ1bm5pbmcgaW4gZmFsbGJhY2sgbW9kZScpO1xuICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiDojrflj5blvZPliY3mj5Lku7bnmoRpMThu54mI5pys5Y+3XG4gKiDlpoLmnpzml6Dms5Xojrflj5bmianlsZXkv6Hmga/vvIzov5Tlm54gdW5kZWZpbmVk77yMdHJhbnNsYXRlU2NvcGUg5bCG5L2/55So5Z+656GA5L2c55So5Z+fXG4gKi9cbmZ1bmN0aW9uIGdldEN1cnJlbnRQbHVnaW5JMThuVmVyc2lvbigpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBjb25zdCBleHRlbnNpb25zID0gZ2V0RXh0ZW5zaW9ucygpO1xuICBpZiAoIWV4dGVuc2lvbnMpIHtcbiAgICBjb25zb2xlLmRlYnVnKFxuICAgICAgJ05vIGV4dGVuc2lvbnMgYXZhaWxhYmxlLCBpMThuIHdpbGwgdXNlIGJhc2Ugc2NvcGUgd2l0aG91dCB2ZXJzaW9uJyxcbiAgICApO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBjb25zdCBjdXJyZW50RXh0ZW5zaW9uID0gZXh0ZW5zaW9ucy5maW5kKFxuICAgIChleHQ6IGFueSkgPT5cbiAgICAgIGV4dC5wbHVnaW5OYW1lID09PSBSVU5USU1FLnBsdWdpbk5hbWUgJiZcbiAgICAgIGV4dC5hcHBOYW1lID09PSBSVU5USU1FLmFwcE5hbWUgJiZcbiAgICAgIGV4dC5jbHVzdGVyID09PSBSVU5USU1FLmNsdXN0ZXIsXG4gICk7XG5cbiAgaWYgKCFjdXJyZW50RXh0ZW5zaW9uKSB7XG4gICAgY29uc29sZS5kZWJ1ZyhcbiAgICAgICdDdXJyZW50IGV4dGVuc2lvbiBub3QgZm91bmQgaW4gZXh0ZW5zaW9ucyBsaXN0LCB1c2luZyBiYXNlIHNjb3BlJyxcbiAgICApO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBjb25zdCB2ZXJzaW9uID0gY3VycmVudEV4dGVuc2lvbj8uaTE4blZlcnNpb247XG4gIGNvbnNvbGUuZGVidWcoJ1BsdWdpbiBpMThuIHZlcnNpb246JywgdmVyc2lvbiB8fCAnbm90IHNwZWNpZmllZCcpO1xuICByZXR1cm4gdmVyc2lvbjtcbn1cblxuLyoqXG4gKiDojrflj5ZpMThu5paH5Lu2XG4gKi9cbmZ1bmN0aW9uIGZldGNoSTE4bkZpbGUobGFuZzogc3RyaW5nLCBzY29wZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgY29uc3QgcGF0aCA9IGlzQnVpbHRJbkxhbmd1YWdlKGxhbmcpXG4gICAgPyBSVU5USU1FLnB1YmxpY1BhdGggKyAnYXNzZXRzL2kxOG4vJyArIGxhbmcgKyAnLmpzb24nXG4gICAgOiBgL2NvbnNvbGUtaTE4bi8ke2xhbmd9LyR7c2NvcGV9Lmpzb25gO1xuXG4gIHJldHVybiBmZXRjaChwYXRoKVxuICAgIC50aGVuKHJlcyA9PiB7XG4gICAgICBpZiAoIXJlcy5vaykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEhUVFAgJHtyZXMuc3RhdHVzfTogJHtyZXMuc3RhdHVzVGV4dH1gKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXMuanNvbigpO1xuICAgIH0pXG4gICAgLmNhdGNoKGVyciA9PiB7XG4gICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICBgRmFpbGVkIHRvIGxvYWQgaTE4biBmaWxlIGZvciBwbHVnaW4gJHtSVU5USU1FLnBsdWdpbk5hbWV9fiR7UlVOVElNRS5hcHBOYW1lfSBhbmQgbGFuZ3VhZ2UgJHtsYW5nfWAsXG4gICAgICApO1xuICAgICAgY29uc29sZS5lcnJvcihlcnIpO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSk7XG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIGB0cmFuc2xhdGVTY29wZWAgZnVuY3Rpb24gZnJvbSBwbHVnaW4tc2RrIGluc3RlYWRcbiAqL1xuZXhwb3J0IGNvbnN0IGdldFRyYW5zbGF0ZVNjb3BlID0gKGxvY2FsZTogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IGNsdXN0ZXIgPSBpc0J1aWx0SW5MYW5ndWFnZShsb2NhbGUpID8gUlVOVElNRS5jbHVzdGVyIDogR0xPQkFMX0NMVVNURVI7XG4gIHJldHVybiBgcGx1Z2luX18ke2NsdXN0ZXJ9fiR7UlVOVElNRS5wbHVnaW5OYW1lfX4ke1JVTlRJTUUuYXBwTmFtZX1gO1xufTtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFRyYW5zbGF0ZVNjb3BlU2VydmljZSB7XG4gIHByaXZhdGUgdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuICBwcml2YXRlIG5vdGlmaWNhdGlvbiA9IGluamVjdChOb3RpZmljYXRpb25TZXJ2aWNlKTtcblxuICByZWFkb25seSBzY29wZSA9IHRyYW5zbGF0ZVNjb3BlKFxuICAgIHtcbiAgICAgIC4uLlJVTlRJTUUsXG4gICAgICBpMThuVmVyc2lvbjogZ2V0Q3VycmVudFBsdWdpbkkxOG5WZXJzaW9uKCksXG4gICAgfSxcbiAgICB0aGlzLnRyYW5zbGF0ZS5sb2NhbGUsXG4gICk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29uc3QgZmFsbGJhY2tMYW5nSTE4bkxvYWRlZCA9IHRoaXMudHJhbnNsYXRlLnRyYW5zbGF0aW9uc0xpc3QuZmluZChcbiAgICAgIGl0ZW0gPT4gaXRlbT8uW0ZBTExCQUNLX0xBTkdVQUdFXT8uW3RoaXMuc2NvcGVdLFxuICAgICk7XG5cbiAgICBpZiAoIWZhbGxiYWNrTGFuZ0kxOG5Mb2FkZWQpIHtcbiAgICAgIC8vIOWfuuW6p+acqumihOWKoOi9veaPkuS7tue/u+ivkeaWh+S7tuaXtuiHquihjOWKoOi9vVxuICAgICAgdGhpcy5zZXR1cEkxOG5Bc3NldHMoKTtcbiAgICB9IGVsc2UgaWYgKCFpc0J1aWx0SW5MYW5ndWFnZSh0aGlzLnRyYW5zbGF0ZS5sb2NhbGUpKSB7XG4gICAgICB0aGlzLmNoZWNrVHJhbnNsYXRpb25BdmFpbGFiaWxpdHkoKTtcbiAgICB9XG4gIH1cblxuICBnZXRTY29wZWRLZXkoa2V5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHJhbnNsYXRlU2NvcGVLZXkodGhpcy5zY29wZSwga2V5KTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tUcmFuc2xhdGlvbkF2YWlsYWJpbGl0eSgpIHtcbiAgICBjb25zdCBjdXJyZW50TGFuZyA9IHRoaXMudHJhbnNsYXRlLmxvY2FsZTtcblxuICAgIGNvbnN0IGhhc1RyYW5zbGF0aW9uID0gdGhpcy50cmFuc2xhdGUudHJhbnNsYXRpb25zTGlzdC5maW5kKFxuICAgICAgaXRlbSA9PiBpdGVtPy5bY3VycmVudExhbmddPy5bdGhpcy5zY29wZV0sXG4gICAgKTtcblxuICAgIGlmICghaGFzVHJhbnNsYXRpb24pIHtcbiAgICAgIGNvbnN0IGZpbGVOYW1lID0gYCR7dGhpcy5zY29wZX0uanNvbmA7XG5cbiAgICAgIHRoaXMubm90aWZpY2F0aW9uLndhcm5pbmcoe1xuICAgICAgICB0aXRsZTogdGhpcy50cmFuc2xhdGUuZ2V0KCd0cmFuc2xhdGlvbl9maWxlX21pc3Npbmdfd2FybmluZycpLFxuICAgICAgICBjb250ZW50OiB0aGlzLnRyYW5zbGF0ZS5nZXQoJ3BsdWdpbl9taXNzaW5nX3RyYW5zbGF0aW9uX2ZpbGUnLCB7XG4gICAgICAgICAgcGx1Z2luTmFtZTogUlVOVElNRS5wbHVnaW5OYW1lLFxuICAgICAgICAgIGFwcE5hbWU6IFJVTlRJTUUuYXBwTmFtZSxcbiAgICAgICAgICBsYW5nOiBjdXJyZW50TGFuZyxcbiAgICAgICAgICBmaWxlTmFtZSxcbiAgICAgICAgfSksXG4gICAgICAgIGR1cmF0aW9uOiA1MDAwLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBzZXR1cEkxOG5Bc3NldHMoKSB7XG4gICAgY29uc3QgbGFuZyA9IHRoaXMudHJhbnNsYXRlLmxvY2FsZTtcbiAgICBpZiAoaXNCdWlsdEluTGFuZ3VhZ2UobGFuZykpIHtcbiAgICAgIHRoaXMudHJhbnNsYXRlLmFkZFRyYW5zbGF0aW9ucyh7XG4gICAgICAgIFtsYW5nXTogeyBbdGhpcy5zY29wZV06IGF3YWl0IGZldGNoSTE4bkZpbGUobGFuZywgdGhpcy5zY29wZSkgfSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBbZW4sIG90aGVyXSA9IGF3YWl0IFByb21pc2UuYWxsKFtcbiAgICAgICAgZmV0Y2hJMThuRmlsZSh0aGlzLnRyYW5zbGF0ZS5vcHRpb25zLmZhbGxiYWNrTG9jYWxlLCB0aGlzLnNjb3BlKSxcbiAgICAgICAgZmV0Y2hJMThuRmlsZShsYW5nLCB0aGlzLnNjb3BlKSxcbiAgICAgIF0pO1xuXG4gICAgICB0aGlzLnRyYW5zbGF0ZS5hZGRUcmFuc2xhdGlvbnMoe1xuICAgICAgICBbRkFMTEJBQ0tfTEFOR1VBR0VdOiB7IFt0aGlzLnNjb3BlXTogZW4gfSxcbiAgICAgICAgW2xhbmddOiB7IFt0aGlzLnNjb3BlXTogb3RoZXIgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFNjb3BlZFRyYW5zbGF0ZVNlcnZpY2Uge1xuICBwcml2YXRlIHNjb3BlID0gaW5qZWN0KFRyYW5zbGF0ZVNjb3BlU2VydmljZSk7XG4gIHByaXZhdGUgdHJhbnNsYXRlID0gaW5qZWN0KFRyYW5zbGF0ZVNlcnZpY2UpO1xuXG4gIGdldChrZXk6IHN0cmluZywgZGF0YT86IHVua25vd24pIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuZ2V0KHRoaXMuc2NvcGUuZ2V0U2NvcGVkS2V5KGtleSksIGRhdGEpO1xuICB9XG59XG5cbkBQaXBlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgbmFtZTogJ3Njb3BlZFRyYW5zbGF0ZScsXG4gIHB1cmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBTY29wZWRUcmFuc2xhdGVQaXBlXG4gIGV4dGVuZHMgVHJhbnNsYXRlUGlwZVxuICBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm1cbntcbiAgcHJpdmF0ZSBzY29wZSA9IGluamVjdChUcmFuc2xhdGVTY29wZVNlcnZpY2UpO1xuXG4gIG92ZXJyaWRlIHRyYW5zZm9ybShrZXk6IFRyYW5zbGF0ZUtleSB8IGFueSwgZGF0YT86IHVua25vd24pOiBzdHJpbmcge1xuICAgIHJldHVybiBzdXBlci50cmFuc2Zvcm0odGhpcy5zY29wZS5nZXRTY29wZWRLZXkoa2V5KSwgZGF0YSk7XG4gIH1cbn1cblxuQFBpcGUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBuYW1lOiAnc2NvcGVkVHJhbnNsYXRlS2V5Jyxcbn0pXG5leHBvcnQgY2xhc3MgU2NvcGVkVHJhbnNsYXRlS2V5UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICBwcml2YXRlIHNjb3BlID0gaW5qZWN0KFRyYW5zbGF0ZVNjb3BlU2VydmljZSk7XG5cbiAgdHJhbnNmb3JtKGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zY29wZS5nZXRTY29wZWRLZXkoa2V5KTtcbiAgfVxufVxuIl19
@@ -1,5 +1,6 @@
1
1
  import { Translations } from '@alauda-fe/common';
2
2
  import { Extension } from './extensions-loader';
3
+ export declare function getAllExtensions(): Extension[];
3
4
  export declare function getAppExtensions<T = any>(type: string | string[], cluster?: string): Array<Extension<T>>;
4
5
  export declare function getAppExtensionTranslations(): Translations[];
5
6
  export declare function setupAppExtensions(host: string, hostVersion?: string): Promise<Extension<any>[]>;
@@ -0,0 +1,17 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { Extension } from '../../extensions-loader';
3
+ import * as i0 from "@angular/core";
4
+ export interface GlobalEntryPointOption {
5
+ index?: number;
6
+ expose?: string;
7
+ component: string;
8
+ pluginName?: string;
9
+ }
10
+ export declare function getGlobalEntryPoints(scope: string, _name?: string): Extension<GlobalEntryPointOption>[];
11
+ export declare class RemoteGlobalEntryPointComponent implements OnInit {
12
+ scope: import("@angular/core").InputSignal<string>;
13
+ entryPoints: Array<Extension<GlobalEntryPointOption>>;
14
+ ngOnInit(): void;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<RemoteGlobalEntryPointComponent, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<RemoteGlobalEntryPointComponent, "plg-remote-global-entrypoint", never, { "scope": { "alias": "scope"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
17
+ }
@@ -0,0 +1 @@
1
+ export * from './components';
@@ -1,4 +1,5 @@
1
1
  export * from './account-menu';
2
+ export * from './global-entrypoint';
2
3
  export * from './header-actions';
3
4
  export * from './help-menu';
4
5
  export * from './navigation';
@@ -12,6 +12,7 @@ export interface Extension<T = any> extends RawExtension<T> {
12
12
  appName: string;
13
13
  entrypoint: string;
14
14
  dependencies: Record<string, string>;
15
+ i18nVersion?: string;
15
16
  }
16
17
  interface RawExtension<T = any> {
17
18
  type: string;
package/lib/utils.d.ts CHANGED
@@ -1,7 +1,4 @@
1
1
  import { Extension } from './extensions-loader';
2
- /**
3
- * @deprecated Use isLocalDev from @alauda-fe/common instead
4
- */
5
2
  export declare function isLocalEnv(): boolean;
6
3
  export declare function isStaticPluginPath(publicPath: string): boolean;
7
4
  export declare const LOCAL_DEV_EXTENSION_INFO: {
@@ -18,9 +15,10 @@ export declare const STATIC_EXTENSION_INFO: {
18
15
  export declare function getBootMode(): 'standard' | 'safe';
19
16
  export declare function loadRemote(remote: string, module: string): Promise<any>;
20
17
  export declare function filterLatestVersion<O = any>(identity: (ext: O) => unknown): (exts: Array<Extension<O>>) => Array<Extension<O>>;
21
- export declare const translateScope: ({ cluster, pluginName, appName, }: {
18
+ export declare const translateScope: (extension: {
22
19
  cluster: string;
23
20
  pluginName: string;
24
21
  appName: string;
22
+ i18nVersion?: string;
25
23
  }, locale: string) => string;
26
24
  export declare const translateScopeKey: (scope: string, key: string) => string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alauda-fe/plugin-sdk",
3
- "version": "0.0.16",
3
+ "version": "0.0.18",
4
4
  "peerDependencies": {
5
5
  "@nx/angular": "^16.10.0"
6
6
  },
@@ -1,16 +1,18 @@
1
1
  import { TranslateKey, TranslatePipe } from '@alauda-fe/common';
2
2
  import { PipeTransform } from '@angular/core';
3
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * @deprecated use `translateScope` function from plugin-sdk instead
6
+ */
4
7
  export declare const getTranslateScope: (locale: string) => string;
5
8
  export declare class TranslateScopeService {
6
9
  private translate;
7
- private loadedLang;
10
+ private notification;
8
11
  readonly scope: string;
9
12
  constructor();
10
13
  getScopedKey(key: string): string;
14
+ private checkTranslationAvailability;
11
15
  private setupI18nAssets;
12
- private loadTranslations;
13
- private fetchI18nFile;
14
16
  static ɵfac: i0.ɵɵFactoryDeclaration<TranslateScopeService, never>;
15
17
  static ɵprov: i0.ɵɵInjectableDeclaration<TranslateScopeService>;
16
18
  }