Some checks failed
CI / go (push) Waiting to run
CI / docker (push) Waiting to run
CI / lint-go (push) Waiting to run
CI / lint-docs (push) Waiting to run
CI / check-paperclip (push) Waiting to run
Deploy static site / Deploy to GitHub Pages (push) Has been cancelled
Deploy static site / Deploy via Docker to hatch.surf (push) Has been cancelled
Resolved conflicts by taking GitHub versions for: - .dockerignore, .gitignore, Dockerfile, README.md, docker-compose.yml Kept deploy.sh updated to: - Pull from GitHub (primary source) - Push to Gitea (push-mirror) - Build from site/ directory (GitHub structure) Co-Authored-By: Paperclip <noreply@paperclip.ing>
54 lines
1.8 KiB
JavaScript
54 lines
1.8 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
Object.defineProperty(exports, "default", {
|
|
enumerable: true,
|
|
get: function() {
|
|
return _default;
|
|
}
|
|
});
|
|
var _definerule = require("../utils/define-rule");
|
|
var url = 'https://nextjs.org/docs/messages/no-script-component-in-head';
|
|
var _default = (0, _definerule.defineRule)({
|
|
meta: {
|
|
docs: {
|
|
description: 'Prevent usage of `next/script` in `next/head` component.',
|
|
recommended: true,
|
|
url: url
|
|
},
|
|
type: 'problem',
|
|
schema: []
|
|
},
|
|
create: function create(context) {
|
|
var isNextHead = null;
|
|
return {
|
|
ImportDeclaration: function ImportDeclaration(node) {
|
|
if (node.source.value === 'next/head') {
|
|
isNextHead = node.source.value;
|
|
}
|
|
if (node.source.value !== 'next/script') {
|
|
return;
|
|
}
|
|
},
|
|
JSXElement: function JSXElement(node) {
|
|
if (!isNextHead) {
|
|
return;
|
|
}
|
|
if (node.openingElement && node.openingElement.name && node.openingElement.name.name !== 'Head') {
|
|
return;
|
|
}
|
|
var scriptTag = node.children.find(function(child) {
|
|
return child.openingElement && child.openingElement.name && child.openingElement.name.name === 'Script';
|
|
});
|
|
if (scriptTag) {
|
|
context.report({
|
|
node: node,
|
|
message: "`next/script` should not be used in `next/head` component. Move `<Script />` outside of `<Head>` instead. See: ".concat(url)
|
|
});
|
|
}
|
|
}
|
|
};
|
|
}
|
|
});
|