worsier 3.1.0 → 3.2.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.
@@ -31,7 +31,10 @@
31
31
  "semicolons": {
32
32
  "classMembers": "asNeeded",
33
33
  "statements": "asNeeded",
34
- "typeMembers": "always"
34
+ "typeMembers": {
35
+ "multiline": "always",
36
+ "singleLine": "asNeeded"
37
+ }
35
38
  },
36
39
  "statementSpacing": {
37
40
  "controlFlowStatements": "separate",
@@ -90,7 +93,10 @@
90
93
  "default": {
91
94
  "classMembers": "asNeeded",
92
95
  "statements": "asNeeded",
93
- "typeMembers": "always"
96
+ "typeMembers": {
97
+ "multiline": "always",
98
+ "singleLine": "asNeeded"
99
+ }
94
100
  }
95
101
  },
96
102
  "statementSpacing": {
@@ -123,8 +129,11 @@
123
129
  "default": "asNeeded"
124
130
  },
125
131
  "typeMembers": {
126
- "$ref": "#/$defs/SemicolonMode",
127
- "default": "always"
132
+ "$ref": "#/$defs/TypeMemberSemicolonRule",
133
+ "default": {
134
+ "multiline": "always",
135
+ "singleLine": "asNeeded"
136
+ }
128
137
  }
129
138
  },
130
139
  "additionalProperties": false
@@ -182,6 +191,30 @@
182
191
  "never",
183
192
  "off"
184
193
  ]
194
+ },
195
+ "TypeMemberSemicolonConfig": {
196
+ "type": "object",
197
+ "properties": {
198
+ "multiline": {
199
+ "$ref": "#/$defs/SemicolonMode",
200
+ "default": "always"
201
+ },
202
+ "singleLine": {
203
+ "$ref": "#/$defs/SemicolonMode",
204
+ "default": "asNeeded"
205
+ }
206
+ },
207
+ "additionalProperties": false
208
+ },
209
+ "TypeMemberSemicolonRule": {
210
+ "anyOf": [
211
+ {
212
+ "$ref": "#/$defs/SemicolonMode"
213
+ },
214
+ {
215
+ "$ref": "#/$defs/TypeMemberSemicolonConfig"
216
+ }
217
+ ]
185
218
  }
186
219
  }
187
220
  }
package/dist/types.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export type InterfaceLayoutMode = 'off';
2
+ export type SemicolonMode = 'always' | 'asNeeded' | 'off';
2
3
  export interface FormatConfig {
3
4
  $schema?: string | null;
4
5
  ignorePatterns?: string[];
@@ -17,7 +18,11 @@ export interface RulesConfig {
17
18
  export interface SemicolonConfig {
18
19
  classMembers?: 'always' | 'asNeeded' | 'off';
19
20
  statements?: 'always' | 'asNeeded' | 'off';
20
- typeMembers?: 'always' | 'asNeeded' | 'off';
21
+ typeMembers?: SemicolonMode | TypeMemberSemicolonConfig;
22
+ }
23
+ export interface TypeMemberSemicolonConfig {
24
+ multiline?: 'always' | 'asNeeded' | 'off';
25
+ singleLine?: 'always' | 'asNeeded' | 'off';
21
26
  }
22
27
  export interface StatementSpacingConfig {
23
28
  controlFlowStatements?: 'separate' | 'compact' | 'off';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "worsier",
3
- "version": "3.1.0",
3
+ "version": "3.2.0",
4
4
  "description": "A focused JavaScript, TypeScript, and Vue SFC script formatter powered by Rust",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -49,17 +49,17 @@
49
49
  ]
50
50
  },
51
51
  "optionalDependencies": {
52
- "worsier-darwin-arm64": "3.1.0",
53
- "worsier-win32-arm64-msvc": "3.1.0",
54
- "worsier-linux-arm64-gnu": "3.1.0",
55
- "worsier-linux-arm64-musl": "3.1.0",
56
- "worsier-darwin-x64": "3.1.0",
57
- "worsier-win32-x64-msvc": "3.1.0",
58
- "worsier-linux-x64-gnu": "3.1.0",
59
- "worsier-linux-x64-musl": "3.1.0"
52
+ "worsier-darwin-arm64": "3.2.0",
53
+ "worsier-win32-arm64-msvc": "3.2.0",
54
+ "worsier-linux-arm64-gnu": "3.2.0",
55
+ "worsier-linux-arm64-musl": "3.2.0",
56
+ "worsier-darwin-x64": "3.2.0",
57
+ "worsier-win32-x64-msvc": "3.2.0",
58
+ "worsier-linux-x64-gnu": "3.2.0",
59
+ "worsier-linux-x64-musl": "3.2.0"
60
60
  },
61
61
  "devDependencies": {
62
- "@types/node": "26.2.0",
62
+ "@types/node": "26.4.0",
63
63
  "typescript": "7.0.2"
64
64
  }
65
65
  }