Skip to content

Commit 702dd43

Browse files
authored
Merge pull request #191 from ember-template-lint/esm-v4
Convert to ESM for ember-template-lint v4
2 parents 9d40641 + 53710e7 commit 702dd43

9 files changed

Lines changed: 511 additions & 459 deletions

File tree

.eslintrc.js renamed to .eslintrc.cjs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@ module.exports = {
55
"plugin:node/recommended",
66
"plugin:prettier/recommended",
77
],
8+
parserOptions: {
9+
ecmaVersion: 2021,
10+
sourceType: "module",
11+
},
812
plugins: ["prettier"],
913
env: {
1014
node: true,

ember-template-lint-plugin-prettier.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
const PrettierRule = require("./lib/rules/prettier");
1+
import PrettierRule from "./lib/rules/prettier.js";
2+
import recommended from "./lib/config/recommended.js";
23

3-
module.exports = {
4+
export default {
45
name: "ember-template-lint-plugin-prettier",
56

67
configurations: {
78
recommended: {
8-
rules: require("./lib/config/recommended"),
9+
rules: recommended,
910
},
1011
},
1112

lib/config/recommended.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
"use strict";
2-
3-
module.exports = {
1+
export default {
42
prettier: true,
53
// ember-template-lint stylistic rules
64
"block-indentation": false,

lib/rules/prettier.js

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,21 @@
1-
"use strict";
1+
import { showInvisibles, generateDifferences } from "prettier-linter-helpers";
22

3-
const {
4-
showInvisibles,
5-
generateDifferences,
6-
} = require("prettier-linter-helpers");
3+
import getLocFromIndex from "../utils/get-loc-from-index.js";
4+
import { createRequire } from "node:module";
75

8-
const getLocFromIndex = require("../utils/get-loc-from-index");
6+
const require = createRequire(import.meta.url);
97

108
const { INSERT, DELETE, REPLACE } = generateDifferences;
119

1210
let prettier;
1311

14-
const { Rule, recast } = require("ember-template-lint");
12+
import { Rule, recast } from "ember-template-lint";
1513

1614
function isFile(loc) {
1715
return loc.start && loc.start.line === 1 && loc.start.column === 0;
1816
}
1917

20-
module.exports = class Prettier extends Rule {
18+
export default class Prettier extends Rule {
2119
constructor(options) {
2220
super(options);
2321
this.filePath = options.filePath;
@@ -154,4 +152,4 @@ module.exports = class Prettier extends Rule {
154152
},
155153
};
156154
}
157-
};
155+
}

lib/utils/get-loc-from-index.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
module.exports = function getLocFromIndex(index, lines) {
1+
export default function getLocFromIndex(index, lines) {
22
// pop potential final newline
33
// indeed, we won't display a message on this character
44
// but instead on the previous one
@@ -38,4 +38,4 @@ module.exports = function getLocFromIndex(index, lines) {
3838
}
3939

4040
return { line, column };
41-
};
41+
}

package.json

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@
1313
"repository": "[email protected]:ember-template-lint/ember-template-lint-plugin-prettier.git",
1414
"license": "Apache-2.0",
1515
"author": "Cyrille David <'[email protected]'>",
16-
"main": "ember-template-lint-plugin-prettier.js",
16+
"main": "./ember-template-lint-plugin-prettier.js",
17+
"exports": "./ember-template-lint-plugin-prettier.js",
18+
"type": "module",
1719
"files": [
1820
"ember-template-lint-plugin-prettier.js",
1921
"lib",
@@ -31,7 +33,7 @@
3133
"prettier-linter-helpers": "^1.0.0"
3234
},
3335
"devDependencies": {
34-
"ember-template-lint": "^4.0.0-beta.0",
36+
"ember-template-lint": "^4.0.0-beta.3",
3537
"eslint": "^8.2.0",
3638
"eslint-config-prettier": "^8.3.0",
3739
"eslint-plugin-node": "^11.0.0",
@@ -49,7 +51,7 @@
4951
"prettier": ">=1.18.1"
5052
},
5153
"engines": {
52-
"node": "12.* || 14.* || >= 16.*"
54+
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
5355
},
5456
"publishConfig": {
5557
"registry": "https://registry.npmjs.org"
@@ -70,7 +72,7 @@
7072
}
7173
},
7274
"volta": {
73-
"node": "12.22.7",
75+
"node": "16.13.1",
7476
"yarn": "1.22.17"
7577
}
7678
}

test/unit/rules/lint-prettier-test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
const { generateRuleTests } = require("ember-template-lint");
2-
const plugin = require("../../../ember-template-lint-plugin-prettier");
1+
import { generateRuleTests } from "ember-template-lint";
2+
import plugin from "../../../ember-template-lint-plugin-prettier.js";
33

44
generateRuleTests({
55
name: "prettier",

test/unit/utils/get-loc-from-index-test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/* eslint node/no-deprecated-api: 'off' */
2-
const assert = require("assert");
3-
const getLocFromIndex = require("../../../lib/utils/get-loc-from-index");
2+
import assert from "node:assert";
3+
import getLocFromIndex from "../../../lib/utils/get-loc-from-index.js";
44

55
describe("getLocFromIndex()", function () {
66
describe("when end-of-file === newline", function () {

0 commit comments

Comments
 (0)