@payloadcms/plugin-seo 1.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.
- package/README.md +120 -0
- package/dist/defaults.d.ts +10 -0
- package/dist/defaults.js +14 -0
- package/dist/defaults.js.map +1 -0
- package/dist/fields/MetaDescription.d.ts +12 -0
- package/dist/fields/MetaDescription.js +158 -0
- package/dist/fields/MetaDescription.js.map +1 -0
- package/dist/fields/MetaImage.d.ts +10 -0
- package/dist/fields/MetaImage.js +161 -0
- package/dist/fields/MetaImage.js.map +1 -0
- package/dist/fields/MetaTitle.d.ts +10 -0
- package/dist/fields/MetaTitle.js +159 -0
- package/dist/fields/MetaTitle.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +100 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +24 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/ui/LengthIndicator.d.ts +6 -0
- package/dist/ui/LengthIndicator.js +127 -0
- package/dist/ui/LengthIndicator.js.map +1 -0
- package/dist/ui/Overview.d.ts +2 -0
- package/dist/ui/Overview.js +72 -0
- package/dist/ui/Overview.js.map +1 -0
- package/dist/ui/Pill.d.ts +6 -0
- package/dist/ui/Pill.js +25 -0
- package/dist/ui/Pill.js.map +1 -0
- package/dist/ui/Preview.d.ts +9 -0
- package/dist/ui/Preview.js +136 -0
- package/dist/ui/Preview.js.map +1 -0
- package/package.json +37 -0
|
@@ -0,0 +1,136 @@
|
|
|
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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
37
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
38
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
39
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
40
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
41
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
42
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
46
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
47
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
48
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
49
|
+
function step(op) {
|
|
50
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
51
|
+
while (_) try {
|
|
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
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
54
|
+
switch (op[0]) {
|
|
55
|
+
case 0: case 1: t = op; break;
|
|
56
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
57
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
58
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
59
|
+
default:
|
|
60
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
61
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
62
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
63
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
64
|
+
if (t[2]) _.ops.pop();
|
|
65
|
+
_.trys.pop(); continue;
|
|
66
|
+
}
|
|
67
|
+
op = body.call(thisArg, _);
|
|
68
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
69
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
73
|
+
exports.getPreviewField = exports.Preview = void 0;
|
|
74
|
+
var forms_1 = require("payload/components/forms");
|
|
75
|
+
var react_1 = __importStar(require("react"));
|
|
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;
|
|
78
|
+
var fields = (0, forms_1.useWatchForm)().fields;
|
|
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
|
+
var _e = (0, react_1.useState)(), href = _e[0], setHref = _e[1];
|
|
81
|
+
(0, react_1.useEffect)(function () {
|
|
82
|
+
var getHref = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
83
|
+
var newHref;
|
|
84
|
+
return __generator(this, function (_a) {
|
|
85
|
+
switch (_a.label) {
|
|
86
|
+
case 0:
|
|
87
|
+
if (!(typeof generateURL === 'function' && !href)) return [3 /*break*/, 2];
|
|
88
|
+
return [4 /*yield*/, generateURL({ doc: { fields: fields } })];
|
|
89
|
+
case 1:
|
|
90
|
+
newHref = _a.sent();
|
|
91
|
+
setHref(newHref);
|
|
92
|
+
_a.label = 2;
|
|
93
|
+
case 2: return [2 /*return*/];
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
}); };
|
|
97
|
+
getHref();
|
|
98
|
+
}, [
|
|
99
|
+
generateURL,
|
|
100
|
+
fields
|
|
101
|
+
]);
|
|
102
|
+
return (react_1.default.createElement("div", null,
|
|
103
|
+
react_1.default.createElement("div", null, "Preview"),
|
|
104
|
+
react_1.default.createElement("div", { style: {
|
|
105
|
+
marginBottom: '5px',
|
|
106
|
+
color: '#9A9A9A',
|
|
107
|
+
} }, "Exact result listings may vary based on content and search relevancy."),
|
|
108
|
+
react_1.default.createElement("div", { style: {
|
|
109
|
+
padding: '20px',
|
|
110
|
+
borderRadius: '5px',
|
|
111
|
+
boxShadow: '0px 0px 10px rgba(0, 0, 0, 0.1)',
|
|
112
|
+
pointerEvents: 'none',
|
|
113
|
+
maxWidth: '600px',
|
|
114
|
+
width: '100%'
|
|
115
|
+
} },
|
|
116
|
+
react_1.default.createElement("div", null,
|
|
117
|
+
react_1.default.createElement("a", { href: href, style: {
|
|
118
|
+
color: '#202124',
|
|
119
|
+
textDecoration: 'none',
|
|
120
|
+
} }, href || 'https://...')),
|
|
121
|
+
react_1.default.createElement("h4", { style: {
|
|
122
|
+
margin: 0,
|
|
123
|
+
} },
|
|
124
|
+
react_1.default.createElement("a", { href: "/", style: {
|
|
125
|
+
color: '#1a0dab',
|
|
126
|
+
textDecoration: 'none',
|
|
127
|
+
} }, metaTitle)),
|
|
128
|
+
react_1.default.createElement("p", { style: {
|
|
129
|
+
margin: 0,
|
|
130
|
+
color: '#202124',
|
|
131
|
+
} }, metaDescription))));
|
|
132
|
+
};
|
|
133
|
+
exports.Preview = Preview;
|
|
134
|
+
var getPreviewField = function (props) { return (react_1.default.createElement(exports.Preview, __assign({}, props))); };
|
|
135
|
+
exports.getPreviewField = getPreviewField;
|
|
136
|
+
//# sourceMappingURL=Preview.js.map
|
|
@@ -0,0 +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;aACd;YAED;gBACE,qCACE,IAAI,EAAE,IAAI,EACV,KAAK,EAAE;wBACL,KAAK,EAAE,SAAS;wBAChB,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,KAAK,EAAE,SAAS;wBAChB,cAAc,EAAE,MAAM;qBACvB,IAEA,SAAmB,CAClB,CACD;YACL,qCACE,KAAK,EAAE;oBACL,MAAM,EAAE,CAAC;oBACT,KAAK,EAAE,SAAS;iBACjB,IAEA,eAAyB,CACxB,CACA,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AA7FW,QAAA,OAAO,WA6FlB;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
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@payloadcms/plugin-seo",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "SEO plugin for Payload CMS",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"build": "tsc",
|
|
9
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
10
|
+
},
|
|
11
|
+
"keywords": [
|
|
12
|
+
"payload",
|
|
13
|
+
"cms",
|
|
14
|
+
"plugin",
|
|
15
|
+
"typescript",
|
|
16
|
+
"react",
|
|
17
|
+
"seo",
|
|
18
|
+
"yoast"
|
|
19
|
+
],
|
|
20
|
+
"author": "dev@payloadcms.com",
|
|
21
|
+
"license": "MIT",
|
|
22
|
+
"peerDependencies": {
|
|
23
|
+
"@payloadcms/config-provider": "^1.0.0",
|
|
24
|
+
"payload": "^0.15.6",
|
|
25
|
+
"react": "^17.0.2"
|
|
26
|
+
},
|
|
27
|
+
"devDependencies": {
|
|
28
|
+
"@types/react": "^18.0.8",
|
|
29
|
+
"@types/react-dom": "^18.0.3",
|
|
30
|
+
"payload": "^0.15.6",
|
|
31
|
+
"react": "^17.0.2",
|
|
32
|
+
"typescript": "^4.5.5"
|
|
33
|
+
},
|
|
34
|
+
"files": [
|
|
35
|
+
"dist"
|
|
36
|
+
]
|
|
37
|
+
}
|