@geekron/strapi 0.2.7 → 0.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (230) hide show
  1. package/dist/admin/index.d.ts +5 -0
  2. package/dist/admin/index.d.ts.map +1 -0
  3. package/dist/admin/src/App.d.ts +4 -0
  4. package/dist/admin/src/App.d.ts.map +1 -0
  5. package/dist/admin/src/boot/handle-missing-translations.d.ts +2 -0
  6. package/dist/admin/src/boot/handle-missing-translations.d.ts.map +1 -0
  7. package/dist/admin/src/boot/index.d.ts +3 -0
  8. package/dist/admin/src/boot/index.d.ts.map +1 -0
  9. package/dist/admin/src/boot/remove-links.d.ts +2 -0
  10. package/dist/admin/src/boot/remove-links.d.ts.map +1 -0
  11. package/dist/admin/src/bootstrap.d.ts +4 -0
  12. package/dist/admin/src/bootstrap.d.ts.map +1 -0
  13. package/dist/admin/src/components/ApiErrorAlert.d.ts +42 -0
  14. package/dist/admin/src/components/ApiErrorAlert.d.ts.map +1 -0
  15. package/dist/admin/src/components/DashboardStats.d.ts +30 -0
  16. package/dist/admin/src/components/DashboardStats.d.ts.map +1 -0
  17. package/dist/admin/src/components/DataSelector.d.ts +22 -0
  18. package/dist/admin/src/components/DataSelector.d.ts.map +1 -0
  19. package/dist/admin/src/components/DataTable.d.ts +24 -0
  20. package/dist/admin/src/components/DataTable.d.ts.map +1 -0
  21. package/dist/admin/src/contract.d.ts +2 -0
  22. package/dist/admin/src/contract.d.ts.map +1 -0
  23. package/dist/admin/src/fields/ColorPicker.d.ts +9 -0
  24. package/dist/admin/src/fields/ColorPicker.d.ts.map +1 -0
  25. package/dist/admin/src/fields/DataNested/SortableTree.d.ts +13 -0
  26. package/dist/admin/src/fields/DataNested/SortableTree.d.ts.map +1 -0
  27. package/dist/admin/src/fields/DataNested/components/Action.d.ts +11 -0
  28. package/dist/admin/src/fields/DataNested/components/Action.d.ts.map +1 -0
  29. package/dist/admin/src/fields/DataNested/components/Handle.d.ts +3 -0
  30. package/dist/admin/src/fields/DataNested/components/Handle.d.ts.map +1 -0
  31. package/dist/admin/src/fields/DataNested/components/ItemModal.d.ts +11 -0
  32. package/dist/admin/src/fields/DataNested/components/ItemModal.d.ts.map +1 -0
  33. package/dist/admin/src/fields/DataNested/components/Remove.d.ts +3 -0
  34. package/dist/admin/src/fields/DataNested/components/Remove.d.ts.map +1 -0
  35. package/dist/admin/src/fields/DataNested/components/SortableTreeItem.d.ts +8 -0
  36. package/dist/admin/src/fields/DataNested/components/SortableTreeItem.d.ts.map +1 -0
  37. package/dist/admin/src/fields/DataNested/components/TreeItem.d.ts +24 -0
  38. package/dist/admin/src/fields/DataNested/components/TreeItem.d.ts.map +1 -0
  39. package/dist/admin/src/fields/DataNested/components/index.d.ts +9 -0
  40. package/dist/admin/src/fields/DataNested/components/index.d.ts.map +1 -0
  41. package/dist/admin/src/fields/DataNested/constants.d.ts +16 -0
  42. package/dist/admin/src/fields/DataNested/constants.d.ts.map +1 -0
  43. package/dist/admin/src/fields/DataNested/hooks/index.d.ts +4 -0
  44. package/dist/admin/src/fields/DataNested/hooks/index.d.ts.map +1 -0
  45. package/dist/admin/src/fields/DataNested/hooks/useAnnouncements.d.ts +10 -0
  46. package/dist/admin/src/fields/DataNested/hooks/useAnnouncements.d.ts.map +1 -0
  47. package/dist/admin/src/fields/DataNested/hooks/useDragState.d.ts +21 -0
  48. package/dist/admin/src/fields/DataNested/hooks/useDragState.d.ts.map +1 -0
  49. package/dist/admin/src/fields/DataNested/hooks/useTreeItems.d.ts +23 -0
  50. package/dist/admin/src/fields/DataNested/hooks/useTreeItems.d.ts.map +1 -0
  51. package/dist/admin/src/fields/DataNested/icons/AddChildIcon.d.ts +2 -0
  52. package/dist/admin/src/fields/DataNested/icons/AddChildIcon.d.ts.map +1 -0
  53. package/dist/admin/src/fields/DataNested/icons/AddSiblingIcon.d.ts +2 -0
  54. package/dist/admin/src/fields/DataNested/icons/AddSiblingIcon.d.ts.map +1 -0
  55. package/dist/admin/src/fields/DataNested/icons/CollapseIcon.d.ts +2 -0
  56. package/dist/admin/src/fields/DataNested/icons/CollapseIcon.d.ts.map +1 -0
  57. package/dist/admin/src/fields/DataNested/icons/DragHandleIcon.d.ts +2 -0
  58. package/dist/admin/src/fields/DataNested/icons/DragHandleIcon.d.ts.map +1 -0
  59. package/dist/admin/src/fields/DataNested/icons/EditIcon.d.ts +2 -0
  60. package/dist/admin/src/fields/DataNested/icons/EditIcon.d.ts.map +1 -0
  61. package/dist/admin/src/fields/DataNested/icons/RemoveIcon.d.ts +2 -0
  62. package/dist/admin/src/fields/DataNested/icons/RemoveIcon.d.ts.map +1 -0
  63. package/dist/admin/src/fields/DataNested/icons/index.d.ts +7 -0
  64. package/dist/admin/src/fields/DataNested/icons/index.d.ts.map +1 -0
  65. package/dist/admin/src/fields/DataNested/keyboardCoordinates.d.ts +4 -0
  66. package/dist/admin/src/fields/DataNested/keyboardCoordinates.d.ts.map +1 -0
  67. package/dist/admin/src/fields/DataNested/styles/Action.d.ts +5 -0
  68. package/dist/admin/src/fields/DataNested/styles/Action.d.ts.map +1 -0
  69. package/dist/admin/src/fields/DataNested/styles/Collapse.d.ts +8 -0
  70. package/dist/admin/src/fields/DataNested/styles/Collapse.d.ts.map +1 -0
  71. package/dist/admin/src/fields/DataNested/styles/Count.d.ts +2 -0
  72. package/dist/admin/src/fields/DataNested/styles/Count.d.ts.map +1 -0
  73. package/dist/admin/src/fields/DataNested/styles/EmptyItem.d.ts +2 -0
  74. package/dist/admin/src/fields/DataNested/styles/EmptyItem.d.ts.map +1 -0
  75. package/dist/admin/src/fields/DataNested/styles/EmptyText.d.ts +2 -0
  76. package/dist/admin/src/fields/DataNested/styles/EmptyText.d.ts.map +1 -0
  77. package/dist/admin/src/fields/DataNested/styles/Text.d.ts +4 -0
  78. package/dist/admin/src/fields/DataNested/styles/Text.d.ts.map +1 -0
  79. package/dist/admin/src/fields/DataNested/styles/TreeItem.d.ts +4 -0
  80. package/dist/admin/src/fields/DataNested/styles/TreeItem.d.ts.map +1 -0
  81. package/dist/admin/src/fields/DataNested/styles/Wrapper.d.ts +9 -0
  82. package/dist/admin/src/fields/DataNested/styles/Wrapper.d.ts.map +1 -0
  83. package/dist/admin/src/fields/DataNested/styles/index.d.ts +9 -0
  84. package/dist/admin/src/fields/DataNested/styles/index.d.ts.map +1 -0
  85. package/dist/admin/src/fields/DataNested/types.d.ts +27 -0
  86. package/dist/admin/src/fields/DataNested/types.d.ts.map +1 -0
  87. package/dist/admin/src/fields/DataNested/utilities.d.ts +21 -0
  88. package/dist/admin/src/fields/DataNested/utilities.d.ts.map +1 -0
  89. package/dist/admin/src/fields/DataNested/utils/common.d.ts +2 -0
  90. package/dist/admin/src/fields/DataNested/utils/common.d.ts.map +1 -0
  91. package/dist/admin/src/fields/DataNested/utils/index.d.ts +4 -0
  92. package/dist/admin/src/fields/DataNested/utils/index.d.ts.map +1 -0
  93. package/dist/admin/src/fields/DataNested/utils/projection.d.ts +9 -0
  94. package/dist/admin/src/fields/DataNested/utils/projection.d.ts.map +1 -0
  95. package/dist/admin/src/fields/DataNested/utils/tree.d.ts +15 -0
  96. package/dist/admin/src/fields/DataNested/utils/tree.d.ts.map +1 -0
  97. package/dist/admin/src/fields/DataNested.d.ts +3 -0
  98. package/dist/admin/src/fields/DataNested.d.ts.map +1 -0
  99. package/dist/admin/src/fields/DataSelect.d.ts +9 -0
  100. package/dist/admin/src/fields/DataSelect.d.ts.map +1 -0
  101. package/dist/admin/src/fields/IconPicker.d.ts +9 -0
  102. package/dist/admin/src/fields/IconPicker.d.ts.map +1 -0
  103. package/dist/admin/src/fields/SlugInput.d.ts +14 -0
  104. package/dist/admin/src/fields/SlugInput.d.ts.map +1 -0
  105. package/dist/admin/src/fields/icons.d.ts +11 -0
  106. package/dist/admin/src/fields/icons.d.ts.map +1 -0
  107. package/dist/admin/src/fields/index.d.ts +3 -0
  108. package/dist/admin/src/fields/index.d.ts.map +1 -0
  109. package/dist/admin/src/handlers.d.ts +3 -0
  110. package/dist/admin/src/handlers.d.ts.map +1 -0
  111. package/dist/admin/src/icons/ColorIcon.d.ts +3 -0
  112. package/dist/admin/src/icons/ColorIcon.d.ts.map +1 -0
  113. package/dist/admin/src/icons/DataIcon.d.ts +3 -0
  114. package/dist/admin/src/icons/DataIcon.d.ts.map +1 -0
  115. package/dist/admin/src/icons/IconsIcon.d.ts +3 -0
  116. package/dist/admin/src/icons/IconsIcon.d.ts.map +1 -0
  117. package/dist/admin/src/icons/NestedIcon.d.ts +3 -0
  118. package/dist/admin/src/icons/NestedIcon.d.ts.map +1 -0
  119. package/dist/admin/src/icons/SlugIcon.d.ts +3 -0
  120. package/dist/admin/src/icons/SlugIcon.d.ts.map +1 -0
  121. package/dist/admin/src/icons/index.d.ts +6 -0
  122. package/dist/admin/src/icons/index.d.ts.map +1 -0
  123. package/dist/admin/src/index.d.ts +5 -0
  124. package/dist/admin/src/index.d.ts.map +1 -0
  125. package/dist/admin/src/pages/Dashboard.d.ts +4 -0
  126. package/dist/admin/src/pages/Dashboard.d.ts.map +1 -0
  127. package/dist/admin/src/pages/Inquiry.d.ts +4 -0
  128. package/dist/admin/src/pages/Inquiry.d.ts.map +1 -0
  129. package/dist/admin/src/pages/InquiryDetail.d.ts +4 -0
  130. package/dist/admin/src/pages/InquiryDetail.d.ts.map +1 -0
  131. package/dist/admin/src/pages/Visitor.d.ts +4 -0
  132. package/dist/admin/src/pages/Visitor.d.ts.map +1 -0
  133. package/dist/admin/src/register.d.ts +4 -0
  134. package/dist/admin/src/register.d.ts.map +1 -0
  135. package/dist/admin/src/utils/getTrad.d.ts +2 -0
  136. package/dist/admin/src/utils/getTrad.d.ts.map +1 -0
  137. package/dist/admin/src/utils/index.d.ts +3 -0
  138. package/dist/admin/src/utils/index.d.ts.map +1 -0
  139. package/dist/admin/src/utils/toAlphabet.d.ts +6 -0
  140. package/dist/admin/src/utils/toAlphabet.d.ts.map +1 -0
  141. package/dist/admin/src/widgets/WelcomeWidget.d.ts +4 -0
  142. package/dist/admin/src/widgets/WelcomeWidget.d.ts.map +1 -0
  143. package/dist/admin/src/widgets/index.d.ts +3 -0
  144. package/dist/admin/src/widgets/index.d.ts.map +1 -0
  145. package/dist/i18n/index.d.ts +2 -0
  146. package/dist/i18n/index.d.ts.map +1 -0
  147. package/dist/i18n/index.js +79 -35
  148. package/dist/i18n/index.mjs +79 -35
  149. package/dist/i18n/translations/index.d.ts +56 -0
  150. package/dist/i18n/translations/index.d.ts.map +1 -0
  151. package/dist/server/index.d.ts +4 -0
  152. package/dist/server/index.d.ts.map +1 -0
  153. package/dist/server/src/api/common/controllers/common.d.ts +8 -0
  154. package/dist/server/src/api/common/controllers/common.d.ts.map +1 -0
  155. package/dist/server/src/api/common/index.d.ts +89 -0
  156. package/dist/server/src/api/common/index.d.ts.map +1 -0
  157. package/dist/server/src/api/common/routes/common.d.ts +6 -0
  158. package/dist/server/src/api/common/routes/common.d.ts.map +1 -0
  159. package/dist/server/src/api/common/services/common.d.ts +8 -0
  160. package/dist/server/src/api/common/services/common.d.ts.map +1 -0
  161. package/dist/server/src/api/index.d.ts +12 -0
  162. package/dist/server/src/api/index.d.ts.map +1 -0
  163. package/dist/server/src/api/menu/controllers/menu.d.ts +8 -0
  164. package/dist/server/src/api/menu/controllers/menu.d.ts.map +1 -0
  165. package/dist/server/src/api/menu/index.d.ts +48 -0
  166. package/dist/server/src/api/menu/index.d.ts.map +1 -0
  167. package/dist/server/src/api/menu/routes/menu.d.ts +6 -0
  168. package/dist/server/src/api/menu/routes/menu.d.ts.map +1 -0
  169. package/dist/server/src/api/menu/services/menu.d.ts +8 -0
  170. package/dist/server/src/api/menu/services/menu.d.ts.map +1 -0
  171. package/dist/server/src/api/site/controllers/site.d.ts +8 -0
  172. package/dist/server/src/api/site/controllers/site.d.ts.map +1 -0
  173. package/dist/server/src/api/site/index.d.ts +106 -0
  174. package/dist/server/src/api/site/index.d.ts.map +1 -0
  175. package/dist/server/src/api/site/routes/site.d.ts +6 -0
  176. package/dist/server/src/api/site/routes/site.d.ts.map +1 -0
  177. package/dist/server/src/api/site/services/site.d.ts +8 -0
  178. package/dist/server/src/api/site/services/site.d.ts.map +1 -0
  179. package/dist/server/src/api/theme/controllers/theme.d.ts +8 -0
  180. package/dist/server/src/api/theme/controllers/theme.d.ts.map +1 -0
  181. package/dist/server/src/api/theme/index.d.ts +71 -0
  182. package/dist/server/src/api/theme/index.d.ts.map +1 -0
  183. package/dist/server/src/api/theme/routes/theme.d.ts +6 -0
  184. package/dist/server/src/api/theme/routes/theme.d.ts.map +1 -0
  185. package/dist/server/src/api/theme/services/theme.d.ts +8 -0
  186. package/dist/server/src/api/theme/services/theme.d.ts.map +1 -0
  187. package/dist/server/src/api/translation/controllers/translation.d.ts +8 -0
  188. package/dist/server/src/api/translation/controllers/translation.d.ts.map +1 -0
  189. package/dist/server/src/api/translation/index.d.ts +49 -0
  190. package/dist/server/src/api/translation/index.d.ts.map +1 -0
  191. package/dist/server/src/api/translation/routes/translation.d.ts +6 -0
  192. package/dist/server/src/api/translation/routes/translation.d.ts.map +1 -0
  193. package/dist/server/src/api/translation/services/translation.d.ts +8 -0
  194. package/dist/server/src/api/translation/services/translation.d.ts.map +1 -0
  195. package/dist/server/src/bootstrap.d.ts +4 -0
  196. package/dist/server/src/bootstrap.d.ts.map +1 -0
  197. package/dist/server/src/components/index.d.ts +12 -0
  198. package/dist/server/src/components/index.d.ts.map +1 -0
  199. package/dist/server/src/config/index.d.ts +8 -0
  200. package/dist/server/src/config/index.d.ts.map +1 -0
  201. package/dist/server/src/contentTypes/index.d.ts +4 -0
  202. package/dist/server/src/contentTypes/index.d.ts.map +1 -0
  203. package/dist/server/src/controllers/fields.d.ts +4 -0
  204. package/dist/server/src/controllers/fields.d.ts.map +1 -0
  205. package/dist/server/src/controllers/index.d.ts +4 -0
  206. package/dist/server/src/controllers/index.d.ts.map +1 -0
  207. package/dist/server/src/controllers/inquiries.d.ts +4 -0
  208. package/dist/server/src/controllers/inquiries.d.ts.map +1 -0
  209. package/dist/server/src/controllers/utils/request.d.ts +66 -0
  210. package/dist/server/src/controllers/utils/request.d.ts.map +1 -0
  211. package/dist/server/src/controllers/visitors.d.ts +4 -0
  212. package/dist/server/src/controllers/visitors.d.ts.map +1 -0
  213. package/dist/server/src/controllers/website.d.ts +4 -0
  214. package/dist/server/src/controllers/website.d.ts.map +1 -0
  215. package/dist/server/src/destroy.d.ts +4 -0
  216. package/dist/server/src/destroy.d.ts.map +1 -0
  217. package/dist/server/src/index.d.ts +4 -0
  218. package/dist/server/src/index.d.ts.map +1 -0
  219. package/dist/server/src/middlewares/index.d.ts +4 -0
  220. package/dist/server/src/middlewares/index.d.ts.map +1 -0
  221. package/dist/server/src/policies/index.d.ts +4 -0
  222. package/dist/server/src/policies/index.d.ts.map +1 -0
  223. package/dist/server/src/register.d.ts +4 -0
  224. package/dist/server/src/register.d.ts.map +1 -0
  225. package/dist/server/src/routes/index.d.ts +4 -0
  226. package/dist/server/src/routes/index.d.ts.map +1 -0
  227. package/dist/server/src/services/index.d.ts +4 -0
  228. package/dist/server/src/services/index.d.ts.map +1 -0
  229. package/i18n/translations/index.ts +230 -50
  230. package/package.json +21 -9
