Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@prettier/plugin-pug

Package Overview
Dependencies
Maintainers
12
Versions
104
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@prettier/plugin-pug - npm Package Compare versions

Comparing version 1.9.0 to 1.10.0

dist/options/empty-attributes/index.js

13

CHANGELOG.md
# Next
[diff](https://github.com/prettier/plugin-pug/compare/1.9.0...master)
[diff](https://github.com/prettier/plugin-pug/compare/1.10.0...master)
# 1.10.0
[diff](https://github.com/prettier/plugin-pug/compare/1.9.0...1.10.0)
- Implement `pugEmptyAttributes` and `pugEmptyAttributesForceQuotes` option ([#128])
- Improve warning message ([#143], [c0319bf])
[#128]: https://github.com/prettier/plugin-pug/issues/128
[#143]: https://github.com/prettier/plugin-pug/issues/143
[c0319bf]: https://github.com/prettier/plugin-pug/commit/c0319bf5220ac2aa5ecbc82a473552f76c07009d
# 1.9.0

@@ -6,0 +17,0 @@

4

dist/options/converge.js

@@ -29,2 +29,4 @@ "use strict";

pugWrapAttributesPattern: options.pugWrapAttributesPattern,
pugEmptyAttributes: options.pugEmptyAttributes,
pugEmptyAttributesForceQuotes: options.pugEmptyAttributesForceQuotes,
pugSingleFileComponentIndentation: options.pugSingleFileComponentIndentation && options.embeddedInHtml

@@ -34,2 +36,2 @@ };

exports.convergeOptions = convergeOptions;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3B0aW9ucy9jb252ZXJnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFTQSxTQUFnQixlQUFlLENBQUMsT0FBeUM7O0lBQ3hFLE9BQU87UUFDTixVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVU7UUFDOUIsYUFBYSxFQUFFLE9BQU8sQ0FBQyxhQUFhLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVO1FBQ3hGLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVztRQUNoQyxjQUFjLFFBQUUsT0FBTyxDQUFDLGNBQWMsbUNBQUksT0FBTyxDQUFDLFdBQVc7UUFDN0QsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO1FBQzFCLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUTtRQUNoRixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87UUFDeEIsVUFBVSxRQUFFLE9BQU8sQ0FBQyxVQUFVLG1DQUFJLE9BQU8sQ0FBQyxPQUFPO1FBQ2pELGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztRQUN0QyxpQkFBaUIsUUFBRSxPQUFPLENBQUMsaUJBQWlCLG1DQUFJLE9BQU8sQ0FBQyxjQUFjO1FBQ3RFLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVztRQUNoQyxjQUFjLFFBQUUsT0FBTyxDQUFDLGNBQWMsbUNBQUksT0FBTyxDQUFDLFdBQVc7UUFDN0QsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1FBQ2xCLE9BQU8sUUFBRSxPQUFPLENBQUMsT0FBTyxtQ0FBSSxPQUFPLENBQUMsSUFBSTtRQUN4QyxrQkFBa0IsUUFBRSxPQUFPLENBQUMscUJBQXFCLG1DQUFJLE9BQU8sQ0FBQyxrQkFBa0I7UUFDL0Usc0JBQXNCLFFBQUUsT0FBTyxDQUFDLHlCQUF5QixtQ0FBSSxPQUFPLENBQUMsc0JBQXNCO1FBQzNGLHFCQUFxQixRQUFFLE9BQU8sQ0FBQyx3QkFBd0IsbUNBQUksT0FBTyxDQUFDLHFCQUFxQjtRQUN4RixpQkFBaUIsRUFBRSxPQUFPLENBQUMsaUJBQWlCO1FBQzVDLDBCQUEwQixFQUFFLE9BQU8sQ0FBQywwQkFBMEI7UUFDOUQsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLG9CQUFvQjtRQUNsRCwwQkFBMEIsRUFBRSxPQUFPLENBQUMsMEJBQTBCO1FBQzlELHdCQUF3QixFQUFFLE9BQU8sQ0FBQyx3QkFBd0I7UUFDMUQsaUNBQWlDLEVBQUUsT0FBTyxDQUFDLGlDQUFpQyxJQUFJLE9BQU8sQ0FBQyxjQUFjO0tBQ3RHLENBQUM7QUFDSCxDQUFDO0FBMUJELDBDQTBCQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3B0aW9ucy9jb252ZXJnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFTQSxTQUFnQixlQUFlLENBQUMsT0FBeUM7O0lBQ3hFLE9BQU87UUFDTixVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVU7UUFDOUIsYUFBYSxFQUFFLE9BQU8sQ0FBQyxhQUFhLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVO1FBQ3hGLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVztRQUNoQyxjQUFjLFFBQUUsT0FBTyxDQUFDLGNBQWMsbUNBQUksT0FBTyxDQUFDLFdBQVc7UUFDN0QsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO1FBQzFCLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUTtRQUNoRixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87UUFDeEIsVUFBVSxRQUFFLE9BQU8sQ0FBQyxVQUFVLG1DQUFJLE9BQU8sQ0FBQyxPQUFPO1FBQ2pELGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztRQUN0QyxpQkFBaUIsUUFBRSxPQUFPLENBQUMsaUJBQWlCLG1DQUFJLE9BQU8sQ0FBQyxjQUFjO1FBQ3RFLFdBQVcsRUFBRSxPQUFPLENBQUMsV0FBVztRQUNoQyxjQUFjLFFBQUUsT0FBTyxDQUFDLGNBQWMsbUNBQUksT0FBTyxDQUFDLFdBQVc7UUFDN0QsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1FBQ2xCLE9BQU8sUUFBRSxPQUFPLENBQUMsT0FBTyxtQ0FBSSxPQUFPLENBQUMsSUFBSTtRQUN4QyxrQkFBa0IsUUFBRSxPQUFPLENBQUMscUJBQXFCLG1DQUFJLE9BQU8sQ0FBQyxrQkFBa0I7UUFDL0Usc0JBQXNCLFFBQUUsT0FBTyxDQUFDLHlCQUF5QixtQ0FBSSxPQUFPLENBQUMsc0JBQXNCO1FBQzNGLHFCQUFxQixRQUFFLE9BQU8sQ0FBQyx3QkFBd0IsbUNBQUksT0FBTyxDQUFDLHFCQUFxQjtRQUN4RixpQkFBaUIsRUFBRSxPQUFPLENBQUMsaUJBQWlCO1FBQzVDLDBCQUEwQixFQUFFLE9BQU8sQ0FBQywwQkFBMEI7UUFDOUQsb0JBQW9CLEVBQUUsT0FBTyxDQUFDLG9CQUFvQjtRQUNsRCwwQkFBMEIsRUFBRSxPQUFPLENBQUMsMEJBQTBCO1FBQzlELHdCQUF3QixFQUFFLE9BQU8sQ0FBQyx3QkFBd0I7UUFDMUQsa0JBQWtCLEVBQUUsT0FBTyxDQUFDLGtCQUFrQjtRQUM5Qyw2QkFBNkIsRUFBRSxPQUFPLENBQUMsNkJBQTZCO1FBQ3BFLGlDQUFpQyxFQUFFLE9BQU8sQ0FBQyxpQ0FBaUMsSUFBSSxPQUFPLENBQUMsY0FBYztLQUN0RyxDQUFDO0FBQ0gsQ0FBQztBQTVCRCwwQ0E0QkMifQ==

@@ -9,2 +9,3 @@ "use strict";

const common_1 = require("./common");
const empty_attributes_1 = require("./empty-attributes");
const pug_single_file_component_indentation_1 = require("./pug-single-file-component-indentation");

@@ -32,4 +33,6 @@ const wrap_attributes_1 = require("./wrap-attributes");

pugWrapAttributesPattern: wrap_attributes_1.WRAP_ATTRIBUTES_PATTERN,
pugEmptyAttributes: empty_attributes_1.PUG_EMPTY_ATTRIBUTES_OPTION,
pugEmptyAttributesForceQuotes: empty_attributes_1.PUG_EMPTY_ATTRIBUTES_FORCE_QUOTES_OPTION,
pugSingleFileComponentIndentation: pug_single_file_component_indentation_1.PUG_SINGLE_FILE_COMPONENT_INDENTATION
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3B0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwrREFBdUg7QUFDdkgsMkRBSzZCO0FBQzdCLHlFQUlvQztBQUNwQyx1RUFJbUM7QUFDbkMscUNBU2tCO0FBQ2xCLG1HQUFnRztBQUNoRyx1REFBdUY7QUFLMUUsUUFBQSxZQUFZLEdBQVcsS0FBSyxDQUFDO0FBdUM3QixRQUFBLE9BQU8sR0FBbUI7SUFDdEMsYUFBYSxFQUFFLCtCQUFzQjtJQUNyQyxjQUFjLEVBQUUsZ0NBQXVCO0lBQ3ZDLFdBQVcsRUFBRSw2QkFBb0I7SUFDakMsVUFBVSxFQUFFLDRCQUFtQjtJQUMvQixpQkFBaUIsRUFBRSxtQ0FBMEI7SUFDN0MsY0FBYyxFQUFFLGdDQUF1QjtJQUN2QyxPQUFPLEVBQUUsd0JBQWU7SUFDeEIsa0JBQWtCLEVBQUUsZ0RBQTBCO0lBQzlDLHFCQUFxQixFQUFFLG9EQUE4QjtJQUNyRCxzQkFBc0IsRUFBRSwwREFBK0I7SUFDdkQseUJBQXlCLEVBQUUsOERBQW1DO0lBQzlELHFCQUFxQixFQUFFLHdEQUE4QjtJQUNyRCx3QkFBd0IsRUFBRSw0REFBa0M7SUFDNUQsaUJBQWlCLEVBQUUsOENBQTBCO0lBQzdDLDBCQUEwQixFQUFFLHdEQUFvQztJQUNoRSxvQkFBb0IsRUFBRSxrREFBOEI7SUFDcEQsMEJBQTBCLEVBQUUsMkNBQXlCO0lBQ3JELHdCQUF3QixFQUFFLHlDQUF1QjtJQUNqRCxpQ0FBaUMsRUFBRSw2RUFBcUM7Q0FDeEUsQ0FBQyJ9
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvb3B0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwrREFBdUg7QUFDdkgsMkRBSzZCO0FBQzdCLHlFQUlvQztBQUNwQyx1RUFJbUM7QUFDbkMscUNBU2tCO0FBQ2xCLHlEQUs0QjtBQUM1QixtR0FBZ0c7QUFDaEcsdURBQXVGO0FBSzFFLFFBQUEsWUFBWSxHQUFXLEtBQUssQ0FBQztBQTBDN0IsUUFBQSxPQUFPLEdBQW1CO0lBQ3RDLGFBQWEsRUFBRSwrQkFBc0I7SUFDckMsY0FBYyxFQUFFLGdDQUF1QjtJQUN2QyxXQUFXLEVBQUUsNkJBQW9CO0lBQ2pDLFVBQVUsRUFBRSw0QkFBbUI7SUFDL0IsaUJBQWlCLEVBQUUsbUNBQTBCO0lBQzdDLGNBQWMsRUFBRSxnQ0FBdUI7SUFDdkMsT0FBTyxFQUFFLHdCQUFlO0lBQ3hCLGtCQUFrQixFQUFFLGdEQUEwQjtJQUM5QyxxQkFBcUIsRUFBRSxvREFBOEI7SUFDckQsc0JBQXNCLEVBQUUsMERBQStCO0lBQ3ZELHlCQUF5QixFQUFFLDhEQUFtQztJQUM5RCxxQkFBcUIsRUFBRSx3REFBOEI7SUFDckQsd0JBQXdCLEVBQUUsNERBQWtDO0lBQzVELGlCQUFpQixFQUFFLDhDQUEwQjtJQUM3QywwQkFBMEIsRUFBRSx3REFBb0M7SUFDaEUsb0JBQW9CLEVBQUUsa0RBQThCO0lBQ3BELDBCQUEwQixFQUFFLDJDQUF5QjtJQUNyRCx3QkFBd0IsRUFBRSx5Q0FBdUI7SUFDakQsa0JBQWtCLEVBQUUsOENBQTJCO0lBQy9DLDZCQUE2QixFQUFFLDJEQUF3QztJQUN2RSxpQ0FBaUMsRUFBRSw2RUFBcUM7Q0FDeEUsQ0FBQyJ9
{
"name": "@prettier/plugin-pug",
"version": "1.9.0",
"version": "1.10.0",
"description": "Prettier Pug Plugin",

@@ -39,12 +39,12 @@ "main": "dist/index.js",

"devDependencies": {
"@types/jest": "~26.0.14",
"@types/node": "~14.11.10",
"@types/jest": "~26.0.15",
"@types/node": "~14.14.2",
"@types/prettier": "~2.1.5",
"@typescript-eslint/eslint-plugin": "~4.4.1",
"@typescript-eslint/parser": "~4.4.1",
"@typescript-eslint/eslint-plugin": "~4.5.0",
"@typescript-eslint/parser": "~4.5.0",
"benchmark": "~2.1.4",
"eslint": "~7.11.0",
"eslint-config-prettier": "~6.13.0",
"eslint-config-prettier": "~6.14.0",
"eslint-plugin-prettier": "~3.1.4",
"jest": "~26.5.3",
"jest": "~26.6.1",
"jest-junit": "~12.0.0",

@@ -51,0 +51,0 @@ "prettier": "2.1.2",

@@ -245,2 +245,17 @@ <p align="center">

- `pugEmptyAttributes`
Change behavior of boolean attributes.
Choices:
- `'as-is'` _default_ -> Nothing is changed.
Example: `foo(a, b="", c)`
- `'none'` -> Every attribute with empty quotes will have them removed.
Example: `foo(a, b, c)`
- `'all'` -> Every boolean attribute will be expressed with empty quotes.
Example: `foo(a="", b="", c="")`
- `pugEmptyAttributesForceQuotes`
Define a list of patterns for attributes that will be forced to have empty quotes even with "none" selected.
## Some workarounds

@@ -247,0 +262,0 @@

@@ -34,4 +34,6 @@ import { ParserOptions } from 'prettier';

pugWrapAttributesPattern: options.pugWrapAttributesPattern,
pugEmptyAttributes: options.pugEmptyAttributes,
pugEmptyAttributesForceQuotes: options.pugEmptyAttributesForceQuotes,
pugSingleFileComponentIndentation: options.pugSingleFileComponentIndentation && options.embeddedInHtml
};
}

@@ -29,2 +29,8 @@ import { ParserOptions, SupportOptions } from 'prettier';

} from './common';
import {
PugEmptyAttributes,
PugEmptyAttributesForceQuotes,
PUG_EMPTY_ATTRIBUTES_FORCE_QUOTES_OPTION,
PUG_EMPTY_ATTRIBUTES_OPTION
} from './empty-attributes';
import { PUG_SINGLE_FILE_COMPONENT_INDENTATION } from './pug-single-file-component-indentation';

@@ -72,2 +78,5 @@ import { WRAP_ATTRIBUTES_PATTERN, WRAP_ATTRIBUTES_THRESHOLD } from './wrap-attributes';

pugEmptyAttributes: PugEmptyAttributes;
pugEmptyAttributesForceQuotes: PugEmptyAttributesForceQuotes;
pugSingleFileComponentIndentation: boolean;

@@ -95,3 +104,5 @@ }

pugWrapAttributesPattern: WRAP_ATTRIBUTES_PATTERN,
pugEmptyAttributes: PUG_EMPTY_ATTRIBUTES_OPTION,
pugEmptyAttributesForceQuotes: PUG_EMPTY_ATTRIBUTES_FORCE_QUOTES_OPTION,
pugSingleFileComponentIndentation: PUG_SINGLE_FILE_COMPONENT_INDENTATION
};

@@ -58,2 +58,4 @@ import { format, RequiredOptions } from 'prettier';

import { ArrowParens } from './options/common';
import { PugEmptyAttributes, PugEmptyAttributesForceQuotes } from './options/empty-attributes';
import { formatEmptyAttribute } from './options/empty-attributes/utils';
import { isAngularAction, isAngularBinding, isAngularDirective, isAngularInterpolation } from './utils/angular';

@@ -98,2 +100,4 @@ import {

readonly pugWrapAttributesPattern: string;
readonly pugEmptyAttributes: PugEmptyAttributes;
readonly pugEmptyAttributesForceQuotes: PugEmptyAttributesForceQuotes;
readonly pugSingleFileComponentIndentation: boolean;

@@ -350,8 +354,14 @@ }

'[PugPrinter:formatText]: Bindings should not contain assignments:',
code.trim()
`code: \`${code.trim()}\``
);
} else if (error.includes("Unexpected token '('")) {
logger.warn(
"[PugPrinter:formatText]: Found unexpected token '('. If you are using Vue, you can ignore this message."
"[PugPrinter:formatText]: Found unexpected token '('. If you are using Vue, you can ignore this message.",
`code: \`${code.trim()}\``
);
} else if (error.includes('Missing expected )')) {
logger.warn(
'[PugPrinter:formatText]: Missing expected ). If you are using Vue, you can ignore this message.',
`code: \`${code.trim()}\``
);
} else {

@@ -569,2 +579,4 @@ logger.warn('[PugPrinter:formatText]: ', error);

private attribute(token: AttributeToken): void {
formatEmptyAttribute(token, this.options.pugEmptyAttributes, this.options.pugEmptyAttributesForceQuotes);
if (typeof token.val === 'string') {

@@ -571,0 +583,0 @@ if (isQuoted(token.val)) {

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc