@alloy-js/csharp 0.23.0-dev.8 → 0.24.0-dev.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/CHANGELOG.md +19 -0
- package/dist/dev/src/components/method/method.test.js +64 -0
- package/dist/dev/src/components/method/method.test.js.map +1 -1
- package/dist/dev/src/components/namespace/namespace.js +2 -1
- package/dist/dev/src/components/namespace/namespace.js.map +1 -1
- package/dist/dev/src/components/namespace/namespace.test.js +13 -10
- package/dist/dev/src/components/namespace/namespace.test.js.map +1 -1
- package/dist/dev/src/components/namespace.ref.test.js +54 -42
- package/dist/dev/src/components/namespace.ref.test.js.map +1 -1
- package/dist/dev/src/components/property/property.js +101 -24
- package/dist/dev/src/components/property/property.js.map +1 -1
- package/dist/dev/src/components/property/property.test.js +140 -0
- package/dist/dev/src/components/property/property.test.js.map +1 -1
- package/dist/dev/src/components/source-file/source-file.js +12 -11
- package/dist/dev/src/components/source-file/source-file.js.map +1 -1
- package/dist/dev/src/identifier-utils.js +45 -0
- package/dist/dev/src/identifier-utils.js.map +1 -0
- package/dist/dev/src/index.js +2 -0
- package/dist/dev/src/index.js.map +1 -1
- package/dist/dev/src/keywords.js +39 -0
- package/dist/dev/src/keywords.js.map +1 -0
- package/dist/dev/src/name-policy.js +29 -6
- package/dist/dev/src/name-policy.js.map +1 -1
- package/dist/dev/src/name-policy.test.js +167 -0
- package/dist/dev/src/name-policy.test.js.map +1 -0
- package/dist/src/components/method/method.test.js +48 -0
- package/dist/src/components/method/method.test.js.map +1 -1
- package/dist/src/components/namespace/namespace.js +2 -1
- package/dist/src/components/namespace/namespace.js.map +1 -1
- package/dist/src/components/namespace/namespace.test.js +6 -3
- package/dist/src/components/namespace/namespace.test.js.map +1 -1
- package/dist/src/components/namespace.ref.test.js +24 -12
- package/dist/src/components/namespace.ref.test.js.map +1 -1
- package/dist/src/components/property/property.d.ts +42 -4
- package/dist/src/components/property/property.d.ts.map +1 -1
- package/dist/src/components/property/property.js +64 -11
- package/dist/src/components/property/property.js.map +1 -1
- package/dist/src/components/property/property.test.js +104 -0
- package/dist/src/components/property/property.test.js.map +1 -1
- package/dist/src/components/source-file/source-file.d.ts.map +1 -1
- package/dist/src/components/source-file/source-file.js +3 -2
- package/dist/src/components/source-file/source-file.js.map +1 -1
- package/dist/src/identifier-utils.d.ts +22 -0
- package/dist/src/identifier-utils.d.ts.map +1 -0
- package/dist/src/identifier-utils.js +45 -0
- package/dist/src/identifier-utils.js.map +1 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/keywords.d.ts +32 -0
- package/dist/src/keywords.d.ts.map +1 -0
- package/dist/src/keywords.js +39 -0
- package/dist/src/keywords.js.map +1 -0
- package/dist/src/name-policy.d.ts +7 -0
- package/dist/src/name-policy.d.ts.map +1 -1
- package/dist/src/name-policy.js +29 -6
- package/dist/src/name-policy.js.map +1 -1
- package/dist/src/name-policy.test.d.ts +2 -0
- package/dist/src/name-policy.test.d.ts.map +1 -0
- package/dist/src/name-policy.test.js +167 -0
- package/dist/src/name-policy.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/docs/api/components/Property.md +30 -30
- package/docs/api/contexts/csharp-context.md +21 -0
- package/docs/api/contexts/index.md +3 -0
- package/docs/api/functions/createCSharpNamePolicy.md +4 -0
- package/docs/api/functions/index.md +5 -1
- package/docs/api/functions/isCSharpContextualKeyword.md +20 -0
- package/docs/api/functions/isCSharpKeyword.md +22 -0
- package/docs/api/functions/isValidCSharpIdentifier.md +20 -0
- package/docs/api/functions/sanitizeCSharpIdentifier.md +24 -0
- package/docs/api/index.md +3 -2
- package/docs/api/variables/csharpKeywords.md +11 -0
- package/docs/api/variables/index.md +1 -0
- package/package.json +6 -6
- package/src/components/method/method.test.tsx +36 -0
- package/src/components/namespace/namespace.test.tsx +6 -3
- package/src/components/namespace/namespace.tsx +2 -2
- package/src/components/namespace.ref.test.tsx +24 -12
- package/src/components/property/property.test.tsx +89 -0
- package/src/components/property/property.tsx +111 -16
- package/src/components/source-file/source-file.tsx +1 -4
- package/src/identifier-utils.ts +45 -0
- package/src/index.ts +2 -0
- package/src/keywords.ts +162 -0
- package/src/name-policy.test.ts +210 -0
- package/src/name-policy.ts +30 -6
- package/temp/api.json +253 -7
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createComponent as _$createComponent, memo as _$memo, createIntrinsic as _$createIntrinsic } from "@alloy-js/core/jsx-runtime";
|
|
2
|
-
import { createSymbolSlot, List, MemberDeclaration, MemberName } from "@alloy-js/core";
|
|
2
|
+
import { Block, createSymbolSlot, List, MemberDeclaration, MemberName } from "@alloy-js/core";
|
|
3
3
|
import { computeModifiersPrefix, getAccessModifier, makeModifiers } from "../../modifiers.js";
|
|
4
4
|
import { createPropertySymbol } from "../../symbols/factories.js";
|
|
5
5
|
import { AttributeList } from "../attributes/attributes.js";
|
|
@@ -31,7 +31,7 @@ export function Property(props) {
|
|
|
31
31
|
if (props.init && props.set) {
|
|
32
32
|
throw new Error(`Cannot use 'init' and 'set' together on property '${name}'`);
|
|
33
33
|
}
|
|
34
|
-
|
|
34
|
+
const hasAccessorBody = props.get && props.get !== true || props.set && props.set !== true;
|
|
35
35
|
return _$createComponent(MemberDeclaration, {
|
|
36
36
|
symbol: propertySymbol,
|
|
37
37
|
get children() {
|
|
@@ -48,28 +48,81 @@ export function Property(props) {
|
|
|
48
48
|
get children() {
|
|
49
49
|
return props.type;
|
|
50
50
|
}
|
|
51
|
-
}), _$memo(() => props.nullable && "?"), " ", _$createComponent(MemberName, {}),
|
|
51
|
+
}), _$memo(() => props.nullable && "?"), " ", _$createComponent(MemberName, {}), _$memo(() => hasAccessorBody ? _$createComponent(AccessorBlock, {
|
|
52
|
+
get get() {
|
|
53
|
+
return props.get;
|
|
54
|
+
},
|
|
55
|
+
get set() {
|
|
56
|
+
return props.set;
|
|
57
|
+
},
|
|
58
|
+
get init() {
|
|
59
|
+
return props.init;
|
|
60
|
+
}
|
|
61
|
+
}) : _$createComponent(AutoAccessors, {
|
|
62
|
+
get get() {
|
|
63
|
+
return props.get;
|
|
64
|
+
},
|
|
65
|
+
get set() {
|
|
66
|
+
return props.set;
|
|
67
|
+
},
|
|
68
|
+
get init() {
|
|
69
|
+
return props.init;
|
|
70
|
+
},
|
|
71
|
+
get initializer() {
|
|
72
|
+
return props.initializer;
|
|
73
|
+
}
|
|
74
|
+
}))];
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
function AutoAccessors(props) {
|
|
79
|
+
return _$createIntrinsic("group", {
|
|
80
|
+
get children() {
|
|
81
|
+
return [" ", "{ ", _$createComponent(List, {
|
|
52
82
|
joiner: " ",
|
|
53
83
|
get children() {
|
|
54
84
|
return [_$memo(() => props.get && "get;"), _$memo(() => props.set && "set;"), _$memo(() => props.init && "init;")];
|
|
55
85
|
}
|
|
56
|
-
}), " }", _$memo(() => _$memo(() => !!props.initializer)() && _$
|
|
86
|
+
}), " }", _$memo(() => _$memo(() => !!props.initializer)() && [" =", _$createIntrinsic("indent", {
|
|
57
87
|
get children() {
|
|
58
|
-
return props.initializer;
|
|
88
|
+
return [_$createIntrinsic("line", {}), _$memo(() => props.initializer), ";"];
|
|
59
89
|
}
|
|
60
|
-
}))];
|
|
90
|
+
})])];
|
|
61
91
|
}
|
|
62
92
|
});
|
|
63
93
|
}
|
|
64
|
-
function
|
|
65
|
-
return _$
|
|
94
|
+
function AccessorBlock(props) {
|
|
95
|
+
return _$createComponent(Block, {
|
|
96
|
+
newline: true,
|
|
66
97
|
get children() {
|
|
67
|
-
return
|
|
98
|
+
return _$createComponent(List, {
|
|
99
|
+
hardline: true,
|
|
68
100
|
get children() {
|
|
69
|
-
return [_$
|
|
101
|
+
return [_$memo(() => _$memo(() => !!props.get)() && _$createComponent(Accessor, {
|
|
102
|
+
keyword: "get",
|
|
103
|
+
get body() {
|
|
104
|
+
return props.get;
|
|
105
|
+
}
|
|
106
|
+
})), _$memo(() => _$memo(() => !!props.set)() && _$createComponent(Accessor, {
|
|
107
|
+
keyword: "set",
|
|
108
|
+
get body() {
|
|
109
|
+
return props.set;
|
|
110
|
+
}
|
|
111
|
+
})), _$memo(() => props.init && "init;")];
|
|
70
112
|
}
|
|
71
|
-
})
|
|
113
|
+
});
|
|
72
114
|
}
|
|
73
115
|
});
|
|
74
116
|
}
|
|
117
|
+
function Accessor(props) {
|
|
118
|
+
if (props.body === true) {
|
|
119
|
+
return [_$memo(() => props.keyword), ";"];
|
|
120
|
+
}
|
|
121
|
+
return [_$memo(() => props.keyword), " ", _$createComponent(Block, {
|
|
122
|
+
inline: true,
|
|
123
|
+
get children() {
|
|
124
|
+
return props.body;
|
|
125
|
+
}
|
|
126
|
+
})];
|
|
127
|
+
}
|
|
75
128
|
//# sourceMappingURL=property.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createSymbolSlot","List","MemberDeclaration","MemberName","computeModifiersPrefix","getAccessModifier","makeModifiers","createPropertySymbol","AttributeList","DocWhen","getModifiers","Property","props","TypeSlot","propertySymbol","name","refkeys","refkey","isNullable","nullable","type","firstSymbol","modifiers","init","set","Error","_$createComponent","symbol","children","doc","attributes","endline","_$memo","
|
|
1
|
+
{"version":3,"names":["Block","createSymbolSlot","List","MemberDeclaration","MemberName","computeModifiersPrefix","getAccessModifier","makeModifiers","createPropertySymbol","AttributeList","DocWhen","getModifiers","Property","props","TypeSlot","propertySymbol","name","refkeys","refkey","isNullable","nullable","type","firstSymbol","modifiers","init","set","Error","hasAccessorBody","get","_$createComponent","symbol","children","doc","attributes","endline","_$memo","AccessorBlock","AutoAccessors","initializer","_$createIntrinsic","joiner","newline","hardline","Accessor","keyword","body","inline"],"sources":["../../../../src/components/property/property.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -268,4 +268,108 @@ describe("format", () => {
|
|
|
268
268
|
`);
|
|
269
269
|
});
|
|
270
270
|
});
|
|
271
|
+
describe("accessor bodies", () => {
|
|
272
|
+
it("renders get with body", () => {
|
|
273
|
+
expect(_$createComponent(Wrapper, {
|
|
274
|
+
get children() {
|
|
275
|
+
return _$createComponent(Property, {
|
|
276
|
+
"public": true,
|
|
277
|
+
name: "Name",
|
|
278
|
+
type: "string",
|
|
279
|
+
get get() {
|
|
280
|
+
return ["return _name;"];
|
|
281
|
+
}
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
})).toRenderTo(`
|
|
285
|
+
public class TestClass
|
|
286
|
+
{
|
|
287
|
+
public string Name
|
|
288
|
+
{
|
|
289
|
+
get { return _name; }
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
`);
|
|
293
|
+
});
|
|
294
|
+
it("renders set with body", () => {
|
|
295
|
+
expect(_$createComponent(Wrapper, {
|
|
296
|
+
get children() {
|
|
297
|
+
return _$createComponent(Property, {
|
|
298
|
+
"public": true,
|
|
299
|
+
name: "Value",
|
|
300
|
+
type: "int",
|
|
301
|
+
get: true,
|
|
302
|
+
get set() {
|
|
303
|
+
return ["_value = value;"];
|
|
304
|
+
}
|
|
305
|
+
});
|
|
306
|
+
}
|
|
307
|
+
})).toRenderTo(`
|
|
308
|
+
public class TestClass
|
|
309
|
+
{
|
|
310
|
+
public int Value
|
|
311
|
+
{
|
|
312
|
+
get;
|
|
313
|
+
set { _value = value; }
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
`);
|
|
317
|
+
});
|
|
318
|
+
it("renders both get and set with bodies", () => {
|
|
319
|
+
expect(_$createComponent(Wrapper, {
|
|
320
|
+
get children() {
|
|
321
|
+
return _$createComponent(Property, {
|
|
322
|
+
"public": true,
|
|
323
|
+
name: "MinValue",
|
|
324
|
+
type: "T",
|
|
325
|
+
get get() {
|
|
326
|
+
return ["return _minValue.HasValue ? _minValue.Value : default(T);"];
|
|
327
|
+
},
|
|
328
|
+
get set() {
|
|
329
|
+
return ["_minValue = value;"];
|
|
330
|
+
}
|
|
331
|
+
});
|
|
332
|
+
}
|
|
333
|
+
})).toRenderTo(`
|
|
334
|
+
public class TestClass
|
|
335
|
+
{
|
|
336
|
+
public T MinValue
|
|
337
|
+
{
|
|
338
|
+
get { return _minValue.HasValue ? _minValue.Value : default(T); }
|
|
339
|
+
set { _minValue = value; }
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
`);
|
|
343
|
+
});
|
|
344
|
+
it("breaks long accessor body across lines", () => {
|
|
345
|
+
expect(_$createComponent(TestNamespace, {
|
|
346
|
+
printWidth: 40,
|
|
347
|
+
get children() {
|
|
348
|
+
return _$createComponent(ClassDeclaration, {
|
|
349
|
+
name: "Test",
|
|
350
|
+
get children() {
|
|
351
|
+
return _$createComponent(Property, {
|
|
352
|
+
"public": true,
|
|
353
|
+
name: "Value",
|
|
354
|
+
type: "int",
|
|
355
|
+
get get() {
|
|
356
|
+
return ["return _someVeryLongFieldName;"];
|
|
357
|
+
}
|
|
358
|
+
});
|
|
359
|
+
}
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
})).toRenderTo(`
|
|
363
|
+
class Test
|
|
364
|
+
{
|
|
365
|
+
public int Value
|
|
366
|
+
{
|
|
367
|
+
get {
|
|
368
|
+
return _someVeryLongFieldName;
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
`);
|
|
373
|
+
});
|
|
374
|
+
});
|
|
271
375
|
//# sourceMappingURL=property.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["describe","expect","it","TestNamespace","Attribute","ClassDeclaration","Property","Wrapper","props","_$createComponent","children","name","each","accessModifier","_$mergeProps","type","get","toRenderTo","methodModifier","set","init","doc","nullable","initializer","attributes","printWidth"],"sources":["../../../../src/components/property/property.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["describe","expect","it","TestNamespace","Attribute","ClassDeclaration","Property","Wrapper","props","_$createComponent","children","name","each","accessModifier","_$mergeProps","type","get","toRenderTo","methodModifier","set","init","doc","nullable","initializer","attributes","printWidth"],"sources":["../../../../src/components/property/property.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source-file.d.ts","sourceRoot":"","sources":["../../../../src/components/source-file/source-file.tsx"],"names":[],"mappings":"AAKA,OAAO,EAEL,QAAQ,EAQT,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,mBAAmB,EAEpB,MAAM,kCAAkC,CAAC;AAM1C;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,mBAAmB;IAC1D,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IAEb,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAElB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,2GAA2G;AAC3G,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"source-file.d.ts","sourceRoot":"","sources":["../../../../src/components/source-file/source-file.tsx"],"names":[],"mappings":"AAKA,OAAO,EAEL,QAAQ,EAQT,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,mBAAmB,EAEpB,MAAM,kCAAkC,CAAC;AAM1C;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,mBAAmB;IAC1D,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IAEb,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAElB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,2GAA2G;AAC3G,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,YAwEhD"}
|
|
@@ -63,9 +63,10 @@ export function SourceFile(props) {
|
|
|
63
63
|
}
|
|
64
64
|
}), _$createIntrinsic("hbr", {}), _$createIntrinsic("hbr", {})]), _$memo(() => nsSymbol === globalNs ? content : ["namespace ", _$createComponent(NamespaceName, {
|
|
65
65
|
symbol: nsSymbol
|
|
66
|
-
}), _$memo(() => _$memo(() => !!sourceFileScope.hasBlockNamespace)() ?
|
|
66
|
+
}), _$memo(() => _$memo(() => !!sourceFileScope.hasBlockNamespace)() ? _$createComponent(Block, {
|
|
67
|
+
newline: true,
|
|
67
68
|
children: content
|
|
68
|
-
})
|
|
69
|
+
}) : [";", _$createIntrinsic("hbr", {}), _$createIntrinsic("hbr", {}), content])])];
|
|
69
70
|
}
|
|
70
71
|
});
|
|
71
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DocComment","NamespaceScopes","NamespaceName","Reference","Usings","Block","computed","SourceFile","CoreSourceFile","createScope","List","Scope","Show","useBinder","useCsharpFormatOptions","getGlobalNamespace","useNamespaceContext","CSharpSourceFileScope","props","binder","sourceFileScope","path","undefined","nsContext","globalNs","nsSymbol","symbol","usings","Array","from","concat","using","content","_$createComponent","children","opts","printWidth","tabWidth","useTabs","header","headerComment","SourceFileHeader","_$mergeProps","filetype","reference","value","_$memo","size","length","namespaces","_$createIntrinsic","hasBlockNamespace","when"],"sources":["../../../../src/components/source-file/source-file.tsx"],"sourcesContent":[null],"mappings":"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
|
|
1
|
+
{"version":3,"names":["DocComment","NamespaceScopes","NamespaceName","Reference","Usings","Block","computed","SourceFile","CoreSourceFile","createScope","List","Scope","Show","useBinder","useCsharpFormatOptions","getGlobalNamespace","useNamespaceContext","CSharpSourceFileScope","props","binder","sourceFileScope","path","undefined","nsContext","globalNs","nsSymbol","symbol","usings","Array","from","concat","using","content","_$createComponent","children","opts","printWidth","tabWidth","useTabs","header","headerComment","SourceFileHeader","_$mergeProps","filetype","reference","value","_$memo","size","length","namespaces","_$createIntrinsic","hasBlockNamespace","newline","when"],"sources":["../../../../src/components/source-file/source-file.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks whether the provided name is a valid C# identifier (without `@` prefix).
|
|
3
|
+
* Does not account for keyword conflicts — use {@link isCSharpKeyword} for that.
|
|
4
|
+
*
|
|
5
|
+
* @param name - The name to validate.
|
|
6
|
+
* @returns true if the name matches C# identifier rules (letter or underscore start, word chars after).
|
|
7
|
+
*/
|
|
8
|
+
export declare function isValidCSharpIdentifier(name: string): boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Transforms an arbitrary string into a valid C# identifier by replacing
|
|
11
|
+
* invalid characters. The result may still be a C# keyword — callers
|
|
12
|
+
* should combine with keyword escaping if needed.
|
|
13
|
+
*
|
|
14
|
+
* - If the first character is not a letter or underscore, a `_` prefix is added.
|
|
15
|
+
* - Subsequent non-word characters are replaced with `_`.
|
|
16
|
+
* - Empty strings become `_`.
|
|
17
|
+
*
|
|
18
|
+
* @param name - The string to sanitize.
|
|
19
|
+
* @returns A string that satisfies C# identifier character rules.
|
|
20
|
+
*/
|
|
21
|
+
export declare function sanitizeCSharpIdentifier(name: string): string;
|
|
22
|
+
//# sourceMappingURL=identifier-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identifier-utils.d.ts","sourceRoot":"","sources":["../../src/identifier-utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAqB7D"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks whether the provided name is a valid C# identifier (without `@` prefix).
|
|
3
|
+
* Does not account for keyword conflicts — use {@link isCSharpKeyword} for that.
|
|
4
|
+
*
|
|
5
|
+
* @param name - The name to validate.
|
|
6
|
+
* @returns true if the name matches C# identifier rules (letter or underscore start, word chars after).
|
|
7
|
+
*/
|
|
8
|
+
export function isValidCSharpIdentifier(name) {
|
|
9
|
+
return /^[A-Za-z_]\w*$/.test(name);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Transforms an arbitrary string into a valid C# identifier by replacing
|
|
14
|
+
* invalid characters. The result may still be a C# keyword — callers
|
|
15
|
+
* should combine with keyword escaping if needed.
|
|
16
|
+
*
|
|
17
|
+
* - If the first character is not a letter or underscore, a `_` prefix is added.
|
|
18
|
+
* - Subsequent non-word characters are replaced with `_`.
|
|
19
|
+
* - Empty strings become `_`.
|
|
20
|
+
*
|
|
21
|
+
* @param name - The string to sanitize.
|
|
22
|
+
* @returns A string that satisfies C# identifier character rules.
|
|
23
|
+
*/
|
|
24
|
+
export function sanitizeCSharpIdentifier(name) {
|
|
25
|
+
if (name.length === 0) return "_";
|
|
26
|
+
const chars = [];
|
|
27
|
+
for (let i = 0; i < name.length; i++) {
|
|
28
|
+
const ch = name[i];
|
|
29
|
+
if (i === 0) {
|
|
30
|
+
if (/[A-Za-z_]/.test(ch)) {
|
|
31
|
+
chars.push(ch);
|
|
32
|
+
} else {
|
|
33
|
+
chars.push("_");
|
|
34
|
+
// Keep the original char if it's a word char (e.g., digit)
|
|
35
|
+
if (/\w/.test(ch)) {
|
|
36
|
+
chars.push(ch);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
} else {
|
|
40
|
+
chars.push(/\w/.test(ch) ? ch : "_");
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return chars.join("");
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=identifier-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isValidCSharpIdentifier","name","test","sanitizeCSharpIdentifier","length","chars","i","ch","push","join"],"sources":["../../src/identifier-utils.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASA,uBAAuBA,CAACC,IAAY,EAAW;EAC7D,OAAO,gBAAgB,CAACC,IAAI,CAACD,IAAI,CAAC;AACpC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,wBAAwBA,CAACF,IAAY,EAAU;EAC7D,IAAIA,IAAI,CAACG,MAAM,KAAK,CAAC,EAAE,OAAO,GAAG;EAEjC,MAAMC,KAAe,GAAG,EAAE;EAC1B,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGL,IAAI,CAACG,MAAM,EAAEE,CAAC,EAAE,EAAE;IACpC,MAAMC,EAAE,GAAGN,IAAI,CAACK,CAAC,CAAC;IAClB,IAAIA,CAAC,KAAK,CAAC,EAAE;MACX,IAAI,WAAW,CAACJ,IAAI,CAACK,EAAE,CAAC,EAAE;QACxBF,KAAK,CAACG,IAAI,CAACD,EAAE,CAAC;MAChB,CAAC,MAAM;QACLF,KAAK,CAACG,IAAI,CAAC,GAAG,CAAC;QACf;QACA,IAAI,IAAI,CAACN,IAAI,CAACK,EAAE,CAAC,EAAE;UACjBF,KAAK,CAACG,IAAI,CAACD,EAAE,CAAC;QAChB;MACF;IACF,CAAC,MAAM;MACLF,KAAK,CAACG,IAAI,CAAC,IAAI,CAACN,IAAI,CAACK,EAAE,CAAC,GAAGA,EAAE,GAAG,GAAG,CAAC;IACtC;EACF;EACA,OAAOF,KAAK,CAACI,IAAI,CAAC,EAAE,CAAC;AACvB","ignoreList":[]}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ export * from "./access.jsx";
|
|
|
2
2
|
export * from "./components/index.js";
|
|
3
3
|
export * from "./contexts/format-options.js";
|
|
4
4
|
export * from "./create-library.js";
|
|
5
|
+
export * from "./identifier-utils.js";
|
|
6
|
+
export * from "./keywords.js";
|
|
5
7
|
export * from "./modifiers.js";
|
|
6
8
|
export * from "./name-policy.js";
|
|
7
9
|
export * from "./scopes/index.js";
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -2,6 +2,8 @@ export * from "./access.js";
|
|
|
2
2
|
export * from "./components/index.js";
|
|
3
3
|
export * from "./contexts/format-options.js";
|
|
4
4
|
export * from "./create-library.js";
|
|
5
|
+
export * from "./identifier-utils.js";
|
|
6
|
+
export * from "./keywords.js";
|
|
5
7
|
export * from "./modifiers.js";
|
|
6
8
|
export * from "./name-policy.js";
|
|
7
9
|
export * from "./scopes/index.js";
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA,cAAc,uBAAuB;AACrC,cAAc,8BAA8B;AAC5C,cAAc,qBAAqB;AACnC,cAAc,gBAAgB;AAC9B,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,oBAAoB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA,cAAc,uBAAuB;AACrC,cAAc,8BAA8B;AAC5C,cAAc,qBAAqB;AACnC,cAAc,uBAAuB;AACrC,cAAc,eAAe;AAC7B,cAAc,gBAAgB;AAC9B,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,oBAAoB","ignoreList":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C# reserved keywords that cannot be used as identifiers without `@` prefix.
|
|
3
|
+
* These are case-sensitive in C#.
|
|
4
|
+
*
|
|
5
|
+
* @see https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/
|
|
6
|
+
*/
|
|
7
|
+
export declare const csharpKeywords: ReadonlySet<string>;
|
|
8
|
+
/**
|
|
9
|
+
* C# contextual keywords that are reserved in certain contexts.
|
|
10
|
+
* While not always reserved, treating them as keywords in generated code
|
|
11
|
+
* avoids subtle context-dependent issues.
|
|
12
|
+
*
|
|
13
|
+
* @see https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/#contextual-keywords
|
|
14
|
+
*/
|
|
15
|
+
export declare const csharpContextualKeywords: ReadonlySet<string>;
|
|
16
|
+
/**
|
|
17
|
+
* Returns true if the given name is a C# reserved keyword.
|
|
18
|
+
* The check is case-sensitive, matching C# language semantics.
|
|
19
|
+
*
|
|
20
|
+
* Note: this only checks reserved keywords, not contextual keywords.
|
|
21
|
+
* Contextual keywords are only reserved in specific language contexts
|
|
22
|
+
* and are valid identifiers elsewhere (e.g., `value` is valid as a parameter name).
|
|
23
|
+
* Use {@link isCSharpContextualKeyword} to check contextual keywords separately.
|
|
24
|
+
*/
|
|
25
|
+
export declare function isCSharpKeyword(name: string): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Returns true if the given name is a C# contextual keyword.
|
|
28
|
+
* Contextual keywords are only reserved in specific language contexts
|
|
29
|
+
* and are generally valid as identifiers.
|
|
30
|
+
*/
|
|
31
|
+
export declare function isCSharpContextualKeyword(name: string): boolean;
|
|
32
|
+
//# sourceMappingURL=keywords.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keywords.d.ts","sourceRoot":"","sources":["../../src/keywords.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,CA8E7C,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,EAAE,WAAW,CAAC,MAAM,CA8CvD,CAAC;AAEH;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE/D"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* C# reserved keywords that cannot be used as identifiers without `@` prefix.
|
|
3
|
+
* These are case-sensitive in C#.
|
|
4
|
+
*
|
|
5
|
+
* @see https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/
|
|
6
|
+
*/
|
|
7
|
+
export const csharpKeywords = new Set(["abstract", "as", "base", "bool", "break", "byte", "case", "catch", "char", "checked", "class", "const", "continue", "decimal", "default", "delegate", "do", "double", "else", "enum", "event", "explicit", "extern", "false", "finally", "fixed", "float", "for", "foreach", "goto", "if", "implicit", "in", "int", "interface", "internal", "is", "lock", "long", "namespace", "new", "null", "object", "operator", "out", "override", "params", "private", "protected", "public", "readonly", "ref", "return", "sbyte", "sealed", "short", "sizeof", "stackalloc", "static", "string", "struct", "switch", "this", "throw", "true", "try", "typeof", "uint", "ulong", "unchecked", "unsafe", "ushort", "using", "virtual", "void", "volatile", "while"]);
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* C# contextual keywords that are reserved in certain contexts.
|
|
11
|
+
* While not always reserved, treating them as keywords in generated code
|
|
12
|
+
* avoids subtle context-dependent issues.
|
|
13
|
+
*
|
|
14
|
+
* @see https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/#contextual-keywords
|
|
15
|
+
*/
|
|
16
|
+
export const csharpContextualKeywords = new Set(["add", "allows", "alias", "and", "ascending", "args", "async", "await", "by", "descending", "dynamic", "equals", "field", "file", "from", "get", "global", "group", "init", "into", "join", "let", "managed", "nameof", "nint", "not", "notnull", "nuint", "on", "or", "orderby", "partial", "record", "remove", "required", "scoped", "select", "set", "unmanaged", "value", "var", "when", "where", "with", "yield"]);
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Returns true if the given name is a C# reserved keyword.
|
|
20
|
+
* The check is case-sensitive, matching C# language semantics.
|
|
21
|
+
*
|
|
22
|
+
* Note: this only checks reserved keywords, not contextual keywords.
|
|
23
|
+
* Contextual keywords are only reserved in specific language contexts
|
|
24
|
+
* and are valid identifiers elsewhere (e.g., `value` is valid as a parameter name).
|
|
25
|
+
* Use {@link isCSharpContextualKeyword} to check contextual keywords separately.
|
|
26
|
+
*/
|
|
27
|
+
export function isCSharpKeyword(name) {
|
|
28
|
+
return csharpKeywords.has(name);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Returns true if the given name is a C# contextual keyword.
|
|
33
|
+
* Contextual keywords are only reserved in specific language contexts
|
|
34
|
+
* and are generally valid as identifiers.
|
|
35
|
+
*/
|
|
36
|
+
export function isCSharpContextualKeyword(name) {
|
|
37
|
+
return csharpContextualKeywords.has(name);
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=keywords.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["csharpKeywords","Set","csharpContextualKeywords","isCSharpKeyword","name","has","isCSharpContextualKeyword"],"sources":["../../src/keywords.ts"],"sourcesContent":[null],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,cAAmC,GAAG,IAAIC,GAAG,CAAC,CACzD,UAAU,EACV,IAAI,EACJ,MAAM,EACN,MAAM,EACN,OAAO,EACP,MAAM,EACN,MAAM,EACN,OAAO,EACP,MAAM,EACN,SAAS,EACT,OAAO,EACP,OAAO,EACP,UAAU,EACV,SAAS,EACT,SAAS,EACT,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,MAAM,EACN,OAAO,EACP,UAAU,EACV,QAAQ,EACR,OAAO,EACP,SAAS,EACT,OAAO,EACP,OAAO,EACP,KAAK,EACL,SAAS,EACT,MAAM,EACN,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,KAAK,EACL,WAAW,EACX,UAAU,EACV,IAAI,EACJ,MAAM,EACN,MAAM,EACN,WAAW,EACX,KAAK,EACL,MAAM,EACN,QAAQ,EACR,UAAU,EACV,KAAK,EACL,UAAU,EACV,QAAQ,EACR,SAAS,EACT,WAAW,EACX,QAAQ,EACR,UAAU,EACV,KAAK,EACL,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,OAAO,EACP,MAAM,EACN,KAAK,EACL,QAAQ,EACR,MAAM,EACN,OAAO,EACP,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,SAAS,EACT,MAAM,EACN,UAAU,EACV,OAAO,CACR,CAAC;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAA6C,GAAG,IAAID,GAAG,CAAC,CACnE,KAAK,EACL,QAAQ,EACR,OAAO,EACP,KAAK,EACL,WAAW,EACX,MAAM,EACN,OAAO,EACP,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,OAAO,EACP,MAAM,EACN,MAAM,EACN,KAAK,EACL,QAAQ,EACR,OAAO,EACP,MAAM,EACN,MAAM,EACN,MAAM,EACN,KAAK,EACL,SAAS,EACT,QAAQ,EACR,MAAM,EACN,KAAK,EACL,SAAS,EACT,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,WAAW,EACX,OAAO,EACP,KAAK,EACL,MAAM,EACN,OAAO,EACP,MAAM,EACN,OAAO,CACR,CAAC;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,eAAeA,CAACC,IAAY,EAAW;EACrD,OAAOJ,cAAc,CAACK,GAAG,CAACD,IAAI,CAAC;AACjC;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,yBAAyBA,CAACF,IAAY,EAAW;EAC/D,OAAOF,wBAAwB,CAACG,GAAG,CAACD,IAAI,CAAC;AAC3C","ignoreList":[]}
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import * as core from "@alloy-js/core";
|
|
2
2
|
export type CSharpElements = "class" | "constant" | "variable" | "struct" | "enum" | "enum-member" | "function" | "interface" | "record" | "class-member-private" | "class-member-public" | "class-method" | "class-property" | "parameter" | "type-parameter" | "namespace";
|
|
3
|
+
/**
|
|
4
|
+
* Creates the C# naming policy with case conversion and keyword escaping.
|
|
5
|
+
*
|
|
6
|
+
* After applying the appropriate case conversion for each element kind,
|
|
7
|
+
* the resulting name is checked against C# reserved and contextual keywords.
|
|
8
|
+
* If it matches (case-sensitively), the name is prefixed with `@`.
|
|
9
|
+
*/
|
|
3
10
|
export declare function createCSharpNamePolicy(): core.NamePolicy<CSharpElements>;
|
|
4
11
|
export declare function useCSharpNamePolicy(): core.NamePolicy<CSharpElements>;
|
|
5
12
|
//# sourceMappingURL=name-policy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"name-policy.d.ts","sourceRoot":"","sources":["../../src/name-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"name-policy.d.ts","sourceRoot":"","sources":["../../src/name-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC;AAMvC,MAAM,MAAM,cAAc,GACtB,OAAO,GACP,UAAU,GACV,UAAU,GACV,QAAQ,GACR,MAAM,GACN,aAAa,GACb,UAAU,GACV,WAAW,GACX,QAAQ,GACR,sBAAsB,GACtB,qBAAqB,GACrB,cAAc,GACd,gBAAgB,GAChB,WAAW,GACX,gBAAgB,GAChB,WAAW,CAAC;AAWhB;;;;;;GAMG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CA8BxE;AAGD,wBAAgB,mBAAmB,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAErE"}
|
package/dist/src/name-policy.js
CHANGED
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
import * as core from "@alloy-js/core";
|
|
2
2
|
import * as changecase from "change-case";
|
|
3
|
+
import { sanitizeCSharpIdentifier } from "./identifier-utils.js";
|
|
4
|
+
import { isCSharpKeyword } from "./keywords.js";
|
|
3
5
|
|
|
4
6
|
// the context in which the name policy should be applied
|
|
5
7
|
|
|
6
|
-
|
|
8
|
+
/**
|
|
9
|
+
* Prefixes the name with `@` if it is a C# keyword.
|
|
10
|
+
* This is the idiomatic C# way to use reserved words as identifiers.
|
|
11
|
+
* The check is case-sensitive, matching C# language semantics.
|
|
12
|
+
*/
|
|
13
|
+
function escapeIfKeyword(name) {
|
|
14
|
+
return isCSharpKeyword(name) ? `@${name}` : name;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Creates the C# naming policy with case conversion and keyword escaping.
|
|
19
|
+
*
|
|
20
|
+
* After applying the appropriate case conversion for each element kind,
|
|
21
|
+
* the resulting name is checked against C# reserved and contextual keywords.
|
|
22
|
+
* If it matches (case-sensitively), the name is prefixed with `@`.
|
|
23
|
+
*/
|
|
7
24
|
export function createCSharpNamePolicy() {
|
|
8
25
|
return core.createNamePolicy((name, element) => {
|
|
26
|
+
let result;
|
|
9
27
|
switch (element) {
|
|
28
|
+
case "namespace":
|
|
10
29
|
case "class":
|
|
11
30
|
case "struct":
|
|
12
31
|
case "enum":
|
|
@@ -17,15 +36,19 @@ export function createCSharpNamePolicy() {
|
|
|
17
36
|
case "class-method":
|
|
18
37
|
case "type-parameter":
|
|
19
38
|
case "class-property":
|
|
20
|
-
|
|
21
|
-
|
|
39
|
+
result = changecase.pascalCase(name);
|
|
40
|
+
break;
|
|
22
41
|
case "constant":
|
|
23
|
-
|
|
42
|
+
result = changecase.constantCase(name);
|
|
43
|
+
break;
|
|
24
44
|
case "class-member-private":
|
|
25
|
-
|
|
45
|
+
result = `_${changecase.camelCase(name)}`;
|
|
46
|
+
break;
|
|
26
47
|
default:
|
|
27
|
-
|
|
48
|
+
result = changecase.camelCase(name);
|
|
49
|
+
break;
|
|
28
50
|
}
|
|
51
|
+
return escapeIfKeyword(sanitizeCSharpIdentifier(result));
|
|
29
52
|
});
|
|
30
53
|
}
|
|
31
54
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["core","changecase","
|
|
1
|
+
{"version":3,"names":["core","changecase","sanitizeCSharpIdentifier","isCSharpKeyword","escapeIfKeyword","name","createCSharpNamePolicy","createNamePolicy","element","result","pascalCase","constantCase","camelCase","useCSharpNamePolicy","useNamePolicy"],"sources":["../../src/name-policy.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,IAAI,MAAM,gBAAgB;AACtC,OAAO,KAAKC,UAAU,MAAM,aAAa;AACzC,SAASC,wBAAwB,QAAQ,uBAAuB;AAChE,SAASC,eAAe,QAAQ,eAAe;;AAE/C;;AAmBA;AACA;AACA;AACA;AACA;AACA,SAASC,eAAeA,CAACC,IAAY,EAAU;EAC7C,OAAOF,eAAe,CAACE,IAAI,CAAC,GAAG,IAAIA,IAAI,EAAE,GAAGA,IAAI;AAClD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,sBAAsBA,CAAA,EAAoC;EACxE,OAAON,IAAI,CAACO,gBAAgB,CAAC,CAACF,IAAI,EAAEG,OAAO,KAAK;IAC9C,IAAIC,MAAc;IAClB,QAAQD,OAAO;MACb,KAAK,WAAW;MAChB,KAAK,OAAO;MACZ,KAAK,QAAQ;MACb,KAAK,MAAM;MACX,KAAK,aAAa;MAClB,KAAK,WAAW;MAChB,KAAK,QAAQ;MACb,KAAK,qBAAqB;MAC1B,KAAK,cAAc;MACnB,KAAK,gBAAgB;MACrB,KAAK,gBAAgB;QACnBC,MAAM,GAAGR,UAAU,CAACS,UAAU,CAACL,IAAI,CAAC;QACpC;MACF,KAAK,UAAU;QACbI,MAAM,GAAGR,UAAU,CAACU,YAAY,CAACN,IAAI,CAAC;QACtC;MACF,KAAK,sBAAsB;QACzBI,MAAM,GAAG,IAAIR,UAAU,CAACW,SAAS,CAACP,IAAI,CAAC,EAAE;QACzC;MACF;QACEI,MAAM,GAAGR,UAAU,CAACW,SAAS,CAACP,IAAI,CAAC;QACnC;IACJ;IAEA,OAAOD,eAAe,CAACF,wBAAwB,CAACO,MAAM,CAAC,CAAC;EAC1D,CAAC,CAAC;AACJ;;AAEA;AACA,OAAO,SAASI,mBAAmBA,CAAA,EAAoC;EACrE,OAAOb,IAAI,CAACc,aAAa,CAAC,CAAC;AAC7B","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"name-policy.test.d.ts","sourceRoot":"","sources":["../../src/name-policy.test.ts"],"names":[],"mappings":""}
|