@@ -12,47 +12,91 @@ var __export = (target, all) => {
12
12
  // i18n/translations/index.ts
13
13
  var exports_translations = {};
14
14
  __export(exports_translations, {
15
+ translations: () => translations,
15
16
  default: () => translations_default
16
17
  });
17
- var loadTranslations = (locale) => {
18
- const allModules = import.meta.glob("./*/**/*.json", { eager: true, import: "default" });
19
- const handlePrefix = (translations, prefix) => {
20
- return Object.keys(translations).reduce((acc, key) => {
21
- acc[`${prefix}.${key}`] = translations[key];
18
+ var addPrefix = (translations, prefix) => {
19
+ return Object.keys(translations).reduce((acc, key) => {
20
+ acc[`${prefix}.${key}`] = translations[key];
21
+ return acc;
22
+ }, {});
23
+ };
24
+ var isNestedFile = (modulePath, baseDepth = 3) => {
25
+ return modulePath.split("/").length > baseDepth;
26
+ };
27
+ var extractFileName = (modulePath) => {
28
+ const match = modulePath.match(/\/([^/]+)\.json$/);
29
+ return match?.[1] || "";
30
+ };
31
+ var processLocaleModules = (modules, locale, basePath = ".") => {
32
+ const localePrefix = `${basePath}/${locale}/`;
33
+ return Object.keys(modules).reduce((acc, modulePath) => {
34
+ if (!modulePath.startsWith(localePrefix)) {
22
35
  return acc;
23
- }, {});
24
- };
25
- const processModules = (modules) => {
26
- return Object.keys(modules).reduce((acc, modulePath) => {
27
- if (!modulePath.startsWith(`./${locale}/`)) {
28
- return acc;
29
- }
30
- const fileNameMatch = modulePath.match(/\/([^/]+)\.json$/);
31
- const fileName = fileNameMatch?.[1] || "";
32
- if (fileName) {
33
- console.log();
34
- const isPrefixFile = modulePath.split("/").length > 3;
35
- if (isPrefixFile) {
36
- return {
37
- ...acc,
38
- ...handlePrefix(modules[modulePath], fileName)
39
- };
40
- } else {
41
- return {
42
- ...acc,
43
- ...modules[modulePath]
44
- };
45
- }
46
- }
36
+ }
37
+ const fileName = extractFileName(modulePath);
38
+ if (!fileName) {
47
39
  return acc;
48
- }, {});
49
- };
50
- return processModules(allModules);
40
+ }
41
+ const translation = modules[modulePath];
42
+ if (isNestedFile(modulePath)) {
43
+ return {
44
+ ...acc,
45
+ ...addPrefix(translation, fileName)
46
+ };
47
+ }
48
+ return {
49
+ ...acc,
50
+ ...translation
51
+ };
52
+ }, {});
53
+ };
54
+ var discoverLocales = (modules, basePath = ".") => {
55
+ const locales = new Set;
56
+ const pattern = new RegExp(`^${basePath.replace(".", "\\.")}/([^/]+)/`);
57
+ Object.keys(modules).forEach((modulePath) => {
58
+ const match = modulePath.match(pattern);
59
+ if (match?.[1]) {
60
+ locales.add(match[1]);
61
+ }
62
+ });
63
+ return Array.from(locales);
51
64
  };
52
- var translations_default = {
53
- en: loadTranslations("en"),
54
- "zh-Hans": loadTranslations("zh-Hans")
65
+ var deepMerge = (target, source) => {
66
+ const result = { ...target };
67
+ for (const key in source) {
68
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
69
+ const sourceValue = source[key];
70
+ const targetValue = result[key];
71
+ const shouldDeepMerge = typeof sourceValue === "object" && sourceValue !== null && !Array.isArray(sourceValue) && typeof targetValue === "object" && targetValue !== null && !Array.isArray(targetValue);
72
+ if (shouldDeepMerge) {
73
+ result[key] = deepMerge(targetValue, sourceValue);
74
+ } else {
75
+ result[key] = sourceValue;
76
+ }
77
+ }
78
+ }
79
+ return result;
80
+ };
81
+ var translations = (config) => {
82
+ const { extensions = [], locales: specifiedLocales } = config || {};
83
+ const defaultModules = import.meta.glob("./*/**/*.json", { eager: true, import: "default" });
84
+ const allModuleSources = [
85
+ { modules: defaultModules, basePath: "." },
86
+ ...extensions
87
+ ];
88
+ const allLocales = specifiedLocales || [
89
+ ...new Set(allModuleSources.flatMap(({ modules, basePath = "." }) => discoverLocales(modules, basePath)))
90
+ ];
91
+ return allLocales.reduce((result, locale) => {
92
+ result[locale] = allModuleSources.reduce((acc, { modules, basePath = "." }) => {
93
+ const localeTranslations = processLocaleModules(modules, locale, basePath);
94
+ return deepMerge(acc, localeTranslations);
95
+ }, {});
96
+ return result;
97
+ }, {});
55
98
  };
99
+ var translations_default = translations();
56
100
  export {
57
101
  exports_translations as translations
58
102
  };
@@ -0,0 +1,56 @@
1
+ /**
2
+ * 翻译加载器配置接口
3
+ */
4
+ interface TranslationsConfig {
5
+ /** 扩展翻译目录配置数组(自定义目录的值会覆盖默认目录的值) */
6
+ extensions?: Array<{
7
+ /** 扩展目录的模块对象(使用 import.meta.glob 导入) */
8
+ modules: Record<string, any>;
9
+ /** 扩展目录的基础路径(用于路径匹配) */
10
+ basePath?: string;
11
+ }>;
12
+ /** 指定要加载的语言列表,如果不指定则自动发现 */
13
+ locales?: string[];
14
+ }
15
+ /**
16
+ * 创建多语言翻译对象
17
+ * @param config - 翻译加载器配置(可选)
18
+ * @returns 以语言为 key 的翻译对象
19
+ *
20
+ * @description
21
+ * 该方法实现了多目录翻译文件的深度合并机制:
22
+ * 1. 自动加载默认目录 (translations/) 下的 JSON 文件
23
+ * 2. 支持扩展自定义目录,可以添加多个自定义来源
24
+ * 3. 合并顺序:默认目录 → 自定义目录 1 → 自定义目录 2 → ...
25
+ * 4. 覆盖机制:后面的目录会 **深度覆盖**前面目录的值
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * // 基础用法:只加载默认目录
30
+ * const t = translations();
31
+ *
32
+ * // 高级用法:加载默认目录 + 自定义扩展目录(自定义目录会深度覆盖默认目录)
33
+ * const t = translations({
34
+ * extensions: [
35
+ * {
36
+ * modules: import.meta.glob('../custom/ * \/ ** \/ *.json', { eager: true, import: 'default' }),
37
+ * basePath: '../custom'
38
+ * }
39
+ * ]
40
+ * });
41
+ *
42
+ * // 指定语言列表
43
+ * const t = translations({
44
+ * locales: ['en', 'zh-Hans', 'zh-Hant']
45
+ * });
46
+ *
47
+ * // 深度覆盖示例:
48
+ * // 默认目录的 en.json: { common: { hello: "Hello", world: "World" }, home: { title: "Home" } }
49
+ * // 自定义目录的 en.json: { common: { hello: "Hi" }, about: { title: "About" } }
50
+ * // 最终结果: { common: { hello: "Hi", world: "World" }, home: { title: "Home" }, about: { title: "About" } }
51
+ * ```
52
+ */
53
+ export declare const translations: (config?: TranslationsConfig) => Record<string, Record<string, any>>;
54
+ declare const _default: Record<string, Record<string, any>>;
55
+ export default _default;
56
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../i18n/translations/index.ts"],"names":[],"mappings":"AAiJA;;GAEG;AACH,UAAU,kBAAkB;IAC3B,mCAAmC;IACnC,UAAU,CAAC,EAAE,KAAK,CAAC;QAClB,wCAAwC;QACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,wBAAwB;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,eAAO,MAAM,YAAY,GAAI,SAAS,kBAAkB,KAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA+B5F,CAAC;;AAGF,wBAA8B"}
@@ -0,0 +1,4 @@
1
+ import type { Plugin } from '@strapi/types';
2
+ export declare const plugin: Plugin.LoadedPlugin;
3
+ export default plugin;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../server/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAW3C,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,YAkC3B,CAAA;AAED,eAAe,MAAM,CAAA"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * common controller
3
+ */
4
+ declare const _default: ({ strapi, }: {
5
+ strapi: import("@strapi/types/dist/core").Strapi;
6
+ }) => Partial<import("@strapi/types/dist/core/core-api/controller").Base> & import("@strapi/types/dist/core/core-api/controller").Generic & import("@strapi/types/dist/core/core-api/controller").Base;
7
+ export default _default;
8
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../../../server/src/api/common/controllers/common.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;AAIH,wBAAuE"}
@@ -0,0 +1,89 @@
1
+ declare const _default: {
2
+ schema: {
3
+ kind: string;
4
+ collectionName: string;
5
+ info: {
6
+ singularName: string;
7
+ pluralName: string;
8
+ displayName: string;
9
+ description: string;
10
+ };
11
+ options: {
12
+ draftAndPublish: boolean;
13
+ };
14
+ pluginOptions: {
15
+ i18n: {
16
+ localized: boolean;
17
+ };
18
+ };
19
+ attributes: {
20
+ title: {
21
+ type: string;
22
+ pluginOptions: {
23
+ i18n: {
24
+ localized: boolean;
25
+ };
26
+ };
27
+ required: boolean;
28
+ };
29
+ description: {
30
+ type: string;
31
+ pluginOptions: {
32
+ i18n: {
33
+ localized: boolean;
34
+ };
35
+ };
36
+ required: boolean;
37
+ };
38
+ copyright: {
39
+ type: string;
40
+ pluginOptions: {
41
+ i18n: {
42
+ localized: boolean;
43
+ };
44
+ };
45
+ default: string;
46
+ };
47
+ icp: {
48
+ type: string;
49
+ pluginOptions: {
50
+ i18n: {
51
+ localized: boolean;
52
+ };
53
+ };
54
+ };
55
+ socials: {
56
+ type: string;
57
+ pluginOptions: {
58
+ i18n: {
59
+ localized: boolean;
60
+ };
61
+ };
62
+ component: string;
63
+ repeatable: boolean;
64
+ };
65
+ footLinks: {
66
+ type: string;
67
+ pluginOptions: {
68
+ i18n: {
69
+ localized: boolean;
70
+ };
71
+ };
72
+ customField: string;
73
+ required: boolean;
74
+ options: {
75
+ depth: number;
76
+ };
77
+ };
78
+ };
79
+ };
80
+ controllers: ({ strapi, }: {
81
+ strapi: import("@strapi/types/dist/core").Strapi;
82
+ }) => Partial<import("@strapi/types/dist/core/core-api/controller").Base> & import("@strapi/types/dist/core/core-api/controller").Generic & import("@strapi/types/dist/core/core-api/controller").Base;
83
+ services: ({ strapi, }: {
84
+ strapi: import("@strapi/types/dist/core").Strapi;
85
+ }) => Partial<import("@strapi/types/dist/core/core-api/service").Base> & import("@strapi/types/dist/core/core-api/service").Generic & import("@strapi/types/dist/core/core-api/service").Base;
86
+ routes: import("@strapi/types/dist/core/core-api/router").Router;
87
+ };
88
+ export default _default;
89
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/api/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,wBAKC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * common router.
3
+ */
4
+ declare const _default: import("@strapi/types/dist/core/core-api/router").Router;
5
+ export default _default;
6
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../../../server/src/api/common/routes/common.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAIH,wBAAmE"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * common service.
3
+ */
4
+ declare const _default: ({ strapi, }: {
5
+ strapi: import("@strapi/types/dist/core").Strapi;
6
+ }) => Partial<import("@strapi/types/dist/core/core-api/service").Base> & import("@strapi/types/dist/core/core-api/service").Generic & import("@strapi/types/dist/core/core-api/service").Base;
7
+ export default _default;
8
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../../../../server/src/api/common/services/common.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;AAIH,wBAAoE"}
@@ -0,0 +1,12 @@
1
+ import type { Router } from '@strapi/types/dist/core';
2
+ import type { ContentTypeSchema } from '@strapi/types/dist/struct';
3
+ declare const _default: {
4
+ contentTypes: Record<string, {
5
+ schema: ContentTypeSchema;
6
+ }>;
7
+ controllers: Record<string, import("@strapi/types/dist/core").Controller>;
8
+ services: Record<string, import("@strapi/types/dist/core").Service>;
9
+ routes: Record<string, Router>;
10
+ };
11
+ export default _default;
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/src/api/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;;;;;;;;;AAwBlE,wBAKC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * menu controller
3
+ */
4
+ declare const _default: ({ strapi, }: {
5
+ strapi: import("@strapi/types/dist/core").Strapi;
6
+ }) => Partial<import("@strapi/types/dist/core/core-api/controller").Base> & import("@strapi/types/dist/core/core-api/controller").Generic & import("@strapi/types/dist/core/core-api/controller").Base;
7
+ export default _default;
8
+ //# sourceMappingURL=menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.d.ts","sourceRoot":"","sources":["../../../../../../server/src/api/menu/controllers/menu.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;AAIH,wBAAqE"}
@@ -0,0 +1,48 @@
1
+ declare const _default: {
2
+ schema: {
3
+ kind: string;
4
+ collectionName: string;
5
+ info: {
6
+ singularName: string;
7
+ pluralName: string;
8
+ displayName: string;
9
+ };
10
+ options: {
11
+ draftAndPublish: boolean;
12
+ };
13
+ pluginOptions: {
14
+ i18n: {
15
+ localized: boolean;
16
+ };
17
+ };
18
+ attributes: {
19
+ title: {
20
+ type: string;
21
+ pluginOptions: {
22
+ i18n: {
23
+ localized: boolean;
24
+ };
25
+ };
26
+ required: boolean;
27
+ };
28
+ items: {
29
+ type: string;
30
+ pluginOptions: {
31
+ i18n: {
32
+ localized: boolean;
33
+ };
34
+ };
35
+ customField: string;
36
+ };
37
+ };
38
+ };
39
+ controllers: ({ strapi, }: {
40
+ strapi: import("@strapi/types/dist/core").Strapi;
41
+ }) => Partial<import("@strapi/types/dist/core/core-api/controller").Base> & import("@strapi/types/dist/core/core-api/controller").Generic & import("@strapi/types/dist/core/core-api/controller").Base;
42
+ services: ({ strapi, }: {
43
+ strapi: import("@strapi/types/dist/core").Strapi;
44
+ }) => Partial<import("@strapi/types/dist/core/core-api/service").Base> & import("@strapi/types/dist/core/core-api/service").Generic & import("@strapi/types/dist/core/core-api/service").Base;
45
+ routes: import("@strapi/types/dist/core/core-api/router").Router;
46
+ };
47
+ export default _default;
48
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/api/menu/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,wBAKC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * menu router
3
+ */
4
+ declare const _default: import("@strapi/types/dist/core/core-api/router").Router;
5
+ export default _default;
6
+ //# sourceMappingURL=menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.d.ts","sourceRoot":"","sources":["../../../../../../server/src/api/menu/routes/menu.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAIH,wBAAiE"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * menu service
3
+ */
4
+ declare const _default: ({ strapi, }: {
5
+ strapi: import("@strapi/types/dist/core").Strapi;
6
+ }) => Partial<import("@strapi/types/dist/core/core-api/service").Base> & import("@strapi/types/dist/core/core-api/service").Generic & import("@strapi/types/dist/core/core-api/service").Base;
7
+ export default _default;
8
+ //# sourceMappingURL=menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.d.ts","sourceRoot":"","sources":["../../../../../../server/src/api/menu/services/menu.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;AAIH,wBAAkE"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * site controller
3
+ */
4
+ declare const _default: ({ strapi, }: {
5
+ strapi: import("@strapi/types/dist/core").Strapi;
6
+ }) => Partial<import("@strapi/types/dist/core/core-api/controller").Base> & import("@strapi/types/dist/core/core-api/controller").Generic & import("@strapi/types/dist/core/core-api/controller").Base;
7
+ export default _default;
8
+ //# sourceMappingURL=site.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"site.d.ts","sourceRoot":"","sources":["../../../../../../server/src/api/site/controllers/site.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;AAIH,wBAAqE"}
@@ -0,0 +1,106 @@
1
+ declare const _default: {
2
+ schema: {
3
+ kind: string;
4
+ collectionName: string;
5
+ info: {
6
+ singularName: string;
7
+ pluralName: string;
8
+ displayName: string;
9
+ };
10
+ options: {
11
+ draftAndPublish: boolean;
12
+ };
13
+ pluginOptions: {
14
+ i18n: {
15
+ localized: boolean;
16
+ };
17
+ };
18
+ attributes: {
19
+ title: {
20
+ required: boolean;
21
+ type: string;
22
+ pluginOptions: {
23
+ i18n: {
24
+ localized: boolean;
25
+ };
26
+ };
27
+ };
28
+ url: {
29
+ required: boolean;
30
+ type: string;
31
+ pluginOptions: {
32
+ i18n: {
33
+ localized: boolean;
34
+ };
35
+ };
36
+ };
37
+ enabled: {
38
+ type: string;
39
+ pluginOptions: {
40
+ i18n: {
41
+ localized: boolean;
42
+ };
43
+ };
44
+ default: boolean;
45
+ };
46
+ index: {
47
+ type: string;
48
+ pluginOptions: {
49
+ i18n: {
50
+ localized: boolean;
51
+ };
52
+ };
53
+ default: boolean;
54
+ };
55
+ robots: {
56
+ type: string;
57
+ pluginOptions: {
58
+ i18n: {
59
+ localized: boolean;
60
+ };
61
+ };
62
+ };
63
+ head: {
64
+ type: string;
65
+ pluginOptions: {
66
+ i18n: {
67
+ localized: boolean;
68
+ };
69
+ };
70
+ };
71
+ foot: {
72
+ type: string;
73
+ pluginOptions: {
74
+ i18n: {
75
+ localized: boolean;
76
+ };
77
+ };
78
+ };
79
+ gtagId: {
80
+ type: string;
81
+ pluginOptions: {
82
+ i18n: {
83
+ localized: boolean;
84
+ };
85
+ };
86
+ };
87
+ inquiryEmail: {
88
+ type: string;
89
+ pluginOptions: {
90
+ i18n: {
91
+ localized: boolean;
92
+ };
93
+ };
94
+ };
95
+ };
96
+ };
97
+ controllers: ({ strapi, }: {
98
+ strapi: import("@strapi/types/dist/core").Strapi;
99
+ }) => Partial<import("@strapi/types/dist/core/core-api/controller").Base> & import("@strapi/types/dist/core/core-api/controller").Generic & import("@strapi/types/dist/core/core-api/controller").Base;
100
+ services: ({ strapi, }: {
101
+ strapi: import("@strapi/types/dist/core").Strapi;
102
+ }) => Partial<import("@strapi/types/dist/core/core-api/service").Base> & import("@strapi/types/dist/core/core-api/service").Generic & import("@strapi/types/dist/core/core-api/service").Base;
103
+ routes: import("@strapi/types/dist/core/core-api/router").Router;
104
+ };
105
+ export default _default;
106
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../server/src/api/site/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,wBAKC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * site router
3
+ */
4
+ declare const _default: import("@strapi/types/dist/core/core-api/router").Router;
5
+ export default _default;
6
+ //# sourceMappingURL=site.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"site.d.ts","sourceRoot":"","sources":["../../../../../../server/src/api/site/routes/site.ts"],"names":[],"mappings":"AAAA;;GAEG;;AAIH,wBAAiE"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * site service
3
+ */
4
+ declare const _default: ({ strapi, }: {
5
+ strapi: import("@strapi/types/dist/core").Strapi;
6
+ }) => Partial<import("@strapi/types/dist/core/core-api/service").Base> & import("@strapi/types/dist/core/core-api/service").Generic & import("@strapi/types/dist/core/core-api/service").Base;
7
+ export default _default;
8
+ //# sourceMappingURL=site.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"site.d.ts","sourceRoot":"","sources":["../../../../../../server/src/api/site/services/site.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;AAIH,wBAAkE"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * theme controller
3
+ */
4
+ declare const _default: ({ strapi, }: {
5
+ strapi: import("@strapi/types/dist/core").Strapi;
6
+ }) => Partial<import("@strapi/types/dist/core/core-api/controller").Base> & import("@strapi/types/dist/core/core-api/controller").Generic & import("@strapi/types/dist/core/core-api/controller").Base;
7
+ export default _default;
8
+ //# sourceMappingURL=theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../../../server/src/api/theme/controllers/theme.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;AAIH,wBAAsE"}