@payloadcms/plugin-seo 1.0.7 → 1.0.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.
package/README.md CHANGED
@@ -5,12 +5,13 @@
5
5
  A plugin for [Payload CMS](https://github.com/payloadcms/payload) to auto-generate SEO meta data based on the content of your documents.
6
6
 
7
7
  Core features:
8
- - Adds a `meta` field to every SEO-enabled collection that:
9
- - Includes title, description, and image subfields
10
- - Auto-generates meta data from your document's content
11
- - Displays hints and indicators to help content editors
12
- - Renders a snippet of what a search engine might display
13
- - Soon: variable injection
8
+
9
+ - Adds a `meta` field to every SEO-enabled collection or global. It:
10
+ - includes title, description, and image subfields
11
+ - auto-generates meta data from your document's content
12
+ - displays hints and indicators to help content editors
13
+ - renders a snippet of what a search engine might display
14
+ - soon will support variable injection
14
15
 
15
16
  ## Installation
16
17
 
@@ -59,73 +60,136 @@ export default config;
59
60
 
60
61
  ### Options
61
62
 
62
- - `collections`
63
+ - `collections` : string[] | optional
63
64
 
64
- An array of collections slugs to enable SEO. Enabled collections receive a `meta` field which is an object of title, description, and image subfields.
65
+ An array of collections slugs to enable SEO. Enabled collections receive a `meta` field which is an object of title, description, and image subfields.
65
66
 
67
+ - `globals` : string[] | optional
66
68
 
67
- - `uploadsCollection`
69
+ An array of global slugs to enable SEO. Enabled globals receive a `meta` field which is an object of title, description, and image subfields.
68
70
 
69
- An upload-enabled collection slug, for the meta image to access.
71
+ - `uploadsCollection` : string | optional
70
72
 
71
- - `generateTitle`
73
+ An upload-enabled collection slug, for the meta image to access.
72
74
 
73
- A function that allows you to return any meta title, including from document's content.
75
+ - `tabbedUI` : boolean | optional
74
76
 
75
- ```js
76
- seo({
77
- ...
78
- generateTitle: ({ doc, locale }) => `Website.com — ${doc?.title?.value}`,
79
- })
80
- ```
77
+ Displays meta fields as tabs using Payload's [Tabs Field](https://payloadcms.com/docs/fields/tabs). Defaults to `false`.
81
78
 
82
- - `generateDescription`
79
+ - `generateTitle` : method | optional
83
80
 
84
- A function that allows you to return any meta description, including from document's content.
81
+ A function that allows you to return any meta title, including from document's content.
85
82
 
86
- ```js
87
- seo({
88
- ...
89
- generateDescription: ({ doc, locale }) => doc?.excerpt?.value
90
- })
91
- ```
83
+ ```js
84
+ seo({
85
+ ...
86
+ generateTitle: ({ doc, locale }) => `Website.com — ${doc?.title?.value}`,
87
+ })
88
+ ```
92
89
 
93
- - `generateImage`
90
+ - `generateDescription` : method | optional
94
91
 
95
- A function that allows you to return any meta image, including from document's content.
92
+ A function that allows you to return any meta description, including from document's content.
96
93
 
97
- ```js
98
- seo({
99
- ...
100
- generateImage: ({ doc, locale }) => doc?.featuredImage?.value
101
- })
102
- ```
94
+ ```js
95
+ seo({
96
+ ...
97
+ generateDescription: ({ doc, locale }) => doc?.excerpt?.value
98
+ })
99
+ ```
103
100
 
104
- - `generateURL`
101
+ - `generateImage` : method | optional
105
102
 
106
- A function called by the search preview component to display the actual URL of your page.
103
+ A function that allows you to return any meta image, including from document's content.
107
104
 
108
- ```js
109
- seo({
110
- ...
111
- generateURL: ({ doc, locale }) => `https://yoursite.com/${doc?.slug?.value}`
112
- })
113
- ```
105
+ ```js
106
+ seo({
107
+ ...
108
+ generateImage: ({ doc, locale }) => doc?.featuredImage?.value
109
+ })
110
+ ```
114
111
 
115
- ## TypeScript
112
+ - `generateURL` : method | optional
116
113
 
117
- All types can be directly imported:
114
+ A function called by the search preview component to display the actual URL of your page.
118
115
 
119
116
  ```js
120
- import {
121
- SEOConfig,
122
- GenerateTitle,
123
- GenerateDescription
124
- GenerateURL
125
- } from '@payloadcms/plugin-seo/dist/types';
117
+ seo({
118
+ ...
119
+ generateURL: ({ doc, locale }) => `https://yoursite.com/${doc?.slug?.value}`
120
+ })
126
121
  ```
127
122
 
128
- ## Screenshots
129
- ![image](https://user-images.githubusercontent.com/70709113/163850633-f3da5f8e-2527-4688-bc79-17233307a883.png)
123
+ ## TypeScript
124
+
125
+ All types can be directly imported:
126
+
127
+ ```js
128
+ import {
129
+ PluginConfig,
130
+ GenerateTitle,
131
+ GenerateDescription
132
+ GenerateURL
133
+ } from '@payloadcms/plugin-seo/dist/types';
134
+ ```
135
+
136
+ ## Development
137
+
138
+ To actively develop or debug this plugin you can either work directly within the demo directory of this repo, or link your own project.
139
+
140
+ 1. #### Internal Demo
141
+
142
+ This repo includes a fully working, self-seeding instance of Payload that installs the plugin directly from the source code. This is the easiest way to get started. To spin up this demo, follow these steps:
143
+
144
+ 1. First clone the repo
145
+ 1. Then, `cd YOUR_PLUGIN_REPO && yarn && cd demo && yarn && yarn dev`
146
+ 1. Now open `http://localhost:3000/admin` in your browser
147
+ 1. Enter username `dev@payloadcms.com` and password `test`
148
+
149
+ That's it! Changes made in `./src` will be reflected in your demo. Keep in mind that the demo database is automatically seeded on every startup, any changes you make to the data get destroyed each time you reboot the app.
150
+
151
+ 1. #### Linked Project
152
+
153
+ You can alternatively link your own project to the source code:
154
+
155
+ 1. First clone the repo
156
+ 1. Then, `cd YOUR_PLUGIN_REPO && yarn && cd demo && cp env.example .env && yarn && yarn dev`
157
+ 1. Now `cd` back into your own project and run, `yarn link @payloadcms/plugin-seo`
158
+ 1. If this plugin using React in any way, continue to the next step. Otherwise skip to step 7.
159
+ 1. From your own project, `cd node_modules/react && yarn link && cd ../react-dom && yarn link && cd ../../`
160
+ 1. Then, `cd YOUR_PLUGIN_REPO && yarn link react react-dom`
161
+
162
+ All set! You can now boot up your own project as normal, and your local copy of the plugin source code will be used. Keep in mind that changes to the source code require a rebuild, `yarn build`.
163
+
164
+ You might also need to alias these modules in your Webpack config. To do this, open your project's Payload config and add the following:
165
+
166
+ ```js
167
+ import { buildConfig } from "payload/config";
168
+
169
+ export default buildConfig({
170
+ admin: {
171
+ webpack: (config) => ({
172
+ ...config,
173
+ resolve: {
174
+ ...config.resolve,
175
+ alias: {
176
+ ...config.resolve.alias,
177
+ react: path.join(__dirname, "../node_modules/react"),
178
+ "react-dom": path.join(__dirname, "../node_modules/react-dom"),
179
+ payload: path.join(__dirname, "../node_modules/payload"),
180
+ "@payloadcms/plugin-seo": path.join(
181
+ __dirname,
182
+ "../../payload/plugin-seo/src"
183
+ ),
184
+ },
185
+ },
186
+ }),
187
+ },
188
+ });
189
+ ```
190
+
191
+ ## Screenshots
192
+
193
+ ![image](https://user-images.githubusercontent.com/70709113/163850633-f3da5f8e-2527-4688-bc79-17233307a883.png)
130
194
 
131
- <!-- ![screenshot 1](https://github.com/@payloadcms/plugin-seo/blob/main/images/screenshot-1.jpg?raw=true) -->
195
+ <!-- ![screenshot 1](https://github.com/@payloadcms/plugin-seo/blob/main/images/screenshot-1.jpg?raw=true) -->
@@ -1,12 +1,12 @@
1
1
  import React from 'react';
2
2
  import { TextareaField } from 'payload/dist/fields/config/types';
3
- import { SEOConfig } from '../types';
4
- declare type TextareaFieldWithProps = TextareaField & {
3
+ import { PluginConfig } from '../types';
4
+ type TextareaFieldWithProps = TextareaField & {
5
5
  path: string;
6
- seoConfig: SEOConfig;
6
+ pluginConfig: PluginConfig;
7
7
  };
8
8
  export declare const MetaDescription: React.FC<(TextareaFieldWithProps | {}) & {
9
- seoConfig: SEOConfig;
9
+ pluginConfig: PluginConfig;
10
10
  }>;
11
11
  export declare const getMetaDescriptionField: (props: any) => JSX.Element;
12
12
  export {};
@@ -48,7 +48,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
48
48
  function verb(n) { return function (v) { return step([n, v]); }; }
49
49
  function step(op) {
50
50
  if (f) throw new TypeError("Generator is already executing.");
51
- while (_) try {
51
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
52
52
  if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
53
53
  if (y = 0, t) op = [op[0] & 2, t.value];
54
54
  switch (op[0]) {
@@ -82,9 +82,9 @@ var defaults_1 = require("../defaults");
82
82
  var Input_1 = __importDefault(require("payload/dist/admin/components/forms/field-types/Textarea/Input"));
83
83
  var _a = defaults_1.defaults.description, minLength = _a.minLength, maxLength = _a.maxLength;
84
84
  var MetaDescription = function (props) {
85
- var _a = props || {}, path = _a.path, label = _a.label, name = _a.name, seoConfig = _a.seoConfig; // TODO: this typing is temporary until payload types are updated for custom field props
85
+ var _a = props || {}, path = _a.path, label = _a.label, name = _a.name, pluginConfig = _a.pluginConfig; // TODO: this typing is temporary until payload types are updated for custom field props
86
86
  var locale = (0, utilities_1.useLocale)();
87
- var fields = (0, forms_1.useWatchForm)().fields;
87
+ var fields = (0, forms_1.useAllFormFields)()[0];
88
88
  var field = (0, forms_1.useField)({
89
89
  label: label,
90
90
  name: name,
@@ -92,7 +92,7 @@ var MetaDescription = function (props) {
92
92
  });
93
93
  var value = field.value, setValue = field.setValue, showError = field.showError;
94
94
  var regenerateDescription = (0, react_1.useCallback)(function () {
95
- var generateDescription = seoConfig.generateDescription;
95
+ var generateDescription = pluginConfig.generateDescription;
96
96
  var getDescription = function () { return __awaiter(void 0, void 0, void 0, function () {
97
97
  var generatedDescription;
98
98
  return __generator(this, function (_a) {
@@ -113,7 +113,7 @@ var MetaDescription = function (props) {
113
113
  }, [
114
114
  fields,
115
115
  setValue,
116
- seoConfig,
116
+ pluginConfig,
117
117
  locale
118
118
  ]);
119
119
  return (react_1.default.createElement("div", { style: {
@@ -1 +1 @@
1
- {"version":3,"file":"MetaDescription.js","sourceRoot":"","sources":["../../src/fields/MetaDescription.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA2C;AAC3C,kDAAkE;AAClE,0DAAyD;AAEzD,yDAAwD;AACxD,wCAAuC;AACvC,yGAA2F;AAIrF,IAAA,KAGF,mBAAQ,CAAC,WAAW,EAFtB,SAAS,eAAA,EACT,SAAS,eACa,CAAC;AAOlB,IAAM,eAAe,GAEvB,UAAC,KAAK;IACH,IAAA,KAKF,KAA+B,IAAI,EAAE,EAJvC,IAAI,UAAA,EACJ,KAAK,WAAA,EACL,IAAI,UAAA,EACJ,SAAS,eAC8B,CAAC,CAAC,wFAAwF;IAEnI,IAAM,MAAM,GAAG,IAAA,qBAAS,GAAE,CAAC;IACnB,IAAA,MAAM,GAAK,IAAA,oBAAY,GAAE,OAAnB,CAAoB;IAElC,IAAM,KAAK,GAAsB,IAAA,gBAAQ,EAAC;QACxC,KAAK,OAAA;QACL,IAAI,MAAA;QACJ,IAAI,MAAA;KACM,CAAC,CAAC;IAGZ,IAAA,KAAK,GAGH,KAAK,MAHF,EACL,QAAQ,GAEN,KAAK,SAFC,EACR,SAAS,GACP,KAAK,UADE,CACD;IAEV,IAAM,qBAAqB,GAAG,IAAA,mBAAW,EAAC;QAChC,IAAA,mBAAmB,GAAK,SAAS,oBAAd,CAAe;QAE1C,IAAM,cAAc,GAAG;;;;;6BAEjB,CAAA,OAAO,mBAAmB,KAAK,UAAU,CAAA,EAAzC,wBAAyC;wBACpB,qBAAM,mBAAmB,CAAC,EAAE,GAAG,eAAO,MAAM,CAAE,EAAE,MAAM,QAAA,EAAE,CAAC,EAAA;;wBAAhF,oBAAoB,GAAG,SAAyD,CAAC;;;wBAEnF,QAAQ,CAAC,oBAAoB,CAAC,CAAC;;;;aAChC,CAAA;QACD,cAAc,EAAE,CAAC;IACnB,CAAC,EAAE;QACD,MAAM;QACN,QAAQ;QACR,SAAS;QACT,MAAM;KACP,CAAC,CAAC;IAEH,OAAO,CACL,uCACE,KAAK,EAAE;YACL,YAAY,EAAE,MAAM;SACrB;QAED,uCACE,KAAK,EAAE;gBACL,YAAY,EAAE,KAAK;gBACnB,QAAQ,EAAE,UAAU;aACrB;YAED;gBACG,KAAK;;gBAIN,0CACE,OAAO,EAAE,qBAAqB,EAC9B,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE;wBACL,OAAO,EAAE,CAAC;wBACV,UAAU,EAAE,MAAM;wBAClB,MAAM,EAAE,MAAM;wBACd,eAAe,EAAE,aAAa;wBAC9B,MAAM,EAAE,SAAS;wBACjB,cAAc,EAAE,WAAW;wBAC3B,KAAK,EAAE,cAAc;qBACtB,oBAGM,CACL;YACN,uCACE,KAAK,EAAE;oBACL,KAAK,EAAE,SAAS;iBACjB,IAEA,iCAA0B,SAAS,kBAAQ,SAAS,uIAAoI;gBACzL,qCACE,IAAI,EAAC,yFAAyF,EAC9F,GAAG,EAAC,qBAAqB,EACzB,MAAM,EAAC,QAAQ,qBAGb,CACA,CACF;QACN,uCACE,KAAK,EAAE;gBACL,YAAY,EAAE,MAAM;gBACpB,QAAQ,EAAE,UAAU;aACrB;YAED,8BAAC,eAAa,IACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE;oBACL,YAAY,EAAE,CAAC;iBAChB,GACD,CACE;QACN,uCACE,KAAK,EAAE;gBACL,OAAO,EAAE,MAAM;gBACf,UAAU,EAAE,QAAQ;gBACpB,KAAK,EAAE,MAAM;aACd;YAED,8BAAC,iCAAe,IACd,IAAI,EAAE,KAAe,EACrB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,GACpB,CACE,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AA3HW,QAAA,eAAe,mBA2H1B;AAEK,IAAM,uBAAuB,GAAG,UAAC,KAAU,IAAK,OAAA,CACrD,8BAAC,uBAAe,eAAK,KAAK,EAAI,CAC/B,EAFsD,CAEtD,CAAA;AAFY,QAAA,uBAAuB,2BAEnC"}
1
+ {"version":3,"file":"MetaDescription.js","sourceRoot":"","sources":["../../src/fields/MetaDescription.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA2C;AAC3C,kDAAsE;AACtE,0DAAyD;AAEzD,yDAAwD;AACxD,wCAAuC;AACvC,yGAA2F;AAIrF,IAAA,KAGF,mBAAQ,CAAC,WAAW,EAFtB,SAAS,eAAA,EACT,SAAS,eACa,CAAC;AAOlB,IAAM,eAAe,GAEvB,UAAC,KAAK;IACH,IAAA,KAKF,KAA+B,IAAI,EAAE,EAJvC,IAAI,UAAA,EACJ,KAAK,WAAA,EACL,IAAI,UAAA,EACJ,YAAY,kBAC2B,CAAC,CAAC,wFAAwF;IAEnI,IAAM,MAAM,GAAG,IAAA,qBAAS,GAAE,CAAC;IACpB,IAAA,MAAM,GAAI,IAAA,wBAAgB,GAAE,GAAtB,CAAuB;IAEpC,IAAM,KAAK,GAAsB,IAAA,gBAAQ,EAAC;QACxC,KAAK,OAAA;QACL,IAAI,MAAA;QACJ,IAAI,MAAA;KACM,CAAC,CAAC;IAGZ,IAAA,KAAK,GAGH,KAAK,MAHF,EACL,QAAQ,GAEN,KAAK,SAFC,EACR,SAAS,GACP,KAAK,UADE,CACD;IAEV,IAAM,qBAAqB,GAAG,IAAA,mBAAW,EAAC;QAChC,IAAA,mBAAmB,GAAK,YAAY,oBAAjB,CAAkB;QAE7C,IAAM,cAAc,GAAG;;;;;6BAEjB,CAAA,OAAO,mBAAmB,KAAK,UAAU,CAAA,EAAzC,wBAAyC;wBACpB,qBAAM,mBAAmB,CAAC,EAAE,GAAG,eAAO,MAAM,CAAE,EAAE,MAAM,QAAA,EAAE,CAAC,EAAA;;wBAAhF,oBAAoB,GAAG,SAAyD,CAAC;;;wBAEnF,QAAQ,CAAC,oBAAoB,CAAC,CAAC;;;;aAChC,CAAA;QACD,cAAc,EAAE,CAAC;IACnB,CAAC,EAAE;QACD,MAAM;QACN,QAAQ;QACR,YAAY;QACZ,MAAM;KACP,CAAC,CAAC;IAEH,OAAO,CACL,uCACE,KAAK,EAAE;YACL,YAAY,EAAE,MAAM;SACrB;QAED,uCACE,KAAK,EAAE;gBACL,YAAY,EAAE,KAAK;gBACnB,QAAQ,EAAE,UAAU;aACrB;YAED;gBACG,KAAK;;gBAIN,0CACE,OAAO,EAAE,qBAAqB,EAC9B,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE;wBACL,OAAO,EAAE,CAAC;wBACV,UAAU,EAAE,MAAM;wBAClB,MAAM,EAAE,MAAM;wBACd,eAAe,EAAE,aAAa;wBAC9B,MAAM,EAAE,SAAS;wBACjB,cAAc,EAAE,WAAW;wBAC3B,KAAK,EAAE,cAAc;qBACtB,oBAGM,CACL;YACN,uCACE,KAAK,EAAE;oBACL,KAAK,EAAE,SAAS;iBACjB,IAEA,iCAA0B,SAAS,kBAAQ,SAAS,uIAAoI;gBACzL,qCACE,IAAI,EAAC,yFAAyF,EAC9F,GAAG,EAAC,qBAAqB,EACzB,MAAM,EAAC,QAAQ,qBAGb,CACA,CACF;QACN,uCACE,KAAK,EAAE;gBACL,YAAY,EAAE,MAAM;gBACpB,QAAQ,EAAE,UAAU;aACrB;YAED,8BAAC,eAAa,IACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE;oBACL,YAAY,EAAE,CAAC;iBAChB,GACD,CACE;QACN,uCACE,KAAK,EAAE;gBACL,OAAO,EAAE,MAAM;gBACf,UAAU,EAAE,QAAQ;gBACpB,KAAK,EAAE,MAAM;aACd;YAED,8BAAC,iCAAe,IACd,IAAI,EAAE,KAAe,EACrB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,GACpB,CACE,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AA3HW,QAAA,eAAe,mBA2H1B;AAEK,IAAM,uBAAuB,GAAG,UAAC,KAAU,IAAK,OAAA,CACrD,8BAAC,uBAAe,eAAK,KAAK,EAAI,CAC/B,EAFsD,CAEtD,CAAA;AAFY,QAAA,uBAAuB,2BAEnC"}
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import { Props as UploadFieldType } from 'payload/dist/admin/components/forms/field-types/Upload/types';
3
- import { SEOConfig } from '../types';
4
- declare type UploadFieldWithProps = UploadFieldType & {
3
+ import { PluginConfig } from '../types';
4
+ type UploadFieldWithProps = UploadFieldType & {
5
5
  path: string;
6
- seoConfig: SEOConfig;
6
+ pluginConfig: PluginConfig;
7
7
  };
8
8
  export declare const MetaImage: React.FC<UploadFieldWithProps | {}>;
9
9
  export declare const getMetaImageField: (props: any) => JSX.Element;
@@ -48,7 +48,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
48
48
  function verb(n) { return function (v) { return step([n, v]); }; }
49
49
  function step(op) {
50
50
  if (f) throw new TypeError("Generator is already executing.");
51
- while (_) try {
51
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
52
52
  if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
53
53
  if (y = 0, t) op = [op[0] & 2, t.value];
54
54
  switch (op[0]) {
@@ -80,13 +80,13 @@ var Input_1 = __importDefault(require("payload/dist/admin/components/forms/field
80
80
  var forms_1 = require("payload/components/forms");
81
81
  var Pill_1 = require("../ui/Pill");
82
82
  var MetaImage = function (props) {
83
- var _a = props || {}, label = _a.label, relationTo = _a.relationTo, fieldTypes = _a.fieldTypes, name = _a.name, seoConfig = _a.seoConfig; // TODO: this typing is temporary until payload types are updated for custom field props
83
+ var _a = props || {}, label = _a.label, relationTo = _a.relationTo, fieldTypes = _a.fieldTypes, name = _a.name, pluginConfig = _a.pluginConfig; // TODO: this typing is temporary until payload types are updated for custom field props
84
84
  var field = (0, forms_1.useField)(props);
85
- var fields = (0, forms_1.useWatchForm)().fields;
85
+ var fields = (0, forms_1.useAllFormFields)()[0];
86
86
  var locale = (0, utilities_1.useLocale)();
87
87
  var value = field.value, setValue = field.setValue, showError = field.showError;
88
88
  var regenerateImage = (0, react_1.useCallback)(function () {
89
- var generateImage = seoConfig.generateImage;
89
+ var generateImage = pluginConfig.generateImage;
90
90
  var getDescription = function () { return __awaiter(void 0, void 0, void 0, function () {
91
91
  var generatedImage;
92
92
  return __generator(this, function (_a) {
@@ -107,7 +107,7 @@ var MetaImage = function (props) {
107
107
  }, [
108
108
  fields,
109
109
  setValue,
110
- seoConfig,
110
+ pluginConfig,
111
111
  locale,
112
112
  ]);
113
113
  var hasImage = Boolean(value);
@@ -1 +1 @@
1
- {"version":3,"file":"MetaImage.js","sourceRoot":"","sources":["../../src/fields/MetaImage.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MetaImage.js","sourceRoot":"","sources":["../../src/fields/MetaImage.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import { Props as TextFieldType } from 'payload/dist/admin/components/forms/field-types/Text/types';
3
- import { SEOConfig } from '../types';
4
- declare type TextFieldWithProps = TextFieldType & {
3
+ import { PluginConfig } from '../types';
4
+ type TextFieldWithProps = TextFieldType & {
5
5
  path: string;
6
- seoConfig: SEOConfig;
6
+ pluginConfig: PluginConfig;
7
7
  };
8
8
  export declare const MetaTitle: React.FC<TextFieldWithProps | {}>;
9
9
  export declare const getMetaTitleField: (props: any) => JSX.Element;
@@ -48,7 +48,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
48
48
  function verb(n) { return function (v) { return step([n, v]); }; }
49
49
  function step(op) {
50
50
  if (f) throw new TypeError("Generator is already executing.");
51
- while (_) try {
51
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
52
52
  if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
53
53
  if (y = 0, t) op = [op[0] & 2, t.value];
54
54
  switch (op[0]) {
@@ -82,17 +82,17 @@ var LengthIndicator_1 = require("../ui/LengthIndicator");
82
82
  var defaults_1 = require("../defaults");
83
83
  var _a = defaults_1.defaults.title, minLength = _a.minLength, maxLength = _a.maxLength;
84
84
  var MetaTitle = function (props) {
85
- var _a = props || {}, label = _a.label, name = _a.name, path = _a.path, seoConfig = _a.seoConfig; // TODO: this typing is temporary until payload types are updated for custom field props
85
+ var _a = props || {}, label = _a.label, name = _a.name, path = _a.path, pluginConfig = _a.pluginConfig; // TODO: this typing is temporary until payload types are updated for custom field props
86
86
  var field = (0, forms_1.useField)({
87
87
  label: label,
88
88
  name: name,
89
89
  path: path
90
90
  });
91
91
  var locale = (0, utilities_1.useLocale)();
92
- var fields = (0, forms_1.useWatchForm)().fields;
92
+ var fields = (0, forms_1.useAllFormFields)()[0];
93
93
  var value = field.value, setValue = field.setValue, showError = field.showError;
94
94
  var regenerateTitle = (0, react_1.useCallback)(function () {
95
- var generateTitle = seoConfig.generateTitle;
95
+ var generateTitle = pluginConfig.generateTitle;
96
96
  var getTitle = function () { return __awaiter(void 0, void 0, void 0, function () {
97
97
  var generatedTitle;
98
98
  return __generator(this, function (_a) {
@@ -113,7 +113,7 @@ var MetaTitle = function (props) {
113
113
  }, [
114
114
  fields,
115
115
  setValue,
116
- seoConfig,
116
+ pluginConfig,
117
117
  locale,
118
118
  ]);
119
119
  return (react_1.default.createElement("div", { style: {
@@ -1 +1 @@
1
- {"version":3,"file":"MetaTitle.js","sourceRoot":"","sources":["../../src/fields/MetaTitle.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MetaTitle.js","sourceRoot":"","sources":["../../src/fields/MetaTitle.tsx"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  import { Config } from 'payload/config';
2
- import { SEOConfig } from './types';
3
- declare const seo: (seoConfig: SEOConfig) => (config: Config) => Config;
2
+ import { PluginConfig } from './types';
3
+ declare const seo: (pluginConfig: PluginConfig) => (config: Config) => Config;
4
4
  export default seo;
package/dist/index.js CHANGED
@@ -25,7 +25,7 @@ var Overview_1 = require("./ui/Overview");
25
25
  var MetaTitle_1 = require("./fields/MetaTitle");
26
26
  var Preview_1 = require("./ui/Preview");
27
27
  var MetaImage_1 = require("./fields/MetaImage");
28
- var seo = function (seoConfig) { return function (config) {
28
+ var seo = function (pluginConfig) { return function (config) {
29
29
  var _a, _b;
30
30
  var seoFields = [
31
31
  {
@@ -49,7 +49,7 @@ var seo = function (seoConfig) { return function (config) {
49
49
  localized: true,
50
50
  admin: {
51
51
  components: {
52
- Field: function (props) { return (0, MetaTitle_1.getMetaTitleField)(__assign(__assign({}, props), { seoConfig: seoConfig })); },
52
+ Field: function (props) { return (0, MetaTitle_1.getMetaTitleField)(__assign(__assign({}, props), { pluginConfig: pluginConfig })); },
53
53
  },
54
54
  },
55
55
  },
@@ -59,20 +59,20 @@ var seo = function (seoConfig) { return function (config) {
59
59
  localized: true,
60
60
  admin: {
61
61
  components: {
62
- Field: function (props) { return (0, MetaDescription_1.getMetaDescriptionField)(__assign(__assign({}, props), { seoConfig: seoConfig })); },
62
+ Field: function (props) { return (0, MetaDescription_1.getMetaDescriptionField)(__assign(__assign({}, props), { pluginConfig: pluginConfig })); },
63
63
  },
64
64
  },
65
65
  }
66
- ], (seoConfig === null || seoConfig === void 0 ? void 0 : seoConfig.uploadsCollection) ? [{
66
+ ], (pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.uploadsCollection) ? [{
67
67
  name: 'image',
68
68
  label: 'Meta Image',
69
69
  type: 'upload',
70
70
  localized: true,
71
- relationTo: seoConfig === null || seoConfig === void 0 ? void 0 : seoConfig.uploadsCollection,
71
+ relationTo: pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.uploadsCollection,
72
72
  admin: {
73
73
  description: 'Maximum upload file size: 12MB. Recommended file size for images is <500KB.',
74
74
  components: {
75
- Field: function (props) { return (0, MetaImage_1.getMetaImageField)(__assign(__assign({}, props), { seoConfig: seoConfig })); },
75
+ Field: function (props) { return (0, MetaImage_1.getMetaImageField)(__assign(__assign({}, props), { pluginConfig: pluginConfig })); },
76
76
  },
77
77
  },
78
78
  }] : [], true), [
@@ -82,7 +82,7 @@ var seo = function (seoConfig) { return function (config) {
82
82
  type: 'ui',
83
83
  admin: {
84
84
  components: {
85
- Field: function (props) { return (0, Preview_1.getPreviewField)(__assign(__assign({}, props), { seoConfig: seoConfig })); },
85
+ Field: function (props) { return (0, Preview_1.getPreviewField)(__assign(__assign({}, props), { pluginConfig: pluginConfig })); },
86
86
  },
87
87
  },
88
88
  },
@@ -90,18 +90,50 @@ var seo = function (seoConfig) { return function (config) {
90
90
  }
91
91
  ];
92
92
  return (__assign(__assign({}, config), { collections: ((_a = config.collections) === null || _a === void 0 ? void 0 : _a.map(function (collection) {
93
- var _a;
93
+ var _a, _b, _c, _d, _e;
94
94
  var slug = collection.slug;
95
- var isEnabled = (_a = seoConfig === null || seoConfig === void 0 ? void 0 : seoConfig.collections) === null || _a === void 0 ? void 0 : _a.includes(slug);
95
+ var isEnabled = (_a = pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.collections) === null || _a === void 0 ? void 0 : _a.includes(slug);
96
96
  if (isEnabled) {
97
+ if (pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.tabbedUI) {
98
+ var seoFieldsAsTabs = [{
99
+ type: 'tabs',
100
+ tabs: __spreadArray(__spreadArray([], ((_b = collection === null || collection === void 0 ? void 0 : collection.fields) === null || _b === void 0 ? void 0 : _b[0].type) === 'tabs'
101
+ ? (_d = (_c = collection === null || collection === void 0 ? void 0 : collection.fields) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.tabs : [{
102
+ label: ((_e = collection === null || collection === void 0 ? void 0 : collection.labels) === null || _e === void 0 ? void 0 : _e.singular) || 'Content',
103
+ fields: __spreadArray([], ((collection === null || collection === void 0 ? void 0 : collection.fields) || []), true)
104
+ }], true), [
105
+ {
106
+ label: 'SEO',
107
+ fields: seoFields,
108
+ }
109
+ ], false)
110
+ }];
111
+ return (__assign(__assign({}, collection), { fields: seoFieldsAsTabs }));
112
+ }
97
113
  return (__assign(__assign({}, collection), { fields: __spreadArray(__spreadArray([], (collection === null || collection === void 0 ? void 0 : collection.fields) || [], true), seoFields, true) }));
98
114
  }
99
115
  return collection;
100
116
  })) || [], globals: ((_b = config.globals) === null || _b === void 0 ? void 0 : _b.map(function (global) {
101
- var _a;
117
+ var _a, _b, _c, _d;
102
118
  var slug = global.slug;
103
- var isEnabled = (_a = seoConfig === null || seoConfig === void 0 ? void 0 : seoConfig.globals) === null || _a === void 0 ? void 0 : _a.includes(slug);
119
+ var isEnabled = (_a = pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.globals) === null || _a === void 0 ? void 0 : _a.includes(slug);
104
120
  if (isEnabled) {
121
+ if (pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.tabbedUI) {
122
+ var seoFieldsAsTabs = [{
123
+ type: 'tabs',
124
+ tabs: __spreadArray(__spreadArray([], ((_b = global === null || global === void 0 ? void 0 : global.fields) === null || _b === void 0 ? void 0 : _b[0].type) === 'tabs'
125
+ ? (_d = (_c = global === null || global === void 0 ? void 0 : global.fields) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.tabs : [{
126
+ label: (global === null || global === void 0 ? void 0 : global.label) || 'Content',
127
+ fields: __spreadArray([], ((global === null || global === void 0 ? void 0 : global.fields) || []), true)
128
+ }], true), [
129
+ {
130
+ label: 'SEO',
131
+ fields: seoFields,
132
+ }
133
+ ], false)
134
+ }];
135
+ return (__assign(__assign({}, global), { fields: seoFieldsAsTabs }));
136
+ }
105
137
  return (__assign(__assign({}, global), { fields: __spreadArray(__spreadArray([], (global === null || global === void 0 ? void 0 : global.fields) || [], true), seoFields, true) }));
106
138
  }
107
139
  return global;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,9 +1,10 @@
1
1
  import { Field } from "payload/dist/fields/config/types";
2
- export declare type SEOConfig = {
2
+ export type PluginConfig = {
3
3
  collections?: string[];
4
4
  globals?: string[];
5
5
  uploadsCollection?: string;
6
6
  fields?: Partial<Field>[];
7
+ tabbedUI?: boolean;
7
8
  generateTitle?: <T = any>(args: {
8
9
  doc: T;
9
10
  locale?: string;
@@ -21,7 +22,7 @@ export declare type SEOConfig = {
21
22
  locale?: string;
22
23
  }) => string | Promise<string>;
23
24
  };
24
- export declare type Meta = {
25
+ export type Meta = {
25
26
  title?: string;
26
27
  description?: string;
27
28
  keywords?: string;
@@ -31,7 +31,7 @@ var defaults_1 = require("../defaults");
31
31
  var _a = defaults_1.defaults.title, minTitle = _a.minLength, maxTitle = _a.maxLength, _b = defaults_1.defaults.description, minDesc = _b.minLength, maxDesc = _b.maxLength;
32
32
  var Overview = function () {
33
33
  var _a = (0, forms_1.useForm)(), dispatchFields = _a.dispatchFields, getFields = _a.getFields;
34
- var _b = (0, forms_1.useWatchForm)().fields, _c = _b["meta.title"], _d = _c === void 0 ? {} : _c, metaTitle = _d.value, _e = _b["meta.description"], _f = _e === void 0 ? {} : _e, metaDesc = _f.value, _g = _b["meta.image"], _h = _g === void 0 ? {} : _g, metaImage = _h.value;
34
+ var _b = (0, forms_1.useAllFormFields)()[0], _c = _b["meta.title"], _d = _c === void 0 ? {} : _c, metaTitle = _d.value, _e = _b["meta.description"], _f = _e === void 0 ? {} : _e, metaDesc = _f.value, _g = _b["meta.image"], _h = _g === void 0 ? {} : _g, metaImage = _h.value;
35
35
  var _j = (0, react_1.useState)(), titleIsValid = _j[0], setTitleIsValid = _j[1];
36
36
  var _k = (0, react_1.useState)(), descIsValid = _k[0], setDescIsValid = _k[1];
37
37
  var _l = (0, react_1.useState)(), imageIsValid = _l[0], setImageIsValid = _l[1];
@@ -41,7 +41,7 @@ var Overview = function () {
41
41
  fieldsWithoutMeta['meta.title'].value = '';
42
42
  fieldsWithoutMeta['meta.description'].value = '';
43
43
  fieldsWithoutMeta['meta.image'].value = '';
44
- dispatchFields(fieldsWithoutMeta);
44
+ // dispatchFields(fieldsWithoutMeta);
45
45
  }, [
46
46
  dispatchFields,
47
47
  getFields,
@@ -1 +1 @@
1
- {"version":3,"file":"Overview.js","sourceRoot":"","sources":["../../src/ui/Overview.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA+C;AAC/C,kDAAiE;AAEjE,6CAAgE;AAChE,wCAAuC;AAGrC,IAAA,KAQE,mBAAQ,MALT,EAFY,QAAQ,eAAA,EACR,QAAQ,eAAA,EAErB,KAIE,mBAAQ,YADT,EAFY,OAAO,eAAA,EACP,OAAO,eACnB,CACU;AAEN,IAAM,QAAQ,GAAa;IAC1B,IAAA,KAGF,IAAA,eAAO,GAAE,EAFX,cAAc,oBAAA,EACd,SAAS,eACE,CAAC;IAGZ,IAAA,KAWE,IAAA,oBAAY,GAAE,OADf,EATC,qBAEe,EAFf,qBAEI,EAAW,KAAA,EADN,SAAS,WAAA,EAElB,2BAEe,EAFf,qBAEI,EAAW,KAAA,EADN,QAAQ,WAAA,EAEjB,qBAEe,EAFf,qBAEI,EAAW,KAAA,EADN,SAAS,WAEnB,CACgB;IAEb,IAAA,KAAkC,IAAA,gBAAQ,GAAuB,EAAhE,YAAY,QAAA,EAAE,eAAe,QAAmC,CAAC;IAClE,IAAA,KAAgC,IAAA,gBAAQ,GAAuB,EAA9D,WAAW,QAAA,EAAE,cAAc,QAAmC,CAAC;IAChE,IAAA,KAAkC,IAAA,gBAAQ,GAAuB,EAAhE,YAAY,QAAA,EAAE,eAAe,QAAmC,CAAC;IAExE,IAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC;QAC3B,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,IAAM,iBAAiB,GAAG,MAAM,CAAC;QACjC,iBAAiB,CAAC,YAAY,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC3C,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACjD,iBAAiB,CAAC,YAAY,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC3C,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACpC,CAAC,EAAE;QACD,cAAc;QACd,SAAS;KACV,CAAC,CAAC;IAEH,IAAA,iBAAS,EAAC;QACR,IAAI,OAAO,SAAS,KAAK,QAAQ;YAAE,eAAe,CAAC,SAAS,CAAC,MAAM,IAAI,QAAQ,IAAI,SAAS,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC;QACjH,IAAI,OAAO,QAAQ,KAAK,QAAQ;YAAE,cAAc,CAAC,QAAQ,CAAC,MAAM,IAAI,OAAO,IAAI,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;QAC3G,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IACtC,CAAC,EAAE;QACD,SAAS;QACT,QAAQ;QACR,SAAS;KACV,CAAC,CAAC;IAEH,IAAM,WAAW,GAAG;QAClB,YAAY;QACZ,WAAW;QACX,YAAY;KACb,CAAC;IAEF,IAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAE1D,OAAO,CACL,uCACE,KAAK,EAAE;YACL,YAAY,EAAE,MAAM;SACrB;QAED,2CACG,UAAG,cAAc,cAAI,WAAW,CAAC,MAAM,wBAAqB,CACzD,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AAjEW,QAAA,QAAQ,YAiEnB"}
1
+ {"version":3,"file":"Overview.js","sourceRoot":"","sources":["../../src/ui/Overview.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA+C;AAC/C,kDAAqE;AAErE,6CAAgE;AAChE,wCAAuC;AAGrC,IAAA,KAQE,mBAAQ,MALT,EAFY,QAAQ,eAAA,EACR,QAAQ,eAAA,EAErB,KAIE,mBAAQ,YADT,EAFY,OAAO,eAAA,EACP,OAAO,eACnB,CACU;AAEN,IAAM,QAAQ,GAAa;IAC1B,IAAA,KAGF,IAAA,eAAO,GAAE,EAFX,cAAc,oBAAA,EACd,SAAS,eACE,CAAC;IAEP,IAAA,KAUF,IAAA,wBAAgB,GAAE,GAAtB,EATC,qBAEe,EAFf,qBAEI,EAAW,KAAA,EADN,SAAS,WAAA,EAElB,2BAEe,EAFf,qBAEI,EAAW,KAAA,EADN,QAAQ,WAAA,EAEjB,qBAEe,EAFf,qBAEI,EAAW,KAAA,EADN,SAAS,WAEnB,CAAuB;IAElB,IAAA,KAAkC,IAAA,gBAAQ,GAAuB,EAAhE,YAAY,QAAA,EAAE,eAAe,QAAmC,CAAC;IAClE,IAAA,KAAgC,IAAA,gBAAQ,GAAuB,EAA9D,WAAW,QAAA,EAAE,cAAc,QAAmC,CAAC;IAChE,IAAA,KAAkC,IAAA,gBAAQ,GAAuB,EAAhE,YAAY,QAAA,EAAE,eAAe,QAAmC,CAAC;IAExE,IAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC;QAC3B,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,IAAM,iBAAiB,GAAG,MAAM,CAAC;QACjC,iBAAiB,CAAC,YAAY,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC3C,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QACjD,iBAAiB,CAAC,YAAY,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC3C,qCAAqC;IACvC,CAAC,EAAE;QACD,cAAc;QACd,SAAS;KACV,CAAC,CAAC;IAEH,IAAA,iBAAS,EAAC;QACR,IAAI,OAAO,SAAS,KAAK,QAAQ;YAAE,eAAe,CAAC,SAAS,CAAC,MAAM,IAAI,QAAQ,IAAI,SAAS,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC;QACjH,IAAI,OAAO,QAAQ,KAAK,QAAQ;YAAE,cAAc,CAAC,QAAQ,CAAC,MAAM,IAAI,OAAO,IAAI,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC;QAC3G,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IACtC,CAAC,EAAE;QACD,SAAS;QACT,QAAQ;QACR,SAAS;KACV,CAAC,CAAC;IAEH,IAAM,WAAW,GAAG;QAClB,YAAY;QACZ,WAAW;QACX,YAAY;KACb,CAAC;IAEF,IAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAE1D,OAAO,CACL,uCACE,KAAK,EAAE;YACL,YAAY,EAAE,MAAM;SACrB;QAED,2CACG,UAAG,cAAc,cAAI,WAAW,CAAC,MAAM,wBAAqB,CACzD,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AA/DW,QAAA,QAAQ,YA+DnB"}
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
2
  import { Field } from 'payload/dist/admin/components/forms/Form/types';
3
- import { SEOConfig } from '../types';
4
- declare type PreviewFieldWithProps = Field & {
5
- seoConfig: SEOConfig;
3
+ import { PluginConfig } from '../types';
4
+ type PreviewFieldWithProps = Field & {
5
+ pluginConfig: PluginConfig;
6
6
  };
7
7
  export declare const Preview: React.FC<PreviewFieldWithProps | {}>;
8
8
  export declare const getPreviewField: (props: any) => JSX.Element;
@@ -48,7 +48,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
48
48
  function verb(n) { return function (v) { return step([n, v]); }; }
49
49
  function step(op) {
50
50
  if (f) throw new TypeError("Generator is already executing.");
51
- while (_) try {
51
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
52
52
  if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
53
53
  if (y = 0, t) op = [op[0] & 2, t.value];
54
54
  switch (op[0]) {
@@ -74,7 +74,7 @@ exports.getPreviewField = exports.Preview = void 0;
74
74
  var forms_1 = require("payload/components/forms");
75
75
  var react_1 = __importStar(require("react"));
76
76
  var Preview = function (props) {
77
- var generateURL = (props || {}).seoConfig.generateURL; // TODO: this typing is temporary until payload types are updated for custom field props;
77
+ var generateURL = (props || {}).pluginConfig.generateURL; // TODO: this typing is temporary until payload types are updated for custom field props;
78
78
  var fields = (0, forms_1.useWatchForm)().fields;
79
79
  var _a = fields["meta.title"], _b = _a === void 0 ? {} : _a, metaTitle = _b.value, _c = fields["meta.description"], _d = _c === void 0 ? {} : _c, metaDescription = _d.value;
80
80
  var _e = (0, react_1.useState)(), href = _e[0], setHref = _e[1];
@@ -1 +1 @@
1
- {"version":3,"file":"Preview.js","sourceRoot":"","sources":["../../src/ui/Preview.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAwD;AACxD,6CAAmD;AAO5C,IAAM,OAAO,GAAyC,UAAC,KAAK;IAG7D,IAAA,WAAW,GAEX,CAAA,KAA8B,IAAI,EAAE,CAAA,sBAFzB,CAE0B,CAAC,yFAAyF;IAE3H,IAAA,MAAM,GAAK,IAAA,oBAAY,GAAE,OAAnB,CAAoB;IAGhC,IAAA,KAME,MAAM,cAJO,EAFf,qBAEI,EAAW,KAAA,EADN,SAAS,WAAA,EAElB,KAGE,MAAM,oBADO,EAFf,qBAEI,EAAW,KAAA,EADN,eAAe,WACT,CACN;IAEL,IAAA,KAAkB,IAAA,gBAAQ,GAAU,EAAnC,IAAI,QAAA,EAAE,OAAO,QAAsB,CAAC;IAE3C,IAAA,iBAAS,EAAC;QACR,IAAM,OAAO,GAAG;;;;;6BACV,CAAA,OAAO,WAAW,KAAK,UAAU,IAAI,CAAC,IAAI,CAAA,EAA1C,wBAA0C;wBAC5B,qBAAM,WAAW,CAAC,EAAE,GAAG,EAAE,EAAE,MAAM,QAAA,EAAE,EAAE,CAAC,EAAA;;wBAAhD,OAAO,GAAG,SAAsC;wBACtD,OAAO,CAAC,OAAO,CAAC,CAAC;;;;;aAEpB,CAAA;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,EAAE;QACD,WAAW;QACX,MAAM;KACP,CAAC,CAAC;IAEH,OAAO,CACL;QACE,qDAEM;QACN,uCACE,KAAK,EAAE;gBACL,YAAY,EAAE,KAAK;gBACnB,KAAK,EAAE,SAAS;aACjB,4EAGG;QACN,uCACE,KAAK,EAAE;gBACL,OAAO,EAAE,MAAM;gBACf,YAAY,EAAE,KAAK;gBACnB,SAAS,EAAE,iCAAiC;gBAC5C,aAAa,EAAE,MAAM;gBACrB,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,MAAM;gBACb,UAAU,EAAE,2BAA2B;aACxC;YAED;gBACE,qCACE,IAAI,EAAE,IAAI,EACV,KAAK,EAAE;wBACL,cAAc,EAAE,MAAM;qBACvB,IAEA,IAAI,IAAI,aAAa,CACpB,CACA;YACN,sCACE,KAAK,EAAE;oBACL,MAAM,EAAE,CAAC;iBACV;gBAED,qCACE,IAAI,EAAC,GAAG,EACR,KAAK,EAAE;wBACL,cAAc,EAAE,MAAM;qBACvB,IAEA,SAAmB,CAClB,CACD;YACL,qCACE,KAAK,EAAE;oBACL,MAAM,EAAE,CAAC;iBACV,IAEA,eAAyB,CACxB,CACA,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AA3FW,QAAA,OAAO,WA2FlB;AAEK,IAAM,eAAe,GAAG,UAAC,KAAU,IAAK,OAAA,CAC7C,8BAAC,eAAO,eAAK,KAAK,EAAI,CACvB,EAF8C,CAE9C,CAAA;AAFY,QAAA,eAAe,mBAE3B"}
1
+ {"version":3,"file":"Preview.js","sourceRoot":"","sources":["../../src/ui/Preview.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAAwD;AACxD,6CAAmD;AAO5C,IAAM,OAAO,GAAyC,UAAC,KAAK;IAG7D,IAAA,WAAW,GAEX,CAAA,KAA8B,IAAI,EAAE,CAAA,yBAFzB,CAE0B,CAAC,yFAAyF;IAE3H,IAAA,MAAM,GAAK,IAAA,oBAAY,GAAE,OAAnB,CAAoB;IAGhC,IAAA,KAME,MAAM,cAJO,EAFf,qBAEI,EAAW,KAAA,EADN,SAAS,WAAA,EAElB,KAGE,MAAM,oBADO,EAFf,qBAEI,EAAW,KAAA,EADN,eAAe,WACT,CACN;IAEL,IAAA,KAAkB,IAAA,gBAAQ,GAAU,EAAnC,IAAI,QAAA,EAAE,OAAO,QAAsB,CAAC;IAE3C,IAAA,iBAAS,EAAC;QACR,IAAM,OAAO,GAAG;;;;;6BACV,CAAA,OAAO,WAAW,KAAK,UAAU,IAAI,CAAC,IAAI,CAAA,EAA1C,wBAA0C;wBAC5B,qBAAM,WAAW,CAAC,EAAE,GAAG,EAAE,EAAE,MAAM,QAAA,EAAE,EAAE,CAAC,EAAA;;wBAAhD,OAAO,GAAG,SAAsC;wBACtD,OAAO,CAAC,OAAO,CAAC,CAAC;;;;;aAEpB,CAAA;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,EAAE;QACD,WAAW;QACX,MAAM;KACP,CAAC,CAAC;IAEH,OAAO,CACL;QACE,qDAEM;QACN,uCACE,KAAK,EAAE;gBACL,YAAY,EAAE,KAAK;gBACnB,KAAK,EAAE,SAAS;aACjB,4EAGG;QACN,uCACE,KAAK,EAAE;gBACL,OAAO,EAAE,MAAM;gBACf,YAAY,EAAE,KAAK;gBACnB,SAAS,EAAE,iCAAiC;gBAC5C,aAAa,EAAE,MAAM;gBACrB,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,MAAM;gBACb,UAAU,EAAE,2BAA2B;aACxC;YAED;gBACE,qCACE,IAAI,EAAE,IAAI,EACV,KAAK,EAAE;wBACL,cAAc,EAAE,MAAM;qBACvB,IAEA,IAAI,IAAI,aAAa,CACpB,CACA;YACN,sCACE,KAAK,EAAE;oBACL,MAAM,EAAE,CAAC;iBACV;gBAED,qCACE,IAAI,EAAC,GAAG,EACR,KAAK,EAAE;wBACL,cAAc,EAAE,MAAM;qBACvB,IAEA,SAAmB,CAClB,CACD;YACL,qCACE,KAAK,EAAE;oBACL,MAAM,EAAE,CAAC;iBACV,IAEA,eAAyB,CACxB,CACA,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AA3FW,QAAA,OAAO,WA2FlB;AAEK,IAAM,eAAe,GAAG,UAAC,KAAU,IAAK,OAAA,CAC7C,8BAAC,eAAO,eAAK,KAAK,EAAI,CACvB,EAF8C,CAE9C,CAAA;AAFY,QAAA,eAAe,mBAE3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/plugin-seo",
3
- "version": "1.0.7",
3
+ "version": "1.0.9",
4
4
  "homepage:": "https://payloadcms.com",
5
5
  "repository": "git@github.com:payloadcms/plugin-seo.git",
6
6
  "description": "SEO plugin for Payload CMS",
@@ -26,8 +26,6 @@
26
26
  "react": "^16.8.0 || ^17.0.0 || ^18.0.0"
27
27
  },
28
28
  "devDependencies": {
29
- "@types/react": "^18.0.8",
30
- "@types/react-dom": "^18.0.3",
31
29
  "payload": "^1.0.9",
32
30
  "react": "^18.0.0",
33
31
  "typescript": "^4.5.5"