@payloadcms/plugin-seo 1.0.15 → 2.0.0

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 (49) hide show
  1. package/README.md +6 -201
  2. package/dist/defaults.d.ts +5 -4
  3. package/dist/defaults.d.ts.map +1 -0
  4. package/dist/defaults.js +17 -9
  5. package/dist/fields/MetaDescription.d.ts +6 -7
  6. package/dist/fields/MetaDescription.d.ts.map +1 -0
  7. package/dist/fields/MetaDescription.js +151 -147
  8. package/dist/fields/MetaImage.d.ts +6 -5
  9. package/dist/fields/MetaImage.d.ts.map +1 -0
  10. package/dist/fields/MetaImage.js +156 -152
  11. package/dist/fields/MetaTitle.d.ts +6 -5
  12. package/dist/fields/MetaTitle.d.ts.map +1 -0
  13. package/dist/fields/MetaTitle.js +151 -148
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.d.ts.map +1 -0
  16. package/dist/index.js +141 -99
  17. package/dist/translations/en.json +22 -0
  18. package/dist/translations/es.json +22 -0
  19. package/dist/translations/fa.json +22 -0
  20. package/dist/translations/index.d.ts +70 -0
  21. package/dist/translations/index.d.ts.map +1 -0
  22. package/dist/translations/index.js +25 -0
  23. package/dist/translations/translation-schema.json +87 -0
  24. package/dist/types.d.ts +11 -10
  25. package/dist/types.d.ts.map +1 -0
  26. package/dist/types.js +5 -2
  27. package/dist/ui/LengthIndicator.d.ts +3 -2
  28. package/dist/ui/LengthIndicator.d.ts.map +1 -0
  29. package/dist/ui/LengthIndicator.js +126 -85
  30. package/dist/ui/Overview.d.ts +1 -0
  31. package/dist/ui/Overview.d.ts.map +1 -0
  32. package/dist/ui/Overview.js +92 -53
  33. package/dist/ui/Pill.d.ts +1 -0
  34. package/dist/ui/Pill.d.ts.map +1 -0
  35. package/dist/ui/Pill.js +29 -19
  36. package/dist/ui/Preview.d.ts +6 -5
  37. package/dist/ui/Preview.d.ts.map +1 -0
  38. package/dist/ui/Preview.js +124 -129
  39. package/package.json +24 -36
  40. package/dist/defaults.js.map +0 -1
  41. package/dist/fields/MetaDescription.js.map +0 -1
  42. package/dist/fields/MetaImage.js.map +0 -1
  43. package/dist/fields/MetaTitle.js.map +0 -1
  44. package/dist/index.js.map +0 -1
  45. package/dist/types.js.map +0 -1
  46. package/dist/ui/LengthIndicator.js.map +0 -1
  47. package/dist/ui/Overview.js.map +0 -1
  48. package/dist/ui/Pill.js.map +0 -1
  49. package/dist/ui/Preview.js.map +0 -1
package/dist/index.js CHANGED
@@ -1,160 +1,202 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
14
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
15
- if (ar || !(i in from)) {
16
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
17
- ar[i] = from[i];
18
- }
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
19
9
  }
20
- return to.concat(ar || Array.prototype.slice.call(from));
21
- };
22
- Object.defineProperty(exports, "__esModule", { value: true });
23
- var MetaDescription_1 = require("./fields/MetaDescription");
24
- var MetaImage_1 = require("./fields/MetaImage");
25
- var MetaTitle_1 = require("./fields/MetaTitle");
26
- var Overview_1 = require("./ui/Overview");
27
- var Preview_1 = require("./ui/Preview");
28
- var seo = function (pluginConfig) {
29
- return function (config) {
30
- var _a, _b;
31
- var seoFields = [
10
+ });
11
+ const _utilities = require("payload/utilities");
12
+ const _MetaDescription = require("./fields/MetaDescription");
13
+ const _MetaImage = require("./fields/MetaImage");
14
+ const _MetaTitle = require("./fields/MetaTitle");
15
+ const _translations = /*#__PURE__*/ _interop_require_default(require("./translations"));
16
+ const _Overview = require("./ui/Overview");
17
+ const _Preview = require("./ui/Preview");
18
+ function _interop_require_default(obj) {
19
+ return obj && obj.__esModule ? obj : {
20
+ default: obj
21
+ };
22
+ }
23
+ const seo = (pluginConfig)=>(config)=>{
24
+ const seoFields = [
32
25
  {
33
26
  name: 'meta',
34
- label: 'SEO',
35
27
  type: 'group',
36
- fields: __spreadArray(__spreadArray(__spreadArray([
28
+ fields: [
37
29
  {
38
30
  name: 'overview',
39
- label: 'Overview',
40
31
  type: 'ui',
41
32
  admin: {
42
33
  components: {
43
- Field: Overview_1.Overview,
44
- },
34
+ Field: _Overview.Overview
35
+ }
45
36
  },
37
+ label: 'Overview'
46
38
  },
47
39
  {
48
40
  name: 'title',
49
41
  type: 'text',
50
- localized: true,
51
42
  admin: {
52
43
  components: {
53
- Field: function (props) { return (0, MetaTitle_1.getMetaTitleField)(__assign(__assign({}, props), { pluginConfig: pluginConfig })); },
54
- },
44
+ Field: (props)=>(0, _MetaTitle.getMetaTitleField)({
45
+ ...props,
46
+ pluginConfig
47
+ })
48
+ }
55
49
  },
50
+ localized: true
56
51
  },
57
52
  {
58
53
  name: 'description',
59
54
  type: 'textarea',
60
- localized: true,
61
55
  admin: {
62
56
  components: {
63
- Field: function (props) { return (0, MetaDescription_1.getMetaDescriptionField)(__assign(__assign({}, props), { pluginConfig: pluginConfig })); },
64
- },
57
+ Field: (props)=>(0, _MetaDescription.getMetaDescriptionField)({
58
+ ...props,
59
+ pluginConfig
60
+ })
61
+ }
65
62
  },
66
- }
67
- ], ((pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.uploadsCollection)
68
- ? [
63
+ localized: true
64
+ },
65
+ ...pluginConfig?.uploadsCollection ? [
69
66
  // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
70
67
  {
71
68
  name: 'image',
72
- label: 'Meta Image',
73
69
  type: 'upload',
74
- localized: true,
75
- relationTo: pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.uploadsCollection,
76
70
  admin: {
77
- description: 'Maximum upload file size: 12MB. Recommended file size for images is <500KB.',
78
71
  components: {
79
- Field: function (props) { return (0, MetaImage_1.getMetaImageField)(__assign(__assign({}, props), { pluginConfig: pluginConfig })); },
72
+ Field: (props)=>(0, _MetaImage.getMetaImageField)({
73
+ ...props,
74
+ pluginConfig
75
+ })
80
76
  },
77
+ description: 'Maximum upload file size: 12MB. Recommended file size for images is <500KB.'
81
78
  },
82
- },
83
- ]
84
- : []), true), ((pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.fields) || []), true), [
79
+ label: 'Meta Image',
80
+ localized: true,
81
+ relationTo: pluginConfig?.uploadsCollection
82
+ }
83
+ ] : [],
84
+ ...pluginConfig?.fields || [],
85
85
  {
86
86
  name: 'preview',
87
- label: 'Preview',
88
87
  type: 'ui',
89
88
  admin: {
90
89
  components: {
91
- Field: function (props) { return (0, Preview_1.getPreviewField)(__assign(__assign({}, props), { pluginConfig: pluginConfig })); },
92
- },
90
+ Field: (props)=>(0, _Preview.getPreviewField)({
91
+ ...props,
92
+ pluginConfig
93
+ })
94
+ }
93
95
  },
94
- },
95
- ], false),
96
- },
96
+ label: 'Preview'
97
+ }
98
+ ],
99
+ label: 'SEO'
100
+ }
97
101
  ];
98
- return __assign(__assign({}, config), { collections: ((_a = config.collections) === null || _a === void 0 ? void 0 : _a.map(function (collection) {
99
- var _a, _b, _c, _d, _e, _f;
100
- var slug = collection.slug;
101
- var isEnabled = (_a = pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.collections) === null || _a === void 0 ? void 0 : _a.includes(slug);
102
+ return {
103
+ ...config,
104
+ collections: config.collections?.map((collection)=>{
105
+ const { slug } = collection;
106
+ const isEnabled = pluginConfig?.collections?.includes(slug);
102
107
  if (isEnabled) {
103
- if (pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.tabbedUI) {
104
- var seoTabs = [
108
+ if (pluginConfig?.tabbedUI) {
109
+ const seoTabs = [
105
110
  {
106
111
  type: 'tabs',
107
- tabs: __spreadArray(__spreadArray([], (((_b = collection === null || collection === void 0 ? void 0 : collection.fields) === null || _b === void 0 ? void 0 : _b[0].type) === 'tabs'
108
- ? (_c = collection.fields[0]) === null || _c === void 0 ? void 0 : _c.tabs
109
- : [
112
+ tabs: [
113
+ // append a new tab onto the end of the tabs array, if there is one at the first index
114
+ // if needed, create a new `Content` tab in the first index for this collection's base fields
115
+ ...collection?.fields?.[0].type === 'tabs' ? collection.fields[0]?.tabs : [
110
116
  {
111
- label: ((_d = collection === null || collection === void 0 ? void 0 : collection.labels) === null || _d === void 0 ? void 0 : _d.singular) || 'Content',
112
- fields: __spreadArray([], ((collection === null || collection === void 0 ? void 0 : collection.fields) || []), true),
113
- },
114
- ]), true), [
117
+ fields: [
118
+ ...collection?.fields || []
119
+ ],
120
+ label: collection?.labels?.singular || 'Content'
121
+ }
122
+ ],
115
123
  {
116
- label: 'SEO',
117
124
  fields: seoFields,
118
- },
119
- ], false),
120
- },
125
+ label: 'SEO'
126
+ }
127
+ ]
128
+ }
121
129
  ];
122
- return __assign(__assign({}, collection), { fields: __spreadArray(__spreadArray([], seoTabs, true), (((_e = collection === null || collection === void 0 ? void 0 : collection.fields) === null || _e === void 0 ? void 0 : _e[0].type) === 'tabs' ? (_f = collection === null || collection === void 0 ? void 0 : collection.fields) === null || _f === void 0 ? void 0 : _f.slice(1) : []), true) });
130
+ return {
131
+ ...collection,
132
+ fields: [
133
+ ...seoTabs,
134
+ ...collection?.fields?.[0].type === 'tabs' ? collection?.fields?.slice(1) : []
135
+ ]
136
+ };
123
137
  }
124
- return __assign(__assign({}, collection), { fields: __spreadArray(__spreadArray([], ((collection === null || collection === void 0 ? void 0 : collection.fields) || []), true), seoFields, true) });
138
+ return {
139
+ ...collection,
140
+ fields: [
141
+ ...collection?.fields || [],
142
+ ...seoFields
143
+ ]
144
+ };
125
145
  }
126
146
  return collection;
127
- })) || [], globals: ((_b = config.globals) === null || _b === void 0 ? void 0 : _b.map(function (global) {
128
- var _a, _b, _c, _d, _e;
129
- var slug = global.slug;
130
- var isEnabled = (_a = pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.globals) === null || _a === void 0 ? void 0 : _a.includes(slug);
147
+ }) || [],
148
+ globals: config.globals?.map((global)=>{
149
+ const { slug } = global;
150
+ const isEnabled = pluginConfig?.globals?.includes(slug);
131
151
  if (isEnabled) {
132
- if (pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.tabbedUI) {
133
- var seoTabs = [
152
+ if (pluginConfig?.tabbedUI) {
153
+ const seoTabs = [
134
154
  {
135
155
  type: 'tabs',
136
- tabs: __spreadArray(__spreadArray([], (((_b = global === null || global === void 0 ? void 0 : global.fields) === null || _b === void 0 ? void 0 : _b[0].type) === 'tabs'
137
- ? (_c = global.fields[0]) === null || _c === void 0 ? void 0 : _c.tabs
138
- : [
156
+ tabs: [
157
+ // append a new tab onto the end of the tabs array, if there is one at the first index
158
+ // if needed, create a new `Content` tab in the first index for this global's base fields
159
+ ...global?.fields?.[0].type === 'tabs' ? global.fields[0]?.tabs : [
139
160
  {
140
- label: (global === null || global === void 0 ? void 0 : global.label) || 'Content',
141
- fields: __spreadArray([], ((global === null || global === void 0 ? void 0 : global.fields) || []), true),
142
- },
143
- ]), true), [
161
+ fields: [
162
+ ...global?.fields || []
163
+ ],
164
+ label: global?.label || 'Content'
165
+ }
166
+ ],
144
167
  {
145
- label: 'SEO',
146
168
  fields: seoFields,
147
- },
148
- ], false),
149
- },
169
+ label: 'SEO'
170
+ }
171
+ ]
172
+ }
150
173
  ];
151
- return __assign(__assign({}, global), { fields: __spreadArray(__spreadArray([], seoTabs, true), (((_d = global === null || global === void 0 ? void 0 : global.fields) === null || _d === void 0 ? void 0 : _d[0].type) === 'tabs' ? (_e = global === null || global === void 0 ? void 0 : global.fields) === null || _e === void 0 ? void 0 : _e.slice(1) : []), true) });
174
+ return {
175
+ ...global,
176
+ fields: [
177
+ ...seoTabs,
178
+ ...global?.fields?.[0].type === 'tabs' ? global?.fields?.slice(1) : []
179
+ ]
180
+ };
152
181
  }
153
- return __assign(__assign({}, global), { fields: __spreadArray(__spreadArray([], ((global === null || global === void 0 ? void 0 : global.fields) || []), true), seoFields, true) });
182
+ return {
183
+ ...global,
184
+ fields: [
185
+ ...global?.fields || [],
186
+ ...seoFields
187
+ ]
188
+ };
154
189
  }
155
190
  return global;
156
- })) || [] });
191
+ }) || [],
192
+ i18n: {
193
+ ...config.i18n,
194
+ resources: {
195
+ ...(0, _utilities.deepMerge)(_translations.default, config.i18n?.resources)
196
+ }
197
+ }
198
+ };
157
199
  };
158
- };
159
- exports.default = seo;
160
- //# sourceMappingURL=index.js.map
200
+ const _default = seo;
201
+
202
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENvbmZpZyB9IGZyb20gJ3BheWxvYWQvY29uZmlnJ1xuaW1wb3J0IHR5cGUgeyBGaWVsZCwgR3JvdXBGaWVsZCwgVGFic0ZpZWxkIH0gZnJvbSAncGF5bG9hZC9kaXN0L2ZpZWxkcy9jb25maWcvdHlwZXMnXG5cbmltcG9ydCB7IGRlZXBNZXJnZSB9IGZyb20gJ3BheWxvYWQvdXRpbGl0aWVzJ1xuXG5pbXBvcnQgdHlwZSB7IFBsdWdpbkNvbmZpZyB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IGdldE1ldGFEZXNjcmlwdGlvbkZpZWxkIH0gZnJvbSAnLi9maWVsZHMvTWV0YURlc2NyaXB0aW9uJ1xuaW1wb3J0IHsgZ2V0TWV0YUltYWdlRmllbGQgfSBmcm9tICcuL2ZpZWxkcy9NZXRhSW1hZ2UnXG5pbXBvcnQgeyBnZXRNZXRhVGl0bGVGaWVsZCB9IGZyb20gJy4vZmllbGRzL01ldGFUaXRsZSdcbmltcG9ydCB0cmFuc2xhdGlvbnMgZnJvbSAnLi90cmFuc2xhdGlvbnMnXG5pbXBvcnQgeyBPdmVydmlldyB9IGZyb20gJy4vdWkvT3ZlcnZpZXcnXG5pbXBvcnQgeyBnZXRQcmV2aWV3RmllbGQgfSBmcm9tICcuL3VpL1ByZXZpZXcnXG5cbmNvbnN0IHNlbyA9XG4gIChwbHVnaW5Db25maWc6IFBsdWdpbkNvbmZpZykgPT5cbiAgKGNvbmZpZzogQ29uZmlnKTogQ29uZmlnID0+IHtcbiAgICBjb25zdCBzZW9GaWVsZHM6IEdyb3VwRmllbGRbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ21ldGEnLFxuICAgICAgICB0eXBlOiAnZ3JvdXAnLFxuICAgICAgICBmaWVsZHM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnb3ZlcnZpZXcnLFxuICAgICAgICAgICAgdHlwZTogJ3VpJyxcbiAgICAgICAgICAgIGFkbWluOiB7XG4gICAgICAgICAgICAgIGNvbXBvbmVudHM6IHtcbiAgICAgICAgICAgICAgICBGaWVsZDogT3ZlcnZpZXcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbGFiZWw6ICdPdmVydmlldycsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAndGl0bGUnLFxuICAgICAgICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgICAgICAgYWRtaW46IHtcbiAgICAgICAgICAgICAgY29tcG9uZW50czoge1xuICAgICAgICAgICAgICAgIEZpZWxkOiAocHJvcHMpID0+IGdldE1ldGFUaXRsZUZpZWxkKHsgLi4ucHJvcHMsIHBsdWdpbkNvbmZpZyB9KSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBsb2NhbGl6ZWQ6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnZGVzY3JpcHRpb24nLFxuICAgICAgICAgICAgdHlwZTogJ3RleHRhcmVhJyxcbiAgICAgICAgICAgIGFkbWluOiB7XG4gICAgICAgICAgICAgIGNvbXBvbmVudHM6IHtcbiAgICAgICAgICAgICAgICBGaWVsZDogKHByb3BzKSA9PiBnZXRNZXRhRGVzY3JpcHRpb25GaWVsZCh7IC4uLnByb3BzLCBwbHVnaW5Db25maWcgfSksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgbG9jYWxpemVkOiB0cnVlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgLi4uKHBsdWdpbkNvbmZpZz8udXBsb2Fkc0NvbGxlY3Rpb25cbiAgICAgICAgICAgID8gW1xuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvY29uc2lzdGVudC10eXBlLWFzc2VydGlvbnNcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAnaW1hZ2UnLFxuICAgICAgICAgICAgICAgICAgdHlwZTogJ3VwbG9hZCcsXG4gICAgICAgICAgICAgICAgICBhZG1pbjoge1xuICAgICAgICAgICAgICAgICAgICBjb21wb25lbnRzOiB7XG4gICAgICAgICAgICAgICAgICAgICAgRmllbGQ6IChwcm9wcykgPT4gZ2V0TWV0YUltYWdlRmllbGQoeyAuLi5wcm9wcywgcGx1Z2luQ29uZmlnIH0pLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgICAgICAgICAgICAgICAnTWF4aW11bSB1cGxvYWQgZmlsZSBzaXplOiAxMk1CLiBSZWNvbW1lbmRlZCBmaWxlIHNpemUgZm9yIGltYWdlcyBpcyA8NTAwS0IuJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBsYWJlbDogJ01ldGEgSW1hZ2UnLFxuICAgICAgICAgICAgICAgICAgbG9jYWxpemVkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgcmVsYXRpb25UbzogcGx1Z2luQ29uZmlnPy51cGxvYWRzQ29sbGVjdGlvbixcbiAgICAgICAgICAgICAgICB9IGFzIEZpZWxkLFxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICA6IFtdKSxcbiAgICAgICAgICAuLi4ocGx1Z2luQ29uZmlnPy5maWVsZHMgfHwgW10pLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6ICdwcmV2aWV3JyxcbiAgICAgICAgICAgIHR5cGU6ICd1aScsXG4gICAgICAgICAgICBhZG1pbjoge1xuICAgICAgICAgICAgICBjb21wb25lbnRzOiB7XG4gICAgICAgICAgICAgICAgRmllbGQ6IChwcm9wcykgPT4gZ2V0UHJldmlld0ZpZWxkKHsgLi4ucHJvcHMsIHBsdWdpbkNvbmZpZyB9KSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBsYWJlbDogJ1ByZXZpZXcnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGxhYmVsOiAnU0VPJyxcbiAgICAgIH0sXG4gICAgXVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmNvbmZpZyxcbiAgICAgIGNvbGxlY3Rpb25zOlxuICAgICAgICBjb25maWcuY29sbGVjdGlvbnM/Lm1hcCgoY29sbGVjdGlvbikgPT4ge1xuICAgICAgICAgIGNvbnN0IHsgc2x1ZyB9ID0gY29sbGVjdGlvblxuICAgICAgICAgIGNvbnN0IGlzRW5hYmxlZCA9IHBsdWdpbkNvbmZpZz8uY29sbGVjdGlvbnM/LmluY2x1ZGVzKHNsdWcpXG5cbiAgICAgICAgICBpZiAoaXNFbmFibGVkKSB7XG4gICAgICAgICAgICBpZiAocGx1Z2luQ29uZmlnPy50YWJiZWRVSSkge1xuICAgICAgICAgICAgICBjb25zdCBzZW9UYWJzOiBUYWJzRmllbGRbXSA9IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiAndGFicycsXG4gICAgICAgICAgICAgICAgICB0YWJzOiBbXG4gICAgICAgICAgICAgICAgICAgIC8vIGFwcGVuZCBhIG5ldyB0YWIgb250byB0aGUgZW5kIG9mIHRoZSB0YWJzIGFycmF5LCBpZiB0aGVyZSBpcyBvbmUgYXQgdGhlIGZpcnN0IGluZGV4XG4gICAgICAgICAgICAgICAgICAgIC8vIGlmIG5lZWRlZCwgY3JlYXRlIGEgbmV3IGBDb250ZW50YCB0YWIgaW4gdGhlIGZpcnN0IGluZGV4IGZvciB0aGlzIGNvbGxlY3Rpb24ncyBiYXNlIGZpZWxkc1xuICAgICAgICAgICAgICAgICAgICAuLi4oY29sbGVjdGlvbj8uZmllbGRzPy5bMF0udHlwZSA9PT0gJ3RhYnMnXG4gICAgICAgICAgICAgICAgICAgICAgPyBjb2xsZWN0aW9uLmZpZWxkc1swXT8udGFic1xuICAgICAgICAgICAgICAgICAgICAgIDogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRzOiBbLi4uKGNvbGxlY3Rpb24/LmZpZWxkcyB8fCBbXSldLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiBjb2xsZWN0aW9uPy5sYWJlbHM/LnNpbmd1bGFyIHx8ICdDb250ZW50JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgZmllbGRzOiBzZW9GaWVsZHMsXG4gICAgICAgICAgICAgICAgICAgICAgbGFiZWw6ICdTRU8nLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdXG5cbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAuLi5jb2xsZWN0aW9uLFxuICAgICAgICAgICAgICAgIGZpZWxkczogW1xuICAgICAgICAgICAgICAgICAgLi4uc2VvVGFicyxcbiAgICAgICAgICAgICAgICAgIC4uLihjb2xsZWN0aW9uPy5maWVsZHM/LlswXS50eXBlID09PSAndGFicycgPyBjb2xsZWN0aW9uPy5maWVsZHM/LnNsaWNlKDEpIDogW10pLFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgLi4uY29sbGVjdGlvbixcbiAgICAgICAgICAgICAgZmllbGRzOiBbLi4uKGNvbGxlY3Rpb24/LmZpZWxkcyB8fCBbXSksIC4uLnNlb0ZpZWxkc10sXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIGNvbGxlY3Rpb25cbiAgICAgICAgfSkgfHwgW10sXG4gICAgICBnbG9iYWxzOlxuICAgICAgICBjb25maWcuZ2xvYmFscz8ubWFwKChnbG9iYWwpID0+IHtcbiAgICAgICAgICBjb25zdCB7IHNsdWcgfSA9IGdsb2JhbFxuICAgICAgICAgIGNvbnN0IGlzRW5hYmxlZCA9IHBsdWdpbkNvbmZpZz8uZ2xvYmFscz8uaW5jbHVkZXMoc2x1ZylcblxuICAgICAgICAgIGlmIChpc0VuYWJsZWQpIHtcbiAgICAgICAgICAgIGlmIChwbHVnaW5Db25maWc/LnRhYmJlZFVJKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHNlb1RhYnM6IFRhYnNGaWVsZFtdID0gW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICd0YWJzJyxcbiAgICAgICAgICAgICAgICAgIHRhYnM6IFtcbiAgICAgICAgICAgICAgICAgICAgLy8gYXBwZW5kIGEgbmV3IHRhYiBvbnRvIHRoZSBlbmQgb2YgdGhlIHRhYnMgYXJyYXksIGlmIHRoZXJlIGlzIG9uZSBhdCB0aGUgZmlyc3QgaW5kZXhcbiAgICAgICAgICAgICAgICAgICAgLy8gaWYgbmVlZGVkLCBjcmVhdGUgYSBuZXcgYENvbnRlbnRgIHRhYiBpbiB0aGUgZmlyc3QgaW5kZXggZm9yIHRoaXMgZ2xvYmFsJ3MgYmFzZSBmaWVsZHNcbiAgICAgICAgICAgICAgICAgICAgLi4uKGdsb2JhbD8uZmllbGRzPy5bMF0udHlwZSA9PT0gJ3RhYnMnXG4gICAgICAgICAgICAgICAgICAgICAgPyBnbG9iYWwuZmllbGRzWzBdPy50YWJzXG4gICAgICAgICAgICAgICAgICAgICAgOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZHM6IFsuLi4oZ2xvYmFsPy5maWVsZHMgfHwgW10pXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbDogZ2xvYmFsPy5sYWJlbCB8fCAnQ29udGVudCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgIGZpZWxkczogc2VvRmllbGRzLFxuICAgICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnU0VPJyxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgXVxuXG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uZ2xvYmFsLFxuICAgICAgICAgICAgICAgIGZpZWxkczogW1xuICAgICAgICAgICAgICAgICAgLi4uc2VvVGFicyxcbiAgICAgICAgICAgICAgICAgIC4uLihnbG9iYWw/LmZpZWxkcz8uWzBdLnR5cGUgPT09ICd0YWJzJyA/IGdsb2JhbD8uZmllbGRzPy5zbGljZSgxKSA6IFtdKSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIC4uLmdsb2JhbCxcbiAgICAgICAgICAgICAgZmllbGRzOiBbLi4uKGdsb2JhbD8uZmllbGRzIHx8IFtdKSwgLi4uc2VvRmllbGRzXSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gZ2xvYmFsXG4gICAgICAgIH0pIHx8IFtdLFxuICAgICAgaTE4bjoge1xuICAgICAgICAuLi5jb25maWcuaTE4bixcbiAgICAgICAgcmVzb3VyY2VzOiB7XG4gICAgICAgICAgLi4uZGVlcE1lcmdlKHRyYW5zbGF0aW9ucywgY29uZmlnLmkxOG4/LnJlc291cmNlcyksXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG5leHBvcnQgZGVmYXVsdCBzZW9cbiJdLCJuYW1lcyI6WyJzZW8iLCJwbHVnaW5Db25maWciLCJjb25maWciLCJzZW9GaWVsZHMiLCJuYW1lIiwidHlwZSIsImZpZWxkcyIsImFkbWluIiwiY29tcG9uZW50cyIsIkZpZWxkIiwiT3ZlcnZpZXciLCJsYWJlbCIsInByb3BzIiwiZ2V0TWV0YVRpdGxlRmllbGQiLCJsb2NhbGl6ZWQiLCJnZXRNZXRhRGVzY3JpcHRpb25GaWVsZCIsInVwbG9hZHNDb2xsZWN0aW9uIiwiZ2V0TWV0YUltYWdlRmllbGQiLCJkZXNjcmlwdGlvbiIsInJlbGF0aW9uVG8iLCJnZXRQcmV2aWV3RmllbGQiLCJjb2xsZWN0aW9ucyIsIm1hcCIsImNvbGxlY3Rpb24iLCJzbHVnIiwiaXNFbmFibGVkIiwiaW5jbHVkZXMiLCJ0YWJiZWRVSSIsInNlb1RhYnMiLCJ0YWJzIiwibGFiZWxzIiwic2luZ3VsYXIiLCJzbGljZSIsImdsb2JhbHMiLCJnbG9iYWwiLCJpMThuIiwicmVzb3VyY2VzIiwiZGVlcE1lcmdlIiwidHJhbnNsYXRpb25zIl0sIm1hcHBpbmdzIjoiOzs7OytCQThMQTs7O2VBQUE7OzsyQkEzTDBCO2lDQUljOzJCQUNOOzJCQUNBO3FFQUNUOzBCQUNBO3lCQUNPOzs7Ozs7QUFFaEMsTUFBTUEsTUFDSixDQUFDQyxlQUNELENBQUNDO1FBQ0MsTUFBTUMsWUFBMEI7WUFDOUI7Z0JBQ0VDLE1BQU07Z0JBQ05DLE1BQU07Z0JBQ05DLFFBQVE7b0JBQ047d0JBQ0VGLE1BQU07d0JBQ05DLE1BQU07d0JBQ05FLE9BQU87NEJBQ0xDLFlBQVk7Z0NBQ1ZDLE9BQU9DLGtCQUFROzRCQUNqQjt3QkFDRjt3QkFDQUMsT0FBTztvQkFDVDtvQkFDQTt3QkFDRVAsTUFBTTt3QkFDTkMsTUFBTTt3QkFDTkUsT0FBTzs0QkFDTEMsWUFBWTtnQ0FDVkMsT0FBTyxDQUFDRyxRQUFVQyxJQUFBQSw0QkFBaUIsRUFBQzt3Q0FBRSxHQUFHRCxLQUFLO3dDQUFFWDtvQ0FBYTs0QkFDL0Q7d0JBQ0Y7d0JBQ0FhLFdBQVc7b0JBQ2I7b0JBQ0E7d0JBQ0VWLE1BQU07d0JBQ05DLE1BQU07d0JBQ05FLE9BQU87NEJBQ0xDLFlBQVk7Z0NBQ1ZDLE9BQU8sQ0FBQ0csUUFBVUcsSUFBQUEsd0NBQXVCLEVBQUM7d0NBQUUsR0FBR0gsS0FBSzt3Q0FBRVg7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
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "./translation-schema.json",
3
+ "plugin-seo": {
4
+ "autoGenerate": "Auto-generate",
5
+ "imageAutoGenerationTip": "Auto-generation will retrieve the selected hero image.",
6
+ "bestPractices": "best practices",
7
+ "lengthTipTitle": "This should be between {{minLength}} and {{maxLength}} characters. For help in writing quality meta titles, see ",
8
+ "lengthTipDescription": "This should be between {{minLength}} and {{maxLength}} characters. For help in writing quality meta descriptions, see ",
9
+ "good": "Good",
10
+ "tooLong": "Too long",
11
+ "tooShort": "Too short",
12
+ "almostThere": "Almost there",
13
+ "characterCount": "{{current}}/{{minLength}}-{{maxLength}} chars, ",
14
+ "charactersToGo": "{{characters}} to go",
15
+ "charactersLeftOver": "{{characters}} left over",
16
+ "charactersTooMany": "{{characters}} too many",
17
+ "noImage": "No image",
18
+ "checksPassing": "{{current}}/{{max}} checks are passing",
19
+ "preview": "Preview",
20
+ "previewDescription": "Exact result listings may vary based on content and search relevancy."
21
+ }
22
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "./translation-schema.json",
3
+ "plugin-seo": {
4
+ "autoGenerate": "Autogénerar",
5
+ "imageAutoGenerationTip": "La autogeneración recuperará la imagen de héroe seleccionada.",
6
+ "bestPractices": "mejores prácticas",
7
+ "lengthTipTitle": "Debe tener entre {{minLength}} y {{maxLength}} caracteres. Para obtener ayuda sobre cómo escribir metatítulos de calidad, consulte ",
8
+ "lengthTipDescription": "Esto debe estar entre {{minLength}} y {{maxLength}} caracteres. Para obtener ayuda sobre cómo escribir meta descripciones de calidad, consulte ",
9
+ "good": "Bien",
10
+ "tooLong": "Demasiado largo",
11
+ "tooShort": "Demasiado corto",
12
+ "almostThere": "Ya casi está",
13
+ "characterCount": "{{current}}/{{minLength}}-{{maxLength}} letras, ",
14
+ "charactersToGo": "{{characters}} letras sobrantes",
15
+ "charactersLeftOver": "{{characters}} letras sobrantes",
16
+ "charactersTooMany": "{{characters}} letras demasiados",
17
+ "noImage": "Sin imagen",
18
+ "checksPassing": "{{current}}/{{max}} las comprobaciones están pasando",
19
+ "preview": "Vista previa",
20
+ "previewDescription": "Las listas de resultados pueden variar segun la relevancia de buesqueda y el contenido."
21
+ }
22
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "./translation-schema.json",
3
+ "plugin-seo": {
4
+ "autoGenerate": "تولید خودکار",
5
+ "imageAutoGenerationTip": "این قابلیت، تصویر فعلی بارگذاری شده در مجموعه محتوای شما را بازیابی می‌کند",
6
+ "bestPractices": "آموزش بیشتر",
7
+ "lengthTipTitle": "این باید بین {{minLength}} و {{maxLength}} کلمه باشد. برای کمک در نوشتن عناوین متا با کیفیت، مراجعه کنید به ",
8
+ "lengthTipDescription": "این باید بین {{minLength}} و {{maxLength}} کلمه باشد. برای کمک در نوشتن توضیحات متا با کیفیت، مراجعه کنید به ",
9
+ "good": "خوب",
10
+ "tooLong": "خیلی طولانی",
11
+ "tooShort": "خیلی کوتاه",
12
+ "almostThere": "چیزیی باقی نمونده",
13
+ "characterCount": "{{current}}/{{minLength}}-{{maxLength}} کلمه، ",
14
+ "charactersToGo": "{{characters}} باقی مانده",
15
+ "charactersLeftOver": "{{characters}} باقی مانده",
16
+ "charactersTooMany": "{{characters}} بیش از حد",
17
+ "noImage": "بدون تصویر",
18
+ "checksPassing": "{{current}}/{{max}} بررسی‌ها با موفقیت انجام شده است",
19
+ "preview": "پیش‌نمایش",
20
+ "previewDescription": "فهرست نتایج ممکن است بر اساس محتوا و متناسب با کلمه کلیدی جستجو شده باشند"
21
+ }
22
+ }
@@ -0,0 +1,70 @@
1
+ declare const _default: {
2
+ en: {
3
+ $schema: string;
4
+ "plugin-seo": {
5
+ autoGenerate: string;
6
+ imageAutoGenerationTip: string;
7
+ bestPractices: string;
8
+ lengthTipTitle: string;
9
+ lengthTipDescription: string;
10
+ good: string;
11
+ tooLong: string;
12
+ tooShort: string;
13
+ almostThere: string;
14
+ characterCount: string;
15
+ charactersToGo: string;
16
+ charactersLeftOver: string;
17
+ charactersTooMany: string;
18
+ noImage: string;
19
+ checksPassing: string;
20
+ preview: string;
21
+ previewDescription: string;
22
+ };
23
+ };
24
+ es: {
25
+ $schema: string;
26
+ "plugin-seo": {
27
+ autoGenerate: string;
28
+ imageAutoGenerationTip: string;
29
+ bestPractices: string;
30
+ lengthTipTitle: string;
31
+ lengthTipDescription: string;
32
+ good: string;
33
+ tooLong: string;
34
+ tooShort: string;
35
+ almostThere: string;
36
+ characterCount: string;
37
+ charactersToGo: string;
38
+ charactersLeftOver: string;
39
+ charactersTooMany: string;
40
+ noImage: string;
41
+ checksPassing: string;
42
+ preview: string;
43
+ previewDescription: string;
44
+ };
45
+ };
46
+ fa: {
47
+ $schema: string;
48
+ "plugin-seo": {
49
+ autoGenerate: string;
50
+ imageAutoGenerationTip: string;
51
+ bestPractices: string;
52
+ lengthTipTitle: string;
53
+ lengthTipDescription: string;
54
+ good: string;
55
+ tooLong: string;
56
+ tooShort: string;
57
+ almostThere: string;
58
+ characterCount: string;
59
+ charactersToGo: string;
60
+ charactersLeftOver: string;
61
+ charactersTooMany: string;
62
+ noImage: string;
63
+ checksPassing: string;
64
+ preview: string;
65
+ previewDescription: string;
66
+ };
67
+ };
68
+ };
69
+ export default _default;
70
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/translations/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,wBAIC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _enjson = /*#__PURE__*/ _interop_require_default(require("./en.json"));
12
+ const _esjson = /*#__PURE__*/ _interop_require_default(require("./es.json"));
13
+ const _fajson = /*#__PURE__*/ _interop_require_default(require("./fa.json"));
14
+ function _interop_require_default(obj) {
15
+ return obj && obj.__esModule ? obj : {
16
+ default: obj
17
+ };
18
+ }
19
+ const _default = {
20
+ en: _enjson.default,
21
+ es: _esjson.default,
22
+ fa: _fajson.default
23
+ };
24
+
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90cmFuc2xhdGlvbnMvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGVuIGZyb20gJy4vZW4uanNvbidcbmltcG9ydCBlcyBmcm9tICcuL2VzLmpzb24nXG5pbXBvcnQgZmEgZnJvbSAnLi9mYS5qc29uJ1xuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGVuLFxuICBlcyxcbiAgZmEsXG59XG4iXSwibmFtZXMiOlsiZW4iLCJlcyIsImZhIl0sIm1hcHBpbmdzIjoiOzs7OytCQUlBOzs7ZUFBQTs7OytEQUplOytEQUNBOytEQUNBOzs7Ozs7TUFFZixXQUFlO0lBQ2JBLElBQUFBLGVBQUU7SUFDRkMsSUFBQUEsZUFBRTtJQUNGQyxJQUFBQSxlQUFFO0FBQ0oifQ==
@@ -0,0 +1,87 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-04/schema#",
3
+ "additionalProperties": false,
4
+ "properties": {
5
+ "$schema": {
6
+ "type": "string"
7
+ },
8
+ "plugin-seo": {
9
+ "additionalProperties": false,
10
+ "properties": {
11
+ "autoGenerate": {
12
+ "type": "string"
13
+ },
14
+ "imageAutoGenerationTip": {
15
+ "type": "string"
16
+ },
17
+ "bestPractices": {
18
+ "type": "string"
19
+ },
20
+ "lengthTipTitle": {
21
+ "type": "string"
22
+ },
23
+ "lengthTipDescription": {
24
+ "type": "string"
25
+ },
26
+ "good": {
27
+ "type": "string"
28
+ },
29
+ "tooLong": {
30
+ "type": "string"
31
+ },
32
+ "tooShort": {
33
+ "type": "string"
34
+ },
35
+ "almostThere": {
36
+ "type": "string"
37
+ },
38
+ "characterCount": {
39
+ "type": "string"
40
+ },
41
+ "charactersToGo": {
42
+ "type": "string"
43
+ },
44
+ "charactersLeftOver": {
45
+ "type": "string"
46
+ },
47
+ "charactersTooMany": {
48
+ "type": "string"
49
+ },
50
+ "noImage": {
51
+ "type": "string"
52
+ },
53
+ "checksPassing": {
54
+ "type": "string"
55
+ },
56
+ "preview": {
57
+ "type": "string"
58
+ },
59
+ "previewDescription": {
60
+ "type": "string"
61
+ }
62
+ },
63
+ "required": [
64
+ "autoGenerate",
65
+ "imageAutoGenerationTip",
66
+ "bestPractices",
67
+ "lengthTipTitle",
68
+ "lengthTipDescription",
69
+ "good",
70
+ "tooLong",
71
+ "tooShort",
72
+ "almostThere",
73
+ "characterCount",
74
+ "charactersToGo",
75
+ "charactersLeftOver",
76
+ "charactersTooMany",
77
+ "noImage",
78
+ "checksPassing",
79
+ "preview",
80
+ "previewDescription"
81
+ ],
82
+ "type": "object"
83
+ }
84
+ },
85
+ "required": ["plugin-seo"],
86
+ "type": "object"
87
+ }
package/dist/types.d.ts CHANGED
@@ -3,33 +3,34 @@ import type { Field } from 'payload/dist/fields/config/types';
3
3
  export type GenerateTitle = <T = any>(args: ContextType & {
4
4
  doc: T;
5
5
  locale?: string;
6
- }) => string | Promise<string>;
6
+ }) => Promise<string> | string;
7
7
  export type GenerateDescription = <T = any>(args: ContextType & {
8
8
  doc: T;
9
9
  locale?: string;
10
- }) => string | Promise<string>;
10
+ }) => Promise<string> | string;
11
11
  export type GenerateImage = <T = any>(args: ContextType & {
12
12
  doc: T;
13
13
  locale?: string;
14
- }) => string | Promise<string>;
14
+ }) => Promise<string> | string;
15
15
  export type GenerateURL = <T = any>(args: ContextType & {
16
16
  doc: T;
17
17
  locale?: string;
18
- }) => string | Promise<string>;
18
+ }) => Promise<string> | string;
19
19
  export interface PluginConfig {
20
20
  collections?: string[];
21
- globals?: string[];
22
- uploadsCollection?: string;
23
21
  fields?: Field[];
24
- tabbedUI?: boolean;
25
- generateTitle?: GenerateTitle;
26
22
  generateDescription?: GenerateDescription;
27
23
  generateImage?: GenerateImage;
24
+ generateTitle?: GenerateTitle;
28
25
  generateURL?: GenerateURL;
26
+ globals?: string[];
27
+ tabbedUI?: boolean;
28
+ uploadsCollection?: string;
29
29
  }
30
30
  export interface Meta {
31
- title?: string;
32
31
  description?: string;
33
- keywords?: string;
34
32
  image?: any;
33
+ keywords?: string;
34
+ title?: string;
35
35
  }
36
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4DAA4D,CAAA;AAC7F,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kCAAkC,CAAA;AAE7D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,GAAG,GAAG,EAClC,IAAI,EAAE,WAAW,GAAG;IAAE,GAAG,EAAE,CAAC,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAC5C,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE7B,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,GAAG,GAAG,EACxC,IAAI,EAAE,WAAW,GAAG;IAClB,GAAG,EAAE,CAAC,CAAA;IACN,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KACE,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE7B,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,GAAG,GAAG,EAClC,IAAI,EAAE,WAAW,GAAG;IAAE,GAAG,EAAE,CAAC,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAC5C,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE7B,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,GAAG,GAAG,EAChC,IAAI,EAAE,WAAW,GAAG;IAAE,GAAG,EAAE,CAAC,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAC5C,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE7B,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAA;IAChB,mBAAmB,CAAC,EAAE,mBAAmB,CAAA;IACzC,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,IAAI;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,GAAG,CAAA;IACX,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf"}
package/dist/types.js CHANGED
@@ -1,3 +1,6 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9