@teambit/semantics.entities.semantic-schema 0.0.88 → 0.0.90
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/api-schema.ts +2 -1
- package/dist/api-schema.d.ts +2 -1
- package/dist/api-schema.js.map +1 -1
- package/dist/schema-node-constructor.d.ts +1 -1
- package/dist/schema-node-constructor.js.map +1 -1
- package/dist/schema-node.d.ts +1 -1
- package/dist/schema-node.js.map +1 -1
- package/dist/schema-registry.d.ts +1 -1
- package/dist/schema-registry.js.map +1 -1
- package/dist/schemas/array-literal-expression.d.ts +2 -1
- package/dist/schemas/array-literal-expression.js.map +1 -1
- package/dist/schemas/class.d.ts +2 -1
- package/dist/schemas/class.js.map +1 -1
- package/dist/schemas/conditional-type.d.ts +2 -1
- package/dist/schemas/conditional-type.js.map +1 -1
- package/dist/schemas/constructor.d.ts +3 -2
- package/dist/schemas/constructor.js.map +1 -1
- package/dist/schemas/decorator.d.ts +2 -1
- package/dist/schemas/decorator.js.map +1 -1
- package/dist/schemas/docs/doc.d.ts +3 -2
- package/dist/schemas/docs/doc.js.map +1 -1
- package/dist/schemas/docs/property-like-tag.d.ts +1 -1
- package/dist/schemas/docs/property-like-tag.js.map +1 -1
- package/dist/schemas/docs/return-tag.d.ts +1 -1
- package/dist/schemas/docs/return-tag.js.map +1 -1
- package/dist/schemas/docs/tag.d.ts +2 -1
- package/dist/schemas/docs/tag.js.map +1 -1
- package/dist/schemas/enum-member.d.ts +2 -1
- package/dist/schemas/enum-member.js.map +1 -1
- package/dist/schemas/enum.d.ts +2 -1
- package/dist/schemas/enum.js.map +1 -1
- package/dist/schemas/export.d.ts +2 -1
- package/dist/schemas/export.js.map +1 -1
- package/dist/schemas/expression-with-arguments.d.ts +2 -1
- package/dist/schemas/expression-with-arguments.js.map +1 -1
- package/dist/schemas/function-like.d.ts +2 -1
- package/dist/schemas/function-like.js.map +1 -1
- package/dist/schemas/get-accessor.d.ts +2 -1
- package/dist/schemas/get-accessor.js.map +1 -1
- package/dist/schemas/ignored.d.ts +3 -2
- package/dist/schemas/ignored.js.map +1 -1
- package/dist/schemas/index-signature.d.ts +2 -1
- package/dist/schemas/index-signature.js.map +1 -1
- package/dist/schemas/indexed-access-type.d.ts +2 -1
- package/dist/schemas/indexed-access-type.js.map +1 -1
- package/dist/schemas/inference-type.d.ts +2 -1
- package/dist/schemas/inference-type.js.map +1 -1
- package/dist/schemas/interface.d.ts +2 -1
- package/dist/schemas/interface.js.map +1 -1
- package/dist/schemas/keyword-type.d.ts +2 -1
- package/dist/schemas/keyword-type.js.map +1 -1
- package/dist/schemas/literal-type.d.ts +2 -1
- package/dist/schemas/literal-type.js.map +1 -1
- package/dist/schemas/literal-value.d.ts +2 -1
- package/dist/schemas/literal-value.js.map +1 -1
- package/dist/schemas/module.d.ts +2 -1
- package/dist/schemas/module.js.map +1 -1
- package/dist/schemas/named-tuple.d.ts +2 -1
- package/dist/schemas/named-tuple.js.map +1 -1
- package/dist/schemas/object-literal-expression.d.ts +2 -1
- package/dist/schemas/object-literal-expression.js.map +1 -1
- package/dist/schemas/parameter.d.ts +2 -1
- package/dist/schemas/parameter.js.map +1 -1
- package/dist/schemas/parenthesized-type.d.ts +2 -1
- package/dist/schemas/parenthesized-type.js.map +1 -1
- package/dist/schemas/property-assignment.d.ts +2 -1
- package/dist/schemas/property-assignment.js.map +1 -1
- package/dist/schemas/set-accessor.d.ts +2 -1
- package/dist/schemas/set-accessor.js.map +1 -1
- package/dist/schemas/template-literal-type-span.d.ts +2 -1
- package/dist/schemas/template-literal-type-span.js.map +1 -1
- package/dist/schemas/template-literal-type.d.ts +2 -1
- package/dist/schemas/template-literal-type.js.map +1 -1
- package/dist/schemas/this-type.d.ts +2 -1
- package/dist/schemas/this-type.js.map +1 -1
- package/dist/schemas/tuple-type.d.ts +2 -1
- package/dist/schemas/tuple-type.js.map +1 -1
- package/dist/schemas/type-array.d.ts +2 -1
- package/dist/schemas/type-array.js.map +1 -1
- package/dist/schemas/type-intersection.d.ts +2 -1
- package/dist/schemas/type-intersection.js.map +1 -1
- package/dist/schemas/type-literal.d.ts +2 -1
- package/dist/schemas/type-literal.js.map +1 -1
- package/dist/schemas/type-operator.d.ts +2 -1
- package/dist/schemas/type-operator.js.map +1 -1
- package/dist/schemas/type-predicate.d.ts +2 -1
- package/dist/schemas/type-predicate.js.map +1 -1
- package/dist/schemas/type-query.d.ts +2 -1
- package/dist/schemas/type-query.js.map +1 -1
- package/dist/schemas/type-ref.d.ts +2 -1
- package/dist/schemas/type-ref.js.map +1 -1
- package/dist/schemas/type-union.d.ts +2 -1
- package/dist/schemas/type-union.js.map +1 -1
- package/dist/schemas/type.d.ts +2 -1
- package/dist/schemas/type.js.map +1 -1
- package/dist/schemas/unimplemented-schema.d.ts +2 -1
- package/dist/schemas/unimplemented-schema.js.map +1 -1
- package/dist/schemas/unknown-schema.d.ts +2 -1
- package/dist/schemas/unknown-schema.js.map +1 -1
- package/dist/schemas/unresolved-schema.d.ts +2 -1
- package/dist/schemas/unresolved-schema.js.map +1 -1
- package/dist/schemas/variable-like.d.ts +2 -1
- package/dist/schemas/variable-like.js.map +1 -1
- package/dist/unknown-schema-factory.d.ts +1 -1
- package/dist/unknown-schema-factory.js.map +1 -1
- package/package.json +3 -3
- package/schema-node-constructor.ts +1 -1
- package/schema-node.ts +1 -1
- package/schema-registry.ts +1 -1
- package/schemas/array-literal-expression.ts +2 -1
- package/schemas/class.ts +2 -1
- package/schemas/conditional-type.ts +2 -1
- package/schemas/constructor.ts +3 -2
- package/schemas/decorator.ts +2 -1
- package/schemas/docs/doc.ts +3 -2
- package/schemas/docs/property-like-tag.ts +1 -1
- package/schemas/docs/return-tag.ts +1 -1
- package/schemas/docs/tag.ts +2 -1
- package/schemas/enum-member.ts +2 -1
- package/schemas/enum.ts +2 -1
- package/schemas/export.ts +2 -1
- package/schemas/expression-with-arguments.ts +2 -1
- package/schemas/function-like.ts +2 -1
- package/schemas/get-accessor.ts +2 -1
- package/schemas/ignored.ts +4 -2
- package/schemas/index-signature.ts +2 -1
- package/schemas/indexed-access-type.ts +2 -1
- package/schemas/inference-type.ts +2 -1
- package/schemas/interface.ts +2 -1
- package/schemas/keyword-type.ts +2 -1
- package/schemas/literal-type.ts +2 -1
- package/schemas/literal-value.ts +2 -1
- package/schemas/module.ts +3 -2
- package/schemas/named-tuple.ts +2 -1
- package/schemas/object-literal-expression.ts +2 -1
- package/schemas/parameter.ts +2 -1
- package/schemas/parenthesized-type.ts +2 -1
- package/schemas/property-assignment.ts +2 -1
- package/schemas/set-accessor.ts +2 -1
- package/schemas/template-literal-type-span.ts +2 -1
- package/schemas/template-literal-type.ts +2 -1
- package/schemas/this-type.ts +2 -1
- package/schemas/tuple-type.ts +2 -1
- package/schemas/type-array.ts +2 -1
- package/schemas/type-intersection.ts +2 -1
- package/schemas/type-literal.ts +2 -1
- package/schemas/type-operator.ts +2 -1
- package/schemas/type-predicate.ts +2 -1
- package/schemas/type-query.ts +2 -1
- package/schemas/type-ref.ts +2 -1
- package/schemas/type-union.ts +2 -1
- package/schemas/type.ts +2 -1
- package/schemas/unimplemented-schema.ts +2 -1
- package/schemas/unknown-schema.ts +2 -1
- package/schemas/unresolved-schema.ts +2 -1
- package/schemas/variable-like.ts +2 -1
- package/unknown-schema-factory.ts +1 -1
package/api-schema.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
import { ComponentID } from '@teambit/component-id';
|
|
3
3
|
import { ExportSchema, ModuleSchema } from './schemas';
|
|
4
|
-
import { SchemaLocation
|
|
4
|
+
import type { SchemaLocation } from './schema-node';
|
|
5
|
+
import { SchemaNode } from './schema-node';
|
|
5
6
|
import { TagName } from './schemas/docs/tag';
|
|
6
7
|
import { SchemaRegistry } from './schema-registry';
|
|
7
8
|
|
package/dist/api-schema.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ComponentID } from '@teambit/component-id';
|
|
2
2
|
import { ModuleSchema } from './schemas';
|
|
3
|
-
import { SchemaLocation
|
|
3
|
+
import type { SchemaLocation } from './schema-node';
|
|
4
|
+
import { SchemaNode } from './schema-node';
|
|
4
5
|
export declare class APISchema extends SchemaNode {
|
|
5
6
|
readonly location: SchemaLocation;
|
|
6
7
|
readonly module: ModuleSchema;
|
package/dist/api-schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_componentId","_schemas","_schemaNode","_tag","_schemaRegistry","e","__esModule","default","APISchema","SchemaNode","constructor","location","module","internals","componentId","taggedModuleExports","length","listTaggedExports","exports","filter","ExportSchema","isExportSchema","exportNode","doc","hasTag","TagName","map","toString","JSON","stringify","exp","toObject","undefined","toStringPerType","title","chalk","inverse","exportGroups","reduce","acc","node","displayName","displaySchemaName","push","sortedDisplayNames","Object","keys","sort","sections","sectionBody","c","color","join","green","bold","toFullSignature","options","showDocs","constructorName","name","output","showTitles","sectionName","entries","readableSectionName","getReadableSectionName","trim","sectionNameMap","ModuleSchema","ClassSchema","InterfaceSchema","FunctionLikeSchema","VariableLikeSchema","TypeSchema","EnumSchema","TypeRefSchema","UnresolvedSchema","ReactSchema","listSignatures","signature","i","fromObject","obj","ComponentID","SchemaRegistry","empty","filePath","line","character"],"sources":["api-schema.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { ComponentID } from '@teambit/component-id';\nimport { ExportSchema, ModuleSchema } from './schemas';\nimport { SchemaLocation, SchemaNode } from './schema-node';\nimport { TagName } from './schemas/docs/tag';\nimport { SchemaRegistry } from './schema-registry';\n\nexport class APISchema extends SchemaNode {\n readonly module: ModuleSchema; // index\n\n readonly internals: ModuleSchema[];\n\n readonly componentId: ComponentID;\n\n readonly taggedModuleExports: SchemaNode[];\n\n constructor(\n readonly location: SchemaLocation,\n module: ModuleSchema,\n internals: ModuleSchema[],\n componentId: ComponentID,\n taggedModuleExports: SchemaNode[] = []\n ) {\n super();\n this.module = module;\n this.internals = internals;\n this.componentId = componentId;\n taggedModuleExports = (taggedModuleExports.length && taggedModuleExports) || this.listTaggedExports(module);\n this.taggedModuleExports = taggedModuleExports;\n }\n\n listTaggedExports(module?: ModuleSchema): SchemaNode[] {\n if (!module) return [];\n return module.exports\n .filter((e) => {\n if (ExportSchema.isExportSchema(e)) {\n return e.exportNode.doc?.hasTag(TagName.exports) || e.doc?.hasTag(TagName.exports);\n }\n return e.doc?.hasTag(TagName.exports);\n })\n .map((e) => {\n if (ExportSchema.isExportSchema(e)) {\n return e.exportNode;\n }\n return e;\n });\n }\n\n toString() {\n return JSON.stringify(\n this.module.exports.map((exp) => exp.toObject()),\n undefined,\n 2\n );\n }\n\n toStringPerType() {\n const title = chalk.inverse(`API Schema of ${this.componentId.toString()}\\n`);\n\n const exportGroups = this.module.exports.reduce(\n (acc, exp) => {\n const node = ExportSchema.isExportSchema(exp) ? exp.exportNode : exp;\n\n const displayName = node.displaySchemaName;\n\n (acc[displayName] = acc[displayName] || []).push(exp);\n return acc;\n },\n {} as { [key: string]: SchemaNode[] }\n );\n\n const sortedDisplayNames = Object.keys(exportGroups).sort();\n\n if (sortedDisplayNames.length === 0) {\n return title;\n }\n\n const sections = sortedDisplayNames.map((displayName) => {\n const exports = exportGroups[displayName];\n const sectionBody = exports.map((c) => c.toString({ color: true })).join('\\n');\n\n return `${chalk.green.bold(displayName)}\\n${sectionBody}`;\n });\n\n return title + sections.join('\\n\\n') + '\\n\\n';\n }\n\n toFullSignature(options: { showDocs?: boolean; showTitles?: boolean } = { showDocs: true }): string {\n const title = `API Schema of ${this.componentId.toString()}\\n\\n`;\n\n const exportGroups: { [key: string]: SchemaNode[] } = {};\n\n for (const exp of this.module.exports) {\n const node = ExportSchema.isExportSchema(exp) ? exp.exportNode : exp;\n const constructorName = node.constructor.name;\n\n if (!exportGroups[constructorName]) {\n exportGroups[constructorName] = [];\n }\n\n exportGroups[constructorName].push(exp);\n }\n\n let output = options.showTitles ? title : '';\n\n for (const [sectionName, exports] of Object.entries(exportGroups)) {\n const readableSectionName = options.showTitles ? this.getReadableSectionName(sectionName) : '';\n\n output += `${readableSectionName}\\n\\n`;\n\n const sectionBody = exports.map((exp) => exp.toFullSignature(options)).join('\\n\\n');\n\n output += `${sectionBody}\\n\\n`;\n }\n\n return output.trim();\n }\n\n private getReadableSectionName(constructorName: string): string {\n const sectionNameMap: { [key: string]: string } = {\n ModuleSchema: 'Namespaces',\n ClassSchema: 'Classes',\n InterfaceSchema: 'Interfaces',\n FunctionLikeSchema: 'Functions',\n VariableLikeSchema: 'Variables',\n TypeSchema: 'Types',\n EnumSchema: 'Enums',\n TypeRefSchema: 'Type References',\n UnresolvedSchema: 'Unresolved',\n ReactSchema: 'React Components',\n };\n\n return sectionNameMap[constructorName] || constructorName;\n }\n\n listSignatures() {\n return this.module.exports.map((exp) => exp.signature);\n }\n\n toObject() {\n return {\n ...super.toObject(),\n module: this.module.toObject(),\n internals: this.internals.map((i) => i.toObject()),\n componentId: this.componentId.toObject(),\n taggedModuleExports: this.taggedModuleExports.map((e) => e.toObject()),\n };\n }\n\n static fromObject(obj: Record<string, any>): APISchema {\n const location: SchemaLocation = obj.location;\n const module: ModuleSchema = ModuleSchema.fromObject(obj.module);\n const internals: ModuleSchema[] = (obj.internals || []).map((i: any) => ModuleSchema.fromObject(i));\n const componentId: ComponentID = ComponentID.fromObject(obj.componentId);\n const taggedModuleExports = (obj.taggedModuleExports || []).map((e: any) => SchemaRegistry.fromObject(e));\n return new APISchema(location, module, internals, componentId, taggedModuleExports);\n }\n\n static empty(componentId: ComponentID) {\n return new APISchema(\n { filePath: '', line: 0, character: 0 },\n new ModuleSchema({ filePath: '', line: 0, character: 0 }, [], []),\n [],\n componentId\n );\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,aAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,YAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,SAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,QAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,YAAA;EAAA,MAAAL,IAAA,GAAAE,OAAA;EAAAG,WAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,KAAA;EAAA,MAAAN,IAAA,GAAAE,OAAA;EAAAI,IAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,gBAAA;EAAA,MAAAP,IAAA,GAAAE,OAAA;EAAAK,eAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAmD,SAAAC,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE5C,MAAMG,SAAS,SAASC,wBAAU,CAAC;EACT;;EAQ/BC,WAAWA,CACAC,QAAwB,EACjCC,MAAoB,EACpBC,SAAyB,EACzBC,WAAwB,EACxBC,mBAAiC,GAAG,EAAE,EACtC;IACA,KAAK,CAAC,CAAC;IAAC,KANCJ,QAAwB,GAAxBA,QAAwB;IAOjC,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACC,WAAW,GAAGA,WAAW;IAC9BC,mBAAmB,GAAIA,mBAAmB,CAACC,MAAM,IAAID,mBAAmB,IAAK,IAAI,CAACE,iBAAiB,CAACL,MAAM,CAAC;IAC3G,IAAI,CAACG,mBAAmB,GAAGA,mBAAmB;EAChD;EAEAE,iBAAiBA,CAACL,MAAqB,EAAgB;IACrD,IAAI,CAACA,MAAM,EAAE,OAAO,EAAE;IACtB,OAAOA,MAAM,CAACM,OAAO,CAClBC,MAAM,CAAEd,CAAC,IAAK;MACb,IAAIe,uBAAY,CAACC,cAAc,CAAChB,CAAC,CAAC,EAAE;QAClC,OAAOA,CAAC,CAACiB,UAAU,CAACC,GAAG,EAAEC,MAAM,CAACC,cAAO,CAACP,OAAO,CAAC,IAAIb,CAAC,CAACkB,GAAG,EAAEC,MAAM,CAACC,cAAO,CAACP,OAAO,CAAC;MACpF;MACA,OAAOb,CAAC,CAACkB,GAAG,EAAEC,MAAM,CAACC,cAAO,CAACP,OAAO,CAAC;IACvC,CAAC,CAAC,CACDQ,GAAG,CAAErB,CAAC,IAAK;MACV,IAAIe,uBAAY,CAACC,cAAc,CAAChB,CAAC,CAAC,EAAE;QAClC,OAAOA,CAAC,CAACiB,UAAU;MACrB;MACA,OAAOjB,CAAC;IACV,CAAC,CAAC;EACN;EAEAsB,QAAQA,CAAA,EAAG;IACT,OAAOC,IAAI,CAACC,SAAS,CACnB,IAAI,CAACjB,MAAM,CAACM,OAAO,CAACQ,GAAG,CAAEI,GAAG,IAAKA,GAAG,CAACC,QAAQ,CAAC,CAAC,CAAC,EAChDC,SAAS,EACT,CACF,CAAC;EACH;EAEAC,eAAeA,CAAA,EAAG;IAChB,MAAMC,KAAK,GAAGC,gBAAK,CAACC,OAAO,CAAC,iBAAiB,IAAI,CAACtB,WAAW,CAACa,QAAQ,CAAC,CAAC,IAAI,CAAC;IAE7E,MAAMU,YAAY,GAAG,IAAI,CAACzB,MAAM,CAACM,OAAO,CAACoB,MAAM,CAC7C,CAACC,GAAG,EAAET,GAAG,KAAK;MACZ,MAAMU,IAAI,GAAGpB,uBAAY,CAACC,cAAc,CAACS,GAAG,CAAC,GAAGA,GAAG,CAACR,UAAU,GAAGQ,GAAG;MAEpE,MAAMW,WAAW,GAAGD,IAAI,CAACE,iBAAiB;MAE1C,CAACH,GAAG,CAACE,WAAW,CAAC,GAAGF,GAAG,CAACE,WAAW,CAAC,IAAI,EAAE,EAAEE,IAAI,CAACb,GAAG,CAAC;MACrD,OAAOS,GAAG;IACZ,CAAC,EACD,CAAC,CACH,CAAC;IAED,MAAMK,kBAAkB,GAAGC,MAAM,CAACC,IAAI,CAACT,YAAY,CAAC,CAACU,IAAI,CAAC,CAAC;IAE3D,IAAIH,kBAAkB,CAAC5B,MAAM,KAAK,CAAC,EAAE;MACnC,OAAOkB,KAAK;IACd;IAEA,MAAMc,QAAQ,GAAGJ,kBAAkB,CAAClB,GAAG,CAAEe,WAAW,IAAK;MACvD,MAAMvB,OAAO,GAAGmB,YAAY,CAACI,WAAW,CAAC;MACzC,MAAMQ,WAAW,GAAG/B,OAAO,CAACQ,GAAG,CAAEwB,CAAC,IAAKA,CAAC,CAACvB,QAAQ,CAAC;QAAEwB,KAAK,EAAE;MAAK,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC;MAE9E,OAAO,GAAGjB,gBAAK,CAACkB,KAAK,CAACC,IAAI,CAACb,WAAW,CAAC,KAAKQ,WAAW,EAAE;IAC3D,CAAC,CAAC;IAEF,OAAOf,KAAK,GAAGc,QAAQ,CAACI,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM;EAC/C;EAEAG,eAAeA,CAACC,OAAqD,GAAG;IAAEC,QAAQ,EAAE;EAAK,CAAC,EAAU;IAClG,MAAMvB,KAAK,GAAG,iBAAiB,IAAI,CAACpB,WAAW,CAACa,QAAQ,CAAC,CAAC,MAAM;IAEhE,MAAMU,YAA6C,GAAG,CAAC,CAAC;IAExD,KAAK,MAAMP,GAAG,IAAI,IAAI,CAAClB,MAAM,CAACM,OAAO,EAAE;MACrC,MAAMsB,IAAI,GAAGpB,uBAAY,CAACC,cAAc,CAACS,GAAG,CAAC,GAAGA,GAAG,CAACR,UAAU,GAAGQ,GAAG;MACpE,MAAM4B,eAAe,GAAGlB,IAAI,CAAC9B,WAAW,CAACiD,IAAI;MAE7C,IAAI,CAACtB,YAAY,CAACqB,eAAe,CAAC,EAAE;QAClCrB,YAAY,CAACqB,eAAe,CAAC,GAAG,EAAE;MACpC;MAEArB,YAAY,CAACqB,eAAe,CAAC,CAACf,IAAI,CAACb,GAAG,CAAC;IACzC;IAEA,IAAI8B,MAAM,GAAGJ,OAAO,CAACK,UAAU,GAAG3B,KAAK,GAAG,EAAE;IAE5C,KAAK,MAAM,CAAC4B,WAAW,EAAE5C,OAAO,CAAC,IAAI2B,MAAM,CAACkB,OAAO,CAAC1B,YAAY,CAAC,EAAE;MACjE,MAAM2B,mBAAmB,GAAGR,OAAO,CAACK,UAAU,GAAG,IAAI,CAACI,sBAAsB,CAACH,WAAW,CAAC,GAAG,EAAE;MAE9FF,MAAM,IAAI,GAAGI,mBAAmB,MAAM;MAEtC,MAAMf,WAAW,GAAG/B,OAAO,CAACQ,GAAG,CAAEI,GAAG,IAAKA,GAAG,CAACyB,eAAe,CAACC,OAAO,CAAC,CAAC,CAACJ,IAAI,CAAC,MAAM,CAAC;MAEnFQ,MAAM,IAAI,GAAGX,WAAW,MAAM;IAChC;IAEA,OAAOW,MAAM,CAACM,IAAI,CAAC,CAAC;EACtB;EAEQD,sBAAsBA,CAACP,eAAuB,EAAU;IAC9D,MAAMS,cAAyC,GAAG;MAChDC,YAAY,EAAE,YAAY;MAC1BC,WAAW,EAAE,SAAS;MACtBC,eAAe,EAAE,YAAY;MAC7BC,kBAAkB,EAAE,WAAW;MAC/BC,kBAAkB,EAAE,WAAW;MAC/BC,UAAU,EAAE,OAAO;MACnBC,UAAU,EAAE,OAAO;MACnBC,aAAa,EAAE,iBAAiB;MAChCC,gBAAgB,EAAE,YAAY;MAC9BC,WAAW,EAAE;IACf,CAAC;IAED,OAAOV,cAAc,CAACT,eAAe,CAAC,IAAIA,eAAe;EAC3D;EAEAoB,cAAcA,CAAA,EAAG;IACf,OAAO,IAAI,CAAClE,MAAM,CAACM,OAAO,CAACQ,GAAG,CAAEI,GAAG,IAAKA,GAAG,CAACiD,SAAS,CAAC;EACxD;EAEAhD,QAAQA,CAAA,EAAG;IACT,OAAO;MACL,GAAG,KAAK,CAACA,QAAQ,CAAC,CAAC;MACnBnB,MAAM,EAAE,IAAI,CAACA,MAAM,CAACmB,QAAQ,CAAC,CAAC;MAC9BlB,SAAS,EAAE,IAAI,CAACA,SAAS,CAACa,GAAG,CAAEsD,CAAC,IAAKA,CAAC,CAACjD,QAAQ,CAAC,CAAC,CAAC;MAClDjB,WAAW,EAAE,IAAI,CAACA,WAAW,CAACiB,QAAQ,CAAC,CAAC;MACxChB,mBAAmB,EAAE,IAAI,CAACA,mBAAmB,CAACW,GAAG,CAAErB,CAAC,IAAKA,CAAC,CAAC0B,QAAQ,CAAC,CAAC;IACvE,CAAC;EACH;EAEA,OAAOkD,UAAUA,CAACC,GAAwB,EAAa;IACrD,MAAMvE,QAAwB,GAAGuE,GAAG,CAACvE,QAAQ;IAC7C,MAAMC,MAAoB,GAAGwD,uBAAY,CAACa,UAAU,CAACC,GAAG,CAACtE,MAAM,CAAC;IAChE,MAAMC,SAAyB,GAAG,CAACqE,GAAG,CAACrE,SAAS,IAAI,EAAE,EAAEa,GAAG,CAAEsD,CAAM,IAAKZ,uBAAY,CAACa,UAAU,CAACD,CAAC,CAAC,CAAC;IACnG,MAAMlE,WAAwB,GAAGqE,0BAAW,CAACF,UAAU,CAACC,GAAG,CAACpE,WAAW,CAAC;IACxE,MAAMC,mBAAmB,GAAG,CAACmE,GAAG,CAACnE,mBAAmB,IAAI,EAAE,EAAEW,GAAG,CAAErB,CAAM,IAAK+E,gCAAc,CAACH,UAAU,CAAC5E,CAAC,CAAC,CAAC;IACzG,OAAO,IAAIG,SAAS,CAACG,QAAQ,EAAEC,MAAM,EAAEC,SAAS,EAAEC,WAAW,EAAEC,mBAAmB,CAAC;EACrF;EAEA,OAAOsE,KAAKA,CAACvE,WAAwB,EAAE;IACrC,OAAO,IAAIN,SAAS,CAClB;MAAE8E,QAAQ,EAAE,EAAE;MAAEC,IAAI,EAAE,CAAC;MAAEC,SAAS,EAAE;IAAE,CAAC,EACvC,KAAIpB,uBAAY,EAAC;MAAEkB,QAAQ,EAAE,EAAE;MAAEC,IAAI,EAAE,CAAC;MAAEC,SAAS,EAAE;IAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EACjE,EAAE,EACF1E,WACF,CAAC;EACH;AACF;AAACI,OAAA,CAAAV,SAAA,GAAAA,SAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_componentId","_schemas","_schemaNode","_tag","_schemaRegistry","e","__esModule","default","APISchema","SchemaNode","constructor","location","module","internals","componentId","taggedModuleExports","length","listTaggedExports","exports","filter","ExportSchema","isExportSchema","exportNode","doc","hasTag","TagName","map","toString","JSON","stringify","exp","toObject","undefined","toStringPerType","title","chalk","inverse","exportGroups","reduce","acc","node","displayName","displaySchemaName","push","sortedDisplayNames","Object","keys","sort","sections","sectionBody","c","color","join","green","bold","toFullSignature","options","showDocs","constructorName","name","output","showTitles","sectionName","entries","readableSectionName","getReadableSectionName","trim","sectionNameMap","ModuleSchema","ClassSchema","InterfaceSchema","FunctionLikeSchema","VariableLikeSchema","TypeSchema","EnumSchema","TypeRefSchema","UnresolvedSchema","ReactSchema","listSignatures","signature","i","fromObject","obj","ComponentID","SchemaRegistry","empty","filePath","line","character"],"sources":["api-schema.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { ComponentID } from '@teambit/component-id';\nimport { ExportSchema, ModuleSchema } from './schemas';\nimport type { SchemaLocation } from './schema-node';\nimport { SchemaNode } from './schema-node';\nimport { TagName } from './schemas/docs/tag';\nimport { SchemaRegistry } from './schema-registry';\n\nexport class APISchema extends SchemaNode {\n readonly module: ModuleSchema; // index\n\n readonly internals: ModuleSchema[];\n\n readonly componentId: ComponentID;\n\n readonly taggedModuleExports: SchemaNode[];\n\n constructor(\n readonly location: SchemaLocation,\n module: ModuleSchema,\n internals: ModuleSchema[],\n componentId: ComponentID,\n taggedModuleExports: SchemaNode[] = []\n ) {\n super();\n this.module = module;\n this.internals = internals;\n this.componentId = componentId;\n taggedModuleExports = (taggedModuleExports.length && taggedModuleExports) || this.listTaggedExports(module);\n this.taggedModuleExports = taggedModuleExports;\n }\n\n listTaggedExports(module?: ModuleSchema): SchemaNode[] {\n if (!module) return [];\n return module.exports\n .filter((e) => {\n if (ExportSchema.isExportSchema(e)) {\n return e.exportNode.doc?.hasTag(TagName.exports) || e.doc?.hasTag(TagName.exports);\n }\n return e.doc?.hasTag(TagName.exports);\n })\n .map((e) => {\n if (ExportSchema.isExportSchema(e)) {\n return e.exportNode;\n }\n return e;\n });\n }\n\n toString() {\n return JSON.stringify(\n this.module.exports.map((exp) => exp.toObject()),\n undefined,\n 2\n );\n }\n\n toStringPerType() {\n const title = chalk.inverse(`API Schema of ${this.componentId.toString()}\\n`);\n\n const exportGroups = this.module.exports.reduce(\n (acc, exp) => {\n const node = ExportSchema.isExportSchema(exp) ? exp.exportNode : exp;\n\n const displayName = node.displaySchemaName;\n\n (acc[displayName] = acc[displayName] || []).push(exp);\n return acc;\n },\n {} as { [key: string]: SchemaNode[] }\n );\n\n const sortedDisplayNames = Object.keys(exportGroups).sort();\n\n if (sortedDisplayNames.length === 0) {\n return title;\n }\n\n const sections = sortedDisplayNames.map((displayName) => {\n const exports = exportGroups[displayName];\n const sectionBody = exports.map((c) => c.toString({ color: true })).join('\\n');\n\n return `${chalk.green.bold(displayName)}\\n${sectionBody}`;\n });\n\n return title + sections.join('\\n\\n') + '\\n\\n';\n }\n\n toFullSignature(options: { showDocs?: boolean; showTitles?: boolean } = { showDocs: true }): string {\n const title = `API Schema of ${this.componentId.toString()}\\n\\n`;\n\n const exportGroups: { [key: string]: SchemaNode[] } = {};\n\n for (const exp of this.module.exports) {\n const node = ExportSchema.isExportSchema(exp) ? exp.exportNode : exp;\n const constructorName = node.constructor.name;\n\n if (!exportGroups[constructorName]) {\n exportGroups[constructorName] = [];\n }\n\n exportGroups[constructorName].push(exp);\n }\n\n let output = options.showTitles ? title : '';\n\n for (const [sectionName, exports] of Object.entries(exportGroups)) {\n const readableSectionName = options.showTitles ? this.getReadableSectionName(sectionName) : '';\n\n output += `${readableSectionName}\\n\\n`;\n\n const sectionBody = exports.map((exp) => exp.toFullSignature(options)).join('\\n\\n');\n\n output += `${sectionBody}\\n\\n`;\n }\n\n return output.trim();\n }\n\n private getReadableSectionName(constructorName: string): string {\n const sectionNameMap: { [key: string]: string } = {\n ModuleSchema: 'Namespaces',\n ClassSchema: 'Classes',\n InterfaceSchema: 'Interfaces',\n FunctionLikeSchema: 'Functions',\n VariableLikeSchema: 'Variables',\n TypeSchema: 'Types',\n EnumSchema: 'Enums',\n TypeRefSchema: 'Type References',\n UnresolvedSchema: 'Unresolved',\n ReactSchema: 'React Components',\n };\n\n return sectionNameMap[constructorName] || constructorName;\n }\n\n listSignatures() {\n return this.module.exports.map((exp) => exp.signature);\n }\n\n toObject() {\n return {\n ...super.toObject(),\n module: this.module.toObject(),\n internals: this.internals.map((i) => i.toObject()),\n componentId: this.componentId.toObject(),\n taggedModuleExports: this.taggedModuleExports.map((e) => e.toObject()),\n };\n }\n\n static fromObject(obj: Record<string, any>): APISchema {\n const location: SchemaLocation = obj.location;\n const module: ModuleSchema = ModuleSchema.fromObject(obj.module);\n const internals: ModuleSchema[] = (obj.internals || []).map((i: any) => ModuleSchema.fromObject(i));\n const componentId: ComponentID = ComponentID.fromObject(obj.componentId);\n const taggedModuleExports = (obj.taggedModuleExports || []).map((e: any) => SchemaRegistry.fromObject(e));\n return new APISchema(location, module, internals, componentId, taggedModuleExports);\n }\n\n static empty(componentId: ComponentID) {\n return new APISchema(\n { filePath: '', line: 0, character: 0 },\n new ModuleSchema({ filePath: '', line: 0, character: 0 }, [], []),\n [],\n componentId\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["schema-node-constructor.ts"],"sourcesContent":["import { SchemaNode } from './schema-node';\n\nexport interface SchemaNodeConstructor {\n new (...args: any[]): SchemaNode;\n readonly prototype: SchemaNode;\n name: string;\n fromObject(obj: Record<string, any>): SchemaNode;\n}\n"],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":[],"sources":["schema-node-constructor.ts"],"sourcesContent":["import type { SchemaNode } from './schema-node';\n\nexport interface SchemaNodeConstructor {\n new (...args: any[]): SchemaNode;\n readonly prototype: SchemaNode;\n name: string;\n fromObject(obj: Record<string, any>): SchemaNode;\n}\n"],"mappings":"","ignoreList":[]}
|
package/dist/schema-node.d.ts
CHANGED
package/dist/schema-node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_lodash","data","require","_pluralize","_interopRequireDefault","e","__esModule","default","SchemaNode","__schema","constructor","name","displaySchemaName","pluralize","replace","trim","fromObject","obj","Error","toObject","pickBy","location","doc","undefined","signature","v","getNodes","getAllNodesRecursively","visitedNodes","Set","has","add","nodes","flatMap","node","findNode","predicate","child","foundNode","exports"],"sources":["schema-node.ts"],"sourcesContent":["import { pickBy } from 'lodash';\nimport pluralize from 'pluralize';\nimport { DocSchema } from './schemas';\n\nexport interface ISchemaNode {\n __schema: string;\n location: SchemaLocation;\n doc?: DocSchema;\n signature?: string;\n name?: string;\n toObject(): Record<string, any>;\n toString(options?: { color?: boolean }): string;\n toFullSignature(options?: { showDocs?: boolean }): string;\n getNodes(): SchemaNode[];\n findNode(predicate: (node: SchemaNode) => boolean, visitedNodes?: Set<SchemaNode>): SchemaNode | undefined;\n getAllNodesRecursively(visitedNodes?: Set<SchemaNode>): SchemaNode[];\n displaySchemaName: string;\n}\n\n/**\n * a convenient abstract class for all schema to extend.\n * the reason for having it as an abstract class and not an interface, for now, is mostly for the `__schema` prop.\n * this way it won't need to be implemented in each one of the subclasses.\n */\nexport abstract class SchemaNode implements ISchemaNode {\n readonly __schema = this.constructor.name;\n readonly displaySchemaName = pluralize(\n this.constructor.name\n .replace(/Schema$/, '')\n .replace(/([A-Z])/g, ' $1')\n .trim()\n );\n\n abstract readonly location: SchemaLocation;\n readonly doc?: DocSchema;\n readonly signature?: string;\n readonly name?: string;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static fromObject(obj: Record<string, any>): SchemaNode {\n throw new Error(`Method 'fromObject' not implemented in subclass.`);\n }\n\n toObject(): Record<string, any> {\n return pickBy(\n {\n __schema: this.__schema,\n location: this.location,\n doc: this.doc ? this.doc.toObject() : undefined,\n signature: this.signature,\n name: this.name,\n },\n (v) => v !== undefined\n );\n }\n\n abstract toString(options?: { color?: boolean }): string;\n abstract toFullSignature(options?: { showDocs?: boolean }): string;\n\n getNodes(): SchemaNode[] {\n return [this];\n }\n\n getAllNodesRecursively(visitedNodes = new Set<SchemaNode>()): SchemaNode[] {\n if (visitedNodes.has(this)) {\n return [];\n }\n\n visitedNodes.add(this);\n\n const nodes = this.getNodes();\n return [this, ...nodes.flatMap((node) => node.getAllNodesRecursively(visitedNodes))];\n }\n\n findNode(predicate: (node: SchemaNode) => boolean, visitedNodes = new Set<SchemaNode>()): SchemaNode | undefined {\n if (predicate(this)) return this;\n if (visitedNodes.has(this)) return undefined;\n\n visitedNodes.add(this);\n\n for (const child of this.getNodes()) {\n const foundNode = child.findNode(predicate, visitedNodes);\n if (foundNode) return foundNode;\n }\n\n return undefined;\n }\n}\n\nexport type SchemaLocation = {\n /**\n * file-path relative to the component root-dir. normalized to Linux.\n */\n filePath: string;\n line: number;\n character: number;\n};\n"],"mappings":";;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,WAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAkC,SAAAG,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAkBlC;AACA;AACA;AACA;AACA;AACO,MAAeG,UAAU,CAAwB;EAC7CC,QAAQ,GAAG,IAAI,CAACC,WAAW,CAACC,IAAI;EAChCC,iBAAiB,GAAG,IAAAC,oBAAS,EACpC,IAAI,CAACH,WAAW,CAACC,IAAI,CAClBG,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CACtBA,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAC1BC,IAAI,CAAC,CACV,CAAC;EAMD;EACA,OAAOC,UAAUA,CAACC,GAAwB,EAAc;IACtD,MAAM,IAAIC,KAAK,CAAC,kDAAkD,CAAC;EACrE;EAEAC,QAAQA,CAAA,EAAwB;IAC9B,OAAO,IAAAC,gBAAM,EACX;MACEX,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBY,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBC,GAAG,EAAE,IAAI,CAACA,GAAG,GAAG,IAAI,CAACA,GAAG,CAACH,QAAQ,CAAC,CAAC,GAAGI,SAAS;MAC/CC,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBb,IAAI,EAAE,IAAI,CAACA;IACb,CAAC,EACAc,CAAC,IAAKA,CAAC,KAAKF,SACf,CAAC;EACH;EAKAG,QAAQA,CAAA,EAAiB;IACvB,OAAO,CAAC,IAAI,CAAC;EACf;EAEAC,sBAAsBA,CAACC,YAAY,GAAG,IAAIC,GAAG,CAAa,CAAC,EAAgB;IACzE,IAAID,YAAY,CAACE,GAAG,CAAC,IAAI,CAAC,EAAE;MAC1B,OAAO,EAAE;IACX;IAEAF,YAAY,CAACG,GAAG,CAAC,IAAI,CAAC;IAEtB,MAAMC,KAAK,GAAG,IAAI,CAACN,QAAQ,CAAC,CAAC;IAC7B,OAAO,CAAC,IAAI,EAAE,GAAGM,KAAK,CAACC,OAAO,CAAEC,IAAI,IAAKA,IAAI,CAACP,sBAAsB,CAACC,YAAY,CAAC,CAAC,CAAC;EACtF;EAEAO,QAAQA,CAACC,SAAwC,EAAER,YAAY,GAAG,IAAIC,GAAG,CAAa,CAAC,EAA0B;IAC/G,IAAIO,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,IAAI;IAChC,IAAIR,YAAY,CAACE,GAAG,CAAC,IAAI,CAAC,EAAE,OAAOP,SAAS;IAE5CK,YAAY,CAACG,GAAG,CAAC,IAAI,CAAC;IAEtB,KAAK,MAAMM,KAAK,IAAI,IAAI,CAACX,QAAQ,CAAC,CAAC,EAAE;MACnC,MAAMY,SAAS,GAAGD,KAAK,CAACF,QAAQ,CAACC,SAAS,EAAER,YAAY,CAAC;MACzD,IAAIU,SAAS,EAAE,OAAOA,SAAS;IACjC;IAEA,OAAOf,SAAS;EAClB;AACF;AAACgB,OAAA,CAAA/B,UAAA,GAAAA,UAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_lodash","data","require","_pluralize","_interopRequireDefault","e","__esModule","default","SchemaNode","__schema","constructor","name","displaySchemaName","pluralize","replace","trim","fromObject","obj","Error","toObject","pickBy","location","doc","undefined","signature","v","getNodes","getAllNodesRecursively","visitedNodes","Set","has","add","nodes","flatMap","node","findNode","predicate","child","foundNode","exports"],"sources":["schema-node.ts"],"sourcesContent":["import { pickBy } from 'lodash';\nimport pluralize from 'pluralize';\nimport type { DocSchema } from './schemas';\n\nexport interface ISchemaNode {\n __schema: string;\n location: SchemaLocation;\n doc?: DocSchema;\n signature?: string;\n name?: string;\n toObject(): Record<string, any>;\n toString(options?: { color?: boolean }): string;\n toFullSignature(options?: { showDocs?: boolean }): string;\n getNodes(): SchemaNode[];\n findNode(predicate: (node: SchemaNode) => boolean, visitedNodes?: Set<SchemaNode>): SchemaNode | undefined;\n getAllNodesRecursively(visitedNodes?: Set<SchemaNode>): SchemaNode[];\n displaySchemaName: string;\n}\n\n/**\n * a convenient abstract class for all schema to extend.\n * the reason for having it as an abstract class and not an interface, for now, is mostly for the `__schema` prop.\n * this way it won't need to be implemented in each one of the subclasses.\n */\nexport abstract class SchemaNode implements ISchemaNode {\n readonly __schema = this.constructor.name;\n readonly displaySchemaName = pluralize(\n this.constructor.name\n .replace(/Schema$/, '')\n .replace(/([A-Z])/g, ' $1')\n .trim()\n );\n\n abstract readonly location: SchemaLocation;\n readonly doc?: DocSchema;\n readonly signature?: string;\n readonly name?: string;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n static fromObject(obj: Record<string, any>): SchemaNode {\n throw new Error(`Method 'fromObject' not implemented in subclass.`);\n }\n\n toObject(): Record<string, any> {\n return pickBy(\n {\n __schema: this.__schema,\n location: this.location,\n doc: this.doc ? this.doc.toObject() : undefined,\n signature: this.signature,\n name: this.name,\n },\n (v) => v !== undefined\n );\n }\n\n abstract toString(options?: { color?: boolean }): string;\n abstract toFullSignature(options?: { showDocs?: boolean }): string;\n\n getNodes(): SchemaNode[] {\n return [this];\n }\n\n getAllNodesRecursively(visitedNodes = new Set<SchemaNode>()): SchemaNode[] {\n if (visitedNodes.has(this)) {\n return [];\n }\n\n visitedNodes.add(this);\n\n const nodes = this.getNodes();\n return [this, ...nodes.flatMap((node) => node.getAllNodesRecursively(visitedNodes))];\n }\n\n findNode(predicate: (node: SchemaNode) => boolean, visitedNodes = new Set<SchemaNode>()): SchemaNode | undefined {\n if (predicate(this)) return this;\n if (visitedNodes.has(this)) return undefined;\n\n visitedNodes.add(this);\n\n for (const child of this.getNodes()) {\n const foundNode = child.findNode(predicate, visitedNodes);\n if (foundNode) return foundNode;\n }\n\n return undefined;\n }\n}\n\nexport type SchemaLocation = {\n /**\n * file-path relative to the component root-dir. normalized to Linux.\n */\n filePath: string;\n line: number;\n character: number;\n};\n"],"mappings":";;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,WAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAkC,SAAAG,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAkBlC;AACA;AACA;AACA;AACA;AACO,MAAeG,UAAU,CAAwB;EAC7CC,QAAQ,GAAG,IAAI,CAACC,WAAW,CAACC,IAAI;EAChCC,iBAAiB,GAAG,IAAAC,oBAAS,EACpC,IAAI,CAACH,WAAW,CAACC,IAAI,CAClBG,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CACtBA,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAC1BC,IAAI,CAAC,CACV,CAAC;EAMD;EACA,OAAOC,UAAUA,CAACC,GAAwB,EAAc;IACtD,MAAM,IAAIC,KAAK,CAAC,kDAAkD,CAAC;EACrE;EAEAC,QAAQA,CAAA,EAAwB;IAC9B,OAAO,IAAAC,gBAAM,EACX;MACEX,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBY,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBC,GAAG,EAAE,IAAI,CAACA,GAAG,GAAG,IAAI,CAACA,GAAG,CAACH,QAAQ,CAAC,CAAC,GAAGI,SAAS;MAC/CC,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBb,IAAI,EAAE,IAAI,CAACA;IACb,CAAC,EACAc,CAAC,IAAKA,CAAC,KAAKF,SACf,CAAC;EACH;EAKAG,QAAQA,CAAA,EAAiB;IACvB,OAAO,CAAC,IAAI,CAAC;EACf;EAEAC,sBAAsBA,CAACC,YAAY,GAAG,IAAIC,GAAG,CAAa,CAAC,EAAgB;IACzE,IAAID,YAAY,CAACE,GAAG,CAAC,IAAI,CAAC,EAAE;MAC1B,OAAO,EAAE;IACX;IAEAF,YAAY,CAACG,GAAG,CAAC,IAAI,CAAC;IAEtB,MAAMC,KAAK,GAAG,IAAI,CAACN,QAAQ,CAAC,CAAC;IAC7B,OAAO,CAAC,IAAI,EAAE,GAAGM,KAAK,CAACC,OAAO,CAAEC,IAAI,IAAKA,IAAI,CAACP,sBAAsB,CAACC,YAAY,CAAC,CAAC,CAAC;EACtF;EAEAO,QAAQA,CAACC,SAAwC,EAAER,YAAY,GAAG,IAAIC,GAAG,CAAa,CAAC,EAA0B;IAC/G,IAAIO,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,IAAI;IAChC,IAAIR,YAAY,CAACE,GAAG,CAAC,IAAI,CAAC,EAAE,OAAOP,SAAS;IAE5CK,YAAY,CAACG,GAAG,CAAC,IAAI,CAAC;IAEtB,KAAK,MAAMM,KAAK,IAAI,IAAI,CAACX,QAAQ,CAAC,CAAC,EAAE;MACnC,MAAMY,SAAS,GAAGD,KAAK,CAACF,QAAQ,CAACC,SAAS,EAAER,YAAY,CAAC;MACzD,IAAIU,SAAS,EAAE,OAAOA,SAAS;IACjC;IAEA,OAAOf,SAAS;EAClB;AACF;AAACgB,OAAA,CAAA/B,UAAA,GAAAA,UAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_unknownSchemaFactory","data","require","SchemaRegistry","instance","_getSchemas","constructor","_schemas","registerGetSchemas","getSchemas","push","register","schema","name","schemas","forEach","fromObject","obj","__schema","Error","SchemaClass","UnknownSchemaFactory","create","location","path","line","character","exports"],"sources":["schema-registry.ts"],"sourcesContent":["import { SchemaNodeConstructor } from './schema-node-constructor';\nimport { UnknownSchemaFactory } from './unknown-schema-factory';\n\ntype GetSchemaFunc = () => SchemaNodeConstructor[];\n\nexport class SchemaRegistry {\n private static instance = new SchemaRegistry();\n private _schemas: Record<string, SchemaNodeConstructor>;\n private _getSchemas: GetSchemaFunc[] = [];\n\n private constructor() {\n this._schemas = {};\n }\n\n static registerGetSchemas(getSchemas: GetSchemaFunc) {\n this.instance._getSchemas.push(getSchemas);\n }\n\n /**\n * @deprecated use registerGetSchemas instead\n * registerGetSchemas is better for performance as it lazy-loads the schemas.\n */\n static register(schema: SchemaNodeConstructor) {\n if (this.instance._schemas[schema.name]) return;\n this.instance._schemas[schema.name] = schema;\n }\n\n static schemas() {\n // this happens only once. as soon as the function is called, it registers all the schemas.\n this.instance._getSchemas.forEach((getSchemas) => {\n const schemas = getSchemas();\n schemas.forEach((schema) => {\n if (this.instance._schemas[schema.name]) return;\n this.instance._schemas[schema.name] = schema;\n });\n });\n this.instance._getSchemas = [];\n return this.instance._schemas;\n }\n\n static fromObject(obj: Record<string, any>) {\n if (!obj.__schema) {\n throw new Error(`fatal: \"__schema\" is missing, make sure the transformer is set on SchemaNode type`);\n }\n const schemas = this.schemas();\n const SchemaClass = schemas[obj.__schema];\n if (!SchemaClass) {\n // for backward and forward compatibility, to not break the users, it's better to return an unknown schema than throwing.\n return UnknownSchemaFactory.create(obj.location || { path: '', line: 0, character: 0 }, obj.__schema, obj);\n }\n return SchemaClass.fromObject(obj);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,sBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,qBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIO,MAAME,cAAc,CAAC;EAC1B,OAAeC,QAAQ,GAAG,IAAID,cAAc,CAAC,CAAC;EAEtCE,WAAW,GAAoB,EAAE;EAEjCC,WAAWA,CAAA,EAAG;IACpB,IAAI,CAACC,QAAQ,GAAG,CAAC,CAAC;EACpB;EAEA,OAAOC,kBAAkBA,CAACC,UAAyB,EAAE;IACnD,IAAI,CAACL,QAAQ,CAACC,WAAW,CAACK,IAAI,CAACD,UAAU,CAAC;EAC5C;;EAEA;AACF;AACA;AACA;EACE,OAAOE,QAAQA,CAACC,MAA6B,EAAE;IAC7C,IAAI,IAAI,CAACR,QAAQ,CAACG,QAAQ,CAACK,MAAM,CAACC,IAAI,CAAC,EAAE;IACzC,IAAI,CAACT,QAAQ,CAACG,QAAQ,CAACK,MAAM,CAACC,IAAI,CAAC,GAAGD,MAAM;EAC9C;EAEA,OAAOE,OAAOA,CAAA,EAAG;IACf;IACA,IAAI,CAACV,QAAQ,CAACC,WAAW,CAACU,OAAO,CAAEN,UAAU,IAAK;MAChD,MAAMK,OAAO,GAAGL,UAAU,CAAC,CAAC;MAC5BK,OAAO,CAACC,OAAO,CAAEH,MAAM,IAAK;QAC1B,IAAI,IAAI,CAACR,QAAQ,CAACG,QAAQ,CAACK,MAAM,CAACC,IAAI,CAAC,EAAE;QACzC,IAAI,CAACT,QAAQ,CAACG,QAAQ,CAACK,MAAM,CAACC,IAAI,CAAC,GAAGD,MAAM;MAC9C,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,IAAI,CAACR,QAAQ,CAACC,WAAW,GAAG,EAAE;IAC9B,OAAO,IAAI,CAACD,QAAQ,CAACG,QAAQ;EAC/B;EAEA,OAAOS,UAAUA,CAACC,GAAwB,EAAE;IAC1C,IAAI,CAACA,GAAG,CAACC,QAAQ,EAAE;MACjB,MAAM,IAAIC,KAAK,CAAC,mFAAmF,CAAC;IACtG;IACA,MAAML,OAAO,GAAG,IAAI,CAACA,OAAO,CAAC,CAAC;IAC9B,MAAMM,WAAW,GAAGN,OAAO,CAACG,GAAG,CAACC,QAAQ,CAAC;IACzC,IAAI,CAACE,WAAW,EAAE;MAChB;MACA,OAAOC,4CAAoB,CAACC,MAAM,CAACL,GAAG,CAACM,QAAQ,IAAI;QAAEC,IAAI,EAAE,EAAE;QAAEC,IAAI,EAAE,CAAC;QAAEC,SAAS,EAAE;MAAE,CAAC,EAAET,GAAG,CAACC,QAAQ,EAAED,GAAG,CAAC;IAC5G;IACA,OAAOG,WAAW,CAACJ,UAAU,CAACC,GAAG,CAAC;EACpC;AACF;AAACU,OAAA,CAAAxB,cAAA,GAAAA,cAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_unknownSchemaFactory","data","require","SchemaRegistry","instance","_getSchemas","constructor","_schemas","registerGetSchemas","getSchemas","push","register","schema","name","schemas","forEach","fromObject","obj","__schema","Error","SchemaClass","UnknownSchemaFactory","create","location","path","line","character","exports"],"sources":["schema-registry.ts"],"sourcesContent":["import type { SchemaNodeConstructor } from './schema-node-constructor';\nimport { UnknownSchemaFactory } from './unknown-schema-factory';\n\ntype GetSchemaFunc = () => SchemaNodeConstructor[];\n\nexport class SchemaRegistry {\n private static instance = new SchemaRegistry();\n private _schemas: Record<string, SchemaNodeConstructor>;\n private _getSchemas: GetSchemaFunc[] = [];\n\n private constructor() {\n this._schemas = {};\n }\n\n static registerGetSchemas(getSchemas: GetSchemaFunc) {\n this.instance._getSchemas.push(getSchemas);\n }\n\n /**\n * @deprecated use registerGetSchemas instead\n * registerGetSchemas is better for performance as it lazy-loads the schemas.\n */\n static register(schema: SchemaNodeConstructor) {\n if (this.instance._schemas[schema.name]) return;\n this.instance._schemas[schema.name] = schema;\n }\n\n static schemas() {\n // this happens only once. as soon as the function is called, it registers all the schemas.\n this.instance._getSchemas.forEach((getSchemas) => {\n const schemas = getSchemas();\n schemas.forEach((schema) => {\n if (this.instance._schemas[schema.name]) return;\n this.instance._schemas[schema.name] = schema;\n });\n });\n this.instance._getSchemas = [];\n return this.instance._schemas;\n }\n\n static fromObject(obj: Record<string, any>) {\n if (!obj.__schema) {\n throw new Error(`fatal: \"__schema\" is missing, make sure the transformer is set on SchemaNode type`);\n }\n const schemas = this.schemas();\n const SchemaClass = schemas[obj.__schema];\n if (!SchemaClass) {\n // for backward and forward compatibility, to not break the users, it's better to return an unknown schema than throwing.\n return UnknownSchemaFactory.create(obj.location || { path: '', line: 0, character: 0 }, obj.__schema, obj);\n }\n return SchemaClass.fromObject(obj);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,sBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,qBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIO,MAAME,cAAc,CAAC;EAC1B,OAAeC,QAAQ,GAAG,IAAID,cAAc,CAAC,CAAC;EAEtCE,WAAW,GAAoB,EAAE;EAEjCC,WAAWA,CAAA,EAAG;IACpB,IAAI,CAACC,QAAQ,GAAG,CAAC,CAAC;EACpB;EAEA,OAAOC,kBAAkBA,CAACC,UAAyB,EAAE;IACnD,IAAI,CAACL,QAAQ,CAACC,WAAW,CAACK,IAAI,CAACD,UAAU,CAAC;EAC5C;;EAEA;AACF;AACA;AACA;EACE,OAAOE,QAAQA,CAACC,MAA6B,EAAE;IAC7C,IAAI,IAAI,CAACR,QAAQ,CAACG,QAAQ,CAACK,MAAM,CAACC,IAAI,CAAC,EAAE;IACzC,IAAI,CAACT,QAAQ,CAACG,QAAQ,CAACK,MAAM,CAACC,IAAI,CAAC,GAAGD,MAAM;EAC9C;EAEA,OAAOE,OAAOA,CAAA,EAAG;IACf;IACA,IAAI,CAACV,QAAQ,CAACC,WAAW,CAACU,OAAO,CAAEN,UAAU,IAAK;MAChD,MAAMK,OAAO,GAAGL,UAAU,CAAC,CAAC;MAC5BK,OAAO,CAACC,OAAO,CAAEH,MAAM,IAAK;QAC1B,IAAI,IAAI,CAACR,QAAQ,CAACG,QAAQ,CAACK,MAAM,CAACC,IAAI,CAAC,EAAE;QACzC,IAAI,CAACT,QAAQ,CAACG,QAAQ,CAACK,MAAM,CAACC,IAAI,CAAC,GAAGD,MAAM;MAC9C,CAAC,CAAC;IACJ,CAAC,CAAC;IACF,IAAI,CAACR,QAAQ,CAACC,WAAW,GAAG,EAAE;IAC9B,OAAO,IAAI,CAACD,QAAQ,CAACG,QAAQ;EAC/B;EAEA,OAAOS,UAAUA,CAACC,GAAwB,EAAE;IAC1C,IAAI,CAACA,GAAG,CAACC,QAAQ,EAAE;MACjB,MAAM,IAAIC,KAAK,CAAC,mFAAmF,CAAC;IACtG;IACA,MAAML,OAAO,GAAG,IAAI,CAACA,OAAO,CAAC,CAAC;IAC9B,MAAMM,WAAW,GAAGN,OAAO,CAACG,GAAG,CAACC,QAAQ,CAAC;IACzC,IAAI,CAACE,WAAW,EAAE;MAChB;MACA,OAAOC,4CAAoB,CAACC,MAAM,CAACL,GAAG,CAACM,QAAQ,IAAI;QAAEC,IAAI,EAAE,EAAE;QAAEC,IAAI,EAAE,CAAC;QAAEC,SAAS,EAAE;MAAE,CAAC,EAAET,GAAG,CAACC,QAAQ,EAAED,GAAG,CAAC;IAC5G;IACA,OAAOG,WAAW,CAACJ,UAAU,CAACC,GAAG,CAAC;EACpC;AACF;AAACU,OAAA,CAAAxB,cAAA,GAAAA,cAAA","ignoreList":[]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { SchemaLocation
|
|
1
|
+
import type { SchemaLocation } from '../schema-node';
|
|
2
|
+
import { SchemaNode } from '../schema-node';
|
|
2
3
|
export declare class ArrayLiteralExpressionSchema extends SchemaNode {
|
|
3
4
|
readonly members: SchemaNode[];
|
|
4
5
|
readonly location: SchemaLocation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schemaNode","data","require","_schemaRegistry","ArrayLiteralExpressionSchema","SchemaNode","constructor","members","location","toObject","map","member","fromObject","obj","SchemaRegistry","toString","join","toFullSignature","options","membersStr","exports"],"sources":["array-literal-expression.ts"],"sourcesContent":["import { SchemaLocation
|
|
1
|
+
{"version":3,"names":["_schemaNode","data","require","_schemaRegistry","ArrayLiteralExpressionSchema","SchemaNode","constructor","members","location","toObject","map","member","fromObject","obj","SchemaRegistry","toString","join","toFullSignature","options","membersStr","exports"],"sources":["array-literal-expression.ts"],"sourcesContent":["import type { SchemaLocation } from '../schema-node';\nimport { SchemaNode } from '../schema-node';\nimport { SchemaRegistry } from '../schema-registry';\n\nexport class ArrayLiteralExpressionSchema extends SchemaNode {\n constructor(\n readonly members: SchemaNode[],\n readonly location: SchemaLocation\n ) {\n super();\n }\n\n toObject() {\n return {\n ...super.toObject(),\n members: this.members.map((member) => member.toObject()),\n location: this.location,\n };\n }\n\n static fromObject(obj: Record<string, any>): ArrayLiteralExpressionSchema {\n const members = obj.members.map((member) => SchemaRegistry.fromObject(member));\n return new ArrayLiteralExpressionSchema(members, obj.location);\n }\n\n toString(): string {\n return `[${this.members.join(', ')}]`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n const membersStr = this.members.map((member) => member.toFullSignature(options)).join(', ');\n return `[${membersStr}]`;\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,YAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,WAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,gBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,eAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMG,4BAA4B,SAASC,wBAAU,CAAC;EAC3DC,WAAWA,CACAC,OAAqB,EACrBC,QAAwB,EACjC;IACA,KAAK,CAAC,CAAC;IAAC,KAHCD,OAAqB,GAArBA,OAAqB;IAAA,KACrBC,QAAwB,GAAxBA,QAAwB;EAGnC;EAEAC,QAAQA,CAAA,EAAG;IACT,OAAO;MACL,GAAG,KAAK,CAACA,QAAQ,CAAC,CAAC;MACnBF,OAAO,EAAE,IAAI,CAACA,OAAO,CAACG,GAAG,CAAEC,MAAM,IAAKA,MAAM,CAACF,QAAQ,CAAC,CAAC,CAAC;MACxDD,QAAQ,EAAE,IAAI,CAACA;IACjB,CAAC;EACH;EAEA,OAAOI,UAAUA,CAACC,GAAwB,EAAgC;IACxE,MAAMN,OAAO,GAAGM,GAAG,CAACN,OAAO,CAACG,GAAG,CAAEC,MAAM,IAAKG,gCAAc,CAACF,UAAU,CAACD,MAAM,CAAC,CAAC;IAC9E,OAAO,IAAIP,4BAA4B,CAACG,OAAO,EAAEM,GAAG,CAACL,QAAQ,CAAC;EAChE;EAEAO,QAAQA,CAAA,EAAW;IACjB,OAAO,IAAI,IAAI,CAACR,OAAO,CAACS,IAAI,CAAC,IAAI,CAAC,GAAG;EACvC;EAEAC,eAAeA,CAACC,OAAgC,EAAU;IACxD,MAAMC,UAAU,GAAG,IAAI,CAACZ,OAAO,CAACG,GAAG,CAAEC,MAAM,IAAKA,MAAM,CAACM,eAAe,CAACC,OAAO,CAAC,CAAC,CAACF,IAAI,CAAC,IAAI,CAAC;IAC3F,OAAO,IAAIG,UAAU,GAAG;EAC1B;AACF;AAACC,OAAA,CAAAhB,4BAAA,GAAAA,4BAAA","ignoreList":[]}
|
package/dist/schemas/class.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { SchemaLocation
|
|
1
|
+
import type { SchemaLocation } from '../schema-node';
|
|
2
|
+
import { SchemaNode } from '../schema-node';
|
|
2
3
|
import { DocSchema } from './docs';
|
|
3
4
|
import { ExpressionWithTypeArgumentsSchema } from './expression-with-arguments';
|
|
4
5
|
export declare class ClassSchema extends SchemaNode {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_schemaNode","_docs","_expressionWithArguments","_schemaRegistry","e","__esModule","default","ClassSchema","SchemaNode","constructor","name","members","location","signature","doc","typeParams","extendsNodes","implementNodes","decorators","getNodes","toString","options","boldUnderline","color","chalk","bold","underline","str","membersStr","map","m","join","decoratorsStr","decorator","toFullSignature","result","showDocs","classDeclaration","length","extendsStr","node","implementsStr","member","memberStr","split","line","toObject","fromObject","obj","SchemaRegistry","DocSchema","undefined","ExpressionWithTypeArgumentsSchema","fromSchema","memberTransformer","_node","exports"],"sources":["class.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { SchemaLocation, SchemaNode } from '../schema-node';\nimport { DocSchema } from './docs';\nimport { ExpressionWithTypeArgumentsSchema } from './expression-with-arguments';\nimport { SchemaRegistry } from '../schema-registry';\n\nexport class ClassSchema extends SchemaNode {\n readonly members: SchemaNode[];\n readonly doc?: DocSchema;\n\n constructor(\n readonly name: string,\n members: SchemaNode[],\n readonly location: SchemaLocation,\n readonly signature: string,\n doc?: DocSchema,\n readonly typeParams?: string[],\n readonly extendsNodes?: ExpressionWithTypeArgumentsSchema[],\n readonly implementNodes?: ExpressionWithTypeArgumentsSchema[],\n readonly decorators?: SchemaNode[]\n ) {\n super();\n this.members = members;\n this.doc = doc;\n }\n\n getNodes() {\n return this.members;\n }\n\n toString(options?: { color?: boolean }): string {\n const boldUnderline = options?.color ? chalk.bold.underline : (str: string) => str;\n const membersStr = this.members.map((m) => `* ${m.toString(options)}`).join('\\n');\n const decoratorsStr = this.decorators?.map((decorator) => decorator.toString(options)).join('\\n');\n return `${this.decorators ? `${decoratorsStr}\\n` : ''}${boldUnderline(this.name)}\\n${membersStr}`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n let result = '';\n\n if (options?.showDocs && this.doc) {\n result += `${this.doc.toFullSignature()}\\n`;\n }\n\n const decoratorsStr = this.decorators?.map((decorator) => decorator.toFullSignature(options)).join('\\n');\n if (decoratorsStr) {\n result += `${decoratorsStr}\\n`;\n }\n\n let classDeclaration = `class ${this.name}`;\n\n if (this.typeParams && this.typeParams.length > 0) {\n classDeclaration += `<${this.typeParams.join(', ')}>`;\n }\n\n if (this.extendsNodes && this.extendsNodes.length > 0) {\n const extendsStr = this.extendsNodes.map((node) => node.toFullSignature(options)).join(', ');\n classDeclaration += ` extends ${extendsStr}`;\n }\n\n if (this.implementNodes && this.implementNodes.length > 0) {\n const implementsStr = this.implementNodes.map((node) => node.toFullSignature(options)).join(', ');\n classDeclaration += ` implements ${implementsStr}`;\n }\n\n result += `${classDeclaration} {\\n`;\n\n const membersStr = this.members\n .map((member) => {\n const memberStr = member.toFullSignature(options);\n return memberStr\n .split('\\n')\n .map((line) => ` ${line}`)\n .join('\\n');\n })\n .join('\\n');\n\n result += `${membersStr}\\n`;\n\n result += `}`;\n\n return result;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n name: this.name,\n members: this.members.map((member) => member.toObject()),\n doc: this.doc?.toObject(),\n signature: this.signature,\n typeParams: this.typeParams,\n extendsNodes: this.extendsNodes?.map((node) => node.toObject()),\n implementNodes: this.implementNodes?.map((node) => node.toObject()),\n decorators: this.decorators?.map((decorator) => decorator.toObject()),\n };\n }\n\n static fromObject(obj: Record<string, any>): ClassSchema {\n const name = obj.name;\n const members = obj.members.map((member: any) => SchemaRegistry.fromObject(member));\n const location = obj.location;\n const signature = obj.signature;\n const doc = obj.doc ? DocSchema.fromObject(obj.doc) : undefined;\n const typeParams = obj.typeParams;\n const extendsNodes = obj.extendsNodes?.map((node: any) => ExpressionWithTypeArgumentsSchema.fromObject(node));\n const implementNodes = obj.implementNodes?.map((node: any) => ExpressionWithTypeArgumentsSchema.fromObject(node));\n const decorators = obj.decorators?.map((decorator: any) => SchemaRegistry.fromObject(decorator));\n return new ClassSchema(\n name,\n members,\n location,\n signature,\n doc,\n typeParams,\n extendsNodes,\n implementNodes,\n decorators\n );\n }\n\n static fromSchema(node: ClassSchema, memberTransformer: (_node: SchemaNode) => SchemaNode = (_node) => _node) {\n return new ClassSchema(\n node.name,\n node.members.map(memberTransformer),\n node.location,\n node.signature,\n node.doc,\n node.typeParams,\n node.extendsNodes,\n node.implementNodes,\n node.decorators\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_schemaNode","_docs","_expressionWithArguments","_schemaRegistry","e","__esModule","default","ClassSchema","SchemaNode","constructor","name","members","location","signature","doc","typeParams","extendsNodes","implementNodes","decorators","getNodes","toString","options","boldUnderline","color","chalk","bold","underline","str","membersStr","map","m","join","decoratorsStr","decorator","toFullSignature","result","showDocs","classDeclaration","length","extendsStr","node","implementsStr","member","memberStr","split","line","toObject","fromObject","obj","SchemaRegistry","DocSchema","undefined","ExpressionWithTypeArgumentsSchema","fromSchema","memberTransformer","_node","exports"],"sources":["class.ts"],"sourcesContent":["import chalk from 'chalk';\nimport type { SchemaLocation } from '../schema-node';\nimport { SchemaNode } from '../schema-node';\nimport { DocSchema } from './docs';\nimport { ExpressionWithTypeArgumentsSchema } from './expression-with-arguments';\nimport { SchemaRegistry } from '../schema-registry';\n\nexport class ClassSchema extends SchemaNode {\n readonly members: SchemaNode[];\n readonly doc?: DocSchema;\n\n constructor(\n readonly name: string,\n members: SchemaNode[],\n readonly location: SchemaLocation,\n readonly signature: string,\n doc?: DocSchema,\n readonly typeParams?: string[],\n readonly extendsNodes?: ExpressionWithTypeArgumentsSchema[],\n readonly implementNodes?: ExpressionWithTypeArgumentsSchema[],\n readonly decorators?: SchemaNode[]\n ) {\n super();\n this.members = members;\n this.doc = doc;\n }\n\n getNodes() {\n return this.members;\n }\n\n toString(options?: { color?: boolean }): string {\n const boldUnderline = options?.color ? chalk.bold.underline : (str: string) => str;\n const membersStr = this.members.map((m) => `* ${m.toString(options)}`).join('\\n');\n const decoratorsStr = this.decorators?.map((decorator) => decorator.toString(options)).join('\\n');\n return `${this.decorators ? `${decoratorsStr}\\n` : ''}${boldUnderline(this.name)}\\n${membersStr}`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n let result = '';\n\n if (options?.showDocs && this.doc) {\n result += `${this.doc.toFullSignature()}\\n`;\n }\n\n const decoratorsStr = this.decorators?.map((decorator) => decorator.toFullSignature(options)).join('\\n');\n if (decoratorsStr) {\n result += `${decoratorsStr}\\n`;\n }\n\n let classDeclaration = `class ${this.name}`;\n\n if (this.typeParams && this.typeParams.length > 0) {\n classDeclaration += `<${this.typeParams.join(', ')}>`;\n }\n\n if (this.extendsNodes && this.extendsNodes.length > 0) {\n const extendsStr = this.extendsNodes.map((node) => node.toFullSignature(options)).join(', ');\n classDeclaration += ` extends ${extendsStr}`;\n }\n\n if (this.implementNodes && this.implementNodes.length > 0) {\n const implementsStr = this.implementNodes.map((node) => node.toFullSignature(options)).join(', ');\n classDeclaration += ` implements ${implementsStr}`;\n }\n\n result += `${classDeclaration} {\\n`;\n\n const membersStr = this.members\n .map((member) => {\n const memberStr = member.toFullSignature(options);\n return memberStr\n .split('\\n')\n .map((line) => ` ${line}`)\n .join('\\n');\n })\n .join('\\n');\n\n result += `${membersStr}\\n`;\n\n result += `}`;\n\n return result;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n name: this.name,\n members: this.members.map((member) => member.toObject()),\n doc: this.doc?.toObject(),\n signature: this.signature,\n typeParams: this.typeParams,\n extendsNodes: this.extendsNodes?.map((node) => node.toObject()),\n implementNodes: this.implementNodes?.map((node) => node.toObject()),\n decorators: this.decorators?.map((decorator) => decorator.toObject()),\n };\n }\n\n static fromObject(obj: Record<string, any>): ClassSchema {\n const name = obj.name;\n const members = obj.members.map((member: any) => SchemaRegistry.fromObject(member));\n const location = obj.location;\n const signature = obj.signature;\n const doc = obj.doc ? DocSchema.fromObject(obj.doc) : undefined;\n const typeParams = obj.typeParams;\n const extendsNodes = obj.extendsNodes?.map((node: any) => ExpressionWithTypeArgumentsSchema.fromObject(node));\n const implementNodes = obj.implementNodes?.map((node: any) => ExpressionWithTypeArgumentsSchema.fromObject(node));\n const decorators = obj.decorators?.map((decorator: any) => SchemaRegistry.fromObject(decorator));\n return new ClassSchema(\n name,\n members,\n location,\n signature,\n doc,\n typeParams,\n extendsNodes,\n implementNodes,\n decorators\n );\n }\n\n static fromSchema(node: ClassSchema, memberTransformer: (_node: SchemaNode) => SchemaNode = (_node) => _node) {\n return new ClassSchema(\n node.name,\n node.members.map(memberTransformer),\n node.location,\n node.signature,\n node.doc,\n node.typeParams,\n node.extendsNodes,\n node.implementNodes,\n node.decorators\n );\n }\n}\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,YAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,WAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,MAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,KAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,yBAAA;EAAA,MAAAL,IAAA,GAAAE,OAAA;EAAAG,wBAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,gBAAA;EAAA,MAAAN,IAAA,GAAAE,OAAA;EAAAI,eAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAoD,SAAAC,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE7C,MAAMG,WAAW,SAASC,wBAAU,CAAC;EAI1CC,WAAWA,CACAC,IAAY,EACrBC,OAAqB,EACZC,QAAwB,EACxBC,SAAiB,EAC1BC,GAAe,EACNC,UAAqB,EACrBC,YAAkD,EAClDC,cAAoD,EACpDC,UAAyB,EAClC;IACA,KAAK,CAAC,CAAC;IAAC,KAVCR,IAAY,GAAZA,IAAY;IAAA,KAEZE,QAAwB,GAAxBA,QAAwB;IAAA,KACxBC,SAAiB,GAAjBA,SAAiB;IAAA,KAEjBE,UAAqB,GAArBA,UAAqB;IAAA,KACrBC,YAAkD,GAAlDA,YAAkD;IAAA,KAClDC,cAAoD,GAApDA,cAAoD;IAAA,KACpDC,UAAyB,GAAzBA,UAAyB;IAGlC,IAAI,CAACP,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACG,GAAG,GAAGA,GAAG;EAChB;EAEAK,QAAQA,CAAA,EAAG;IACT,OAAO,IAAI,CAACR,OAAO;EACrB;EAEAS,QAAQA,CAACC,OAA6B,EAAU;IAC9C,MAAMC,aAAa,GAAGD,OAAO,EAAEE,KAAK,GAAGC,gBAAK,CAACC,IAAI,CAACC,SAAS,GAAIC,GAAW,IAAKA,GAAG;IAClF,MAAMC,UAAU,GAAG,IAAI,CAACjB,OAAO,CAACkB,GAAG,CAAEC,CAAC,IAAK,KAAKA,CAAC,CAACV,QAAQ,CAACC,OAAO,CAAC,EAAE,CAAC,CAACU,IAAI,CAAC,IAAI,CAAC;IACjF,MAAMC,aAAa,GAAG,IAAI,CAACd,UAAU,EAAEW,GAAG,CAAEI,SAAS,IAAKA,SAAS,CAACb,QAAQ,CAACC,OAAO,CAAC,CAAC,CAACU,IAAI,CAAC,IAAI,CAAC;IACjG,OAAO,GAAG,IAAI,CAACb,UAAU,GAAG,GAAGc,aAAa,IAAI,GAAG,EAAE,GAAGV,aAAa,CAAC,IAAI,CAACZ,IAAI,CAAC,KAAKkB,UAAU,EAAE;EACnG;EAEAM,eAAeA,CAACb,OAAgC,EAAU;IACxD,IAAIc,MAAM,GAAG,EAAE;IAEf,IAAId,OAAO,EAAEe,QAAQ,IAAI,IAAI,CAACtB,GAAG,EAAE;MACjCqB,MAAM,IAAI,GAAG,IAAI,CAACrB,GAAG,CAACoB,eAAe,CAAC,CAAC,IAAI;IAC7C;IAEA,MAAMF,aAAa,GAAG,IAAI,CAACd,UAAU,EAAEW,GAAG,CAAEI,SAAS,IAAKA,SAAS,CAACC,eAAe,CAACb,OAAO,CAAC,CAAC,CAACU,IAAI,CAAC,IAAI,CAAC;IACxG,IAAIC,aAAa,EAAE;MACjBG,MAAM,IAAI,GAAGH,aAAa,IAAI;IAChC;IAEA,IAAIK,gBAAgB,GAAG,SAAS,IAAI,CAAC3B,IAAI,EAAE;IAE3C,IAAI,IAAI,CAACK,UAAU,IAAI,IAAI,CAACA,UAAU,CAACuB,MAAM,GAAG,CAAC,EAAE;MACjDD,gBAAgB,IAAI,IAAI,IAAI,CAACtB,UAAU,CAACgB,IAAI,CAAC,IAAI,CAAC,GAAG;IACvD;IAEA,IAAI,IAAI,CAACf,YAAY,IAAI,IAAI,CAACA,YAAY,CAACsB,MAAM,GAAG,CAAC,EAAE;MACrD,MAAMC,UAAU,GAAG,IAAI,CAACvB,YAAY,CAACa,GAAG,CAAEW,IAAI,IAAKA,IAAI,CAACN,eAAe,CAACb,OAAO,CAAC,CAAC,CAACU,IAAI,CAAC,IAAI,CAAC;MAC5FM,gBAAgB,IAAI,YAAYE,UAAU,EAAE;IAC9C;IAEA,IAAI,IAAI,CAACtB,cAAc,IAAI,IAAI,CAACA,cAAc,CAACqB,MAAM,GAAG,CAAC,EAAE;MACzD,MAAMG,aAAa,GAAG,IAAI,CAACxB,cAAc,CAACY,GAAG,CAAEW,IAAI,IAAKA,IAAI,CAACN,eAAe,CAACb,OAAO,CAAC,CAAC,CAACU,IAAI,CAAC,IAAI,CAAC;MACjGM,gBAAgB,IAAI,eAAeI,aAAa,EAAE;IACpD;IAEAN,MAAM,IAAI,GAAGE,gBAAgB,MAAM;IAEnC,MAAMT,UAAU,GAAG,IAAI,CAACjB,OAAO,CAC5BkB,GAAG,CAAEa,MAAM,IAAK;MACf,MAAMC,SAAS,GAAGD,MAAM,CAACR,eAAe,CAACb,OAAO,CAAC;MACjD,OAAOsB,SAAS,CACbC,KAAK,CAAC,IAAI,CAAC,CACXf,GAAG,CAAEgB,IAAI,IAAK,KAAKA,IAAI,EAAE,CAAC,CAC1Bd,IAAI,CAAC,IAAI,CAAC;IACf,CAAC,CAAC,CACDA,IAAI,CAAC,IAAI,CAAC;IAEbI,MAAM,IAAI,GAAGP,UAAU,IAAI;IAE3BO,MAAM,IAAI,GAAG;IAEb,OAAOA,MAAM;EACf;EAEAW,QAAQA,CAAA,EAAG;IACT,OAAO;MACL,GAAG,KAAK,CAACA,QAAQ,CAAC,CAAC;MACnBpC,IAAI,EAAE,IAAI,CAACA,IAAI;MACfC,OAAO,EAAE,IAAI,CAACA,OAAO,CAACkB,GAAG,CAAEa,MAAM,IAAKA,MAAM,CAACI,QAAQ,CAAC,CAAC,CAAC;MACxDhC,GAAG,EAAE,IAAI,CAACA,GAAG,EAAEgC,QAAQ,CAAC,CAAC;MACzBjC,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBE,UAAU,EAAE,IAAI,CAACA,UAAU;MAC3BC,YAAY,EAAE,IAAI,CAACA,YAAY,EAAEa,GAAG,CAAEW,IAAI,IAAKA,IAAI,CAACM,QAAQ,CAAC,CAAC,CAAC;MAC/D7B,cAAc,EAAE,IAAI,CAACA,cAAc,EAAEY,GAAG,CAAEW,IAAI,IAAKA,IAAI,CAACM,QAAQ,CAAC,CAAC,CAAC;MACnE5B,UAAU,EAAE,IAAI,CAACA,UAAU,EAAEW,GAAG,CAAEI,SAAS,IAAKA,SAAS,CAACa,QAAQ,CAAC,CAAC;IACtE,CAAC;EACH;EAEA,OAAOC,UAAUA,CAACC,GAAwB,EAAe;IACvD,MAAMtC,IAAI,GAAGsC,GAAG,CAACtC,IAAI;IACrB,MAAMC,OAAO,GAAGqC,GAAG,CAACrC,OAAO,CAACkB,GAAG,CAAEa,MAAW,IAAKO,gCAAc,CAACF,UAAU,CAACL,MAAM,CAAC,CAAC;IACnF,MAAM9B,QAAQ,GAAGoC,GAAG,CAACpC,QAAQ;IAC7B,MAAMC,SAAS,GAAGmC,GAAG,CAACnC,SAAS;IAC/B,MAAMC,GAAG,GAAGkC,GAAG,CAAClC,GAAG,GAAGoC,iBAAS,CAACH,UAAU,CAACC,GAAG,CAAClC,GAAG,CAAC,GAAGqC,SAAS;IAC/D,MAAMpC,UAAU,GAAGiC,GAAG,CAACjC,UAAU;IACjC,MAAMC,YAAY,GAAGgC,GAAG,CAAChC,YAAY,EAAEa,GAAG,CAAEW,IAAS,IAAKY,4DAAiC,CAACL,UAAU,CAACP,IAAI,CAAC,CAAC;IAC7G,MAAMvB,cAAc,GAAG+B,GAAG,CAAC/B,cAAc,EAAEY,GAAG,CAAEW,IAAS,IAAKY,4DAAiC,CAACL,UAAU,CAACP,IAAI,CAAC,CAAC;IACjH,MAAMtB,UAAU,GAAG8B,GAAG,CAAC9B,UAAU,EAAEW,GAAG,CAAEI,SAAc,IAAKgB,gCAAc,CAACF,UAAU,CAACd,SAAS,CAAC,CAAC;IAChG,OAAO,IAAI1B,WAAW,CACpBG,IAAI,EACJC,OAAO,EACPC,QAAQ,EACRC,SAAS,EACTC,GAAG,EACHC,UAAU,EACVC,YAAY,EACZC,cAAc,EACdC,UACF,CAAC;EACH;EAEA,OAAOmC,UAAUA,CAACb,IAAiB,EAAEc,iBAAoD,GAAIC,KAAK,IAAKA,KAAK,EAAE;IAC5G,OAAO,IAAIhD,WAAW,CACpBiC,IAAI,CAAC9B,IAAI,EACT8B,IAAI,CAAC7B,OAAO,CAACkB,GAAG,CAACyB,iBAAiB,CAAC,EACnCd,IAAI,CAAC5B,QAAQ,EACb4B,IAAI,CAAC3B,SAAS,EACd2B,IAAI,CAAC1B,GAAG,EACR0B,IAAI,CAACzB,UAAU,EACfyB,IAAI,CAACxB,YAAY,EACjBwB,IAAI,CAACvB,cAAc,EACnBuB,IAAI,CAACtB,UACP,CAAC;EACH;AACF;AAACsC,OAAA,CAAAjD,WAAA,GAAAA,WAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schemaNode","data","require","_schemaRegistry","ConditionalTypeSchema","SchemaNode","constructor","location","checkType","extendsType","trueType","falseType","getNodes","toString","toFullSignature","options","checkTypeStr","extendsTypeStr","trueTypeStr","falseTypeStr","toObject","fromObject","obj","SchemaRegistry","exports"],"sources":["conditional-type.ts"],"sourcesContent":["import { SchemaLocation
|
|
1
|
+
{"version":3,"names":["_schemaNode","data","require","_schemaRegistry","ConditionalTypeSchema","SchemaNode","constructor","location","checkType","extendsType","trueType","falseType","getNodes","toString","toFullSignature","options","checkTypeStr","extendsTypeStr","trueTypeStr","falseTypeStr","toObject","fromObject","obj","SchemaRegistry","exports"],"sources":["conditional-type.ts"],"sourcesContent":["import type { SchemaLocation } from '../schema-node';\nimport { SchemaNode } from '../schema-node';\nimport { SchemaRegistry } from '../schema-registry';\n\n/**\n * e.g. `T extends U ? Y : N`\n *\n */\nexport class ConditionalTypeSchema extends SchemaNode {\n readonly checkType: SchemaNode;\n readonly extendsType: SchemaNode;\n readonly trueType: SchemaNode;\n readonly falseType: SchemaNode;\n\n constructor(\n readonly location: SchemaLocation,\n checkType: SchemaNode,\n extendsType: SchemaNode,\n trueType: SchemaNode,\n falseType: SchemaNode\n ) {\n super();\n this.checkType = checkType;\n this.extendsType = extendsType;\n this.trueType = trueType;\n this.falseType = falseType;\n }\n\n getNodes() {\n return [this.checkType, this.extendsType, this.trueType, this.falseType];\n }\n\n toString() {\n return `${this.checkType.toString()} extends ${this.extendsType.toString()} ? ${this.trueType.toString()} : ${this.falseType.toString()}`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n const checkTypeStr = this.checkType.toFullSignature(options);\n const extendsTypeStr = this.extendsType.toFullSignature(options);\n const trueTypeStr = this.trueType.toFullSignature(options);\n const falseTypeStr = this.falseType.toFullSignature(options);\n\n return `${checkTypeStr} extends ${extendsTypeStr} ? ${trueTypeStr} : ${falseTypeStr}`;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n checkType: this.checkType.toObject(),\n extendsType: this.extendsType.toObject(),\n trueType: this.trueType.toObject(),\n falseType: this.falseType.toObject(),\n };\n }\n\n static fromObject(obj: Record<string, any>): ConditionalTypeSchema {\n const location = obj.location;\n const checkType = SchemaRegistry.fromObject(obj.checkType);\n const extendsType = SchemaRegistry.fromObject(obj.extendsType);\n const trueType = SchemaRegistry.fromObject(obj.trueType);\n const falseType = SchemaRegistry.fromObject(obj.falseType);\n return new ConditionalTypeSchema(location, checkType, extendsType, trueType, falseType);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { SchemaLocation } from '../schema-node';
|
|
1
|
+
import type { SchemaLocation } from '../schema-node';
|
|
2
2
|
import { ParameterSchema } from './parameter';
|
|
3
|
-
import {
|
|
3
|
+
import type { Modifier } from './function-like';
|
|
4
|
+
import { FunctionLikeSchema } from './function-like';
|
|
4
5
|
import { DocSchema } from './docs';
|
|
5
6
|
import { ThisTypeSchema } from './this-type';
|
|
6
7
|
export declare class ConstructorSchema extends FunctionLikeSchema {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_parameter","data","require","_functionLike","_docs","_thisType","ConstructorSchema","FunctionLikeSchema","constructor","location","params","returnType","signature","modifiers","doc","undefined","fromObject","obj","map","param","ParameterSchema","returns","ThisTypeSchema","DocSchema","exports"],"sources":["constructor.ts"],"sourcesContent":["import { SchemaLocation } from '../schema-node';\nimport { ParameterSchema } from './parameter';\nimport {
|
|
1
|
+
{"version":3,"names":["_parameter","data","require","_functionLike","_docs","_thisType","ConstructorSchema","FunctionLikeSchema","constructor","location","params","returnType","signature","modifiers","doc","undefined","fromObject","obj","map","param","ParameterSchema","returns","ThisTypeSchema","DocSchema","exports"],"sources":["constructor.ts"],"sourcesContent":["import type { SchemaLocation } from '../schema-node';\nimport { ParameterSchema } from './parameter';\nimport type { Modifier } from './function-like';\nimport { FunctionLikeSchema } from './function-like';\nimport { DocSchema } from './docs';\nimport { ThisTypeSchema } from './this-type';\n\nexport class ConstructorSchema extends FunctionLikeSchema {\n constructor(\n location: SchemaLocation,\n params: ParameterSchema[],\n returnType: ThisTypeSchema,\n signature: string,\n modifiers: Modifier[] = [],\n doc?: DocSchema\n ) {\n super(location, 'constructor', params, returnType, signature, modifiers, doc, undefined);\n }\n\n static fromObject(obj: Record<string, any>): ConstructorSchema {\n const location = obj.location;\n const params = obj.params.map((param: any) => ParameterSchema.fromObject(param));\n const returns = ThisTypeSchema.fromObject(obj.returnType);\n const signature = obj.signature;\n const modifiers = obj.modifiers;\n const doc = obj.doc ? DocSchema.fromObject(obj.doc) : undefined;\n return new ConstructorSchema(location, params, returns, signature, modifiers, doc);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,WAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,UAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAE,cAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,aAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,MAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,KAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,UAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,SAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMK,iBAAiB,SAASC,kCAAkB,CAAC;EACxDC,WAAWA,CACTC,QAAwB,EACxBC,MAAyB,EACzBC,UAA0B,EAC1BC,SAAiB,EACjBC,SAAqB,GAAG,EAAE,EAC1BC,GAAe,EACf;IACA,KAAK,CAACL,QAAQ,EAAE,aAAa,EAAEC,MAAM,EAAEC,UAAU,EAAEC,SAAS,EAAEC,SAAS,EAAEC,GAAG,EAAEC,SAAS,CAAC;EAC1F;EAEA,OAAOC,UAAUA,CAACC,GAAwB,EAAqB;IAC7D,MAAMR,QAAQ,GAAGQ,GAAG,CAACR,QAAQ;IAC7B,MAAMC,MAAM,GAAGO,GAAG,CAACP,MAAM,CAACQ,GAAG,CAAEC,KAAU,IAAKC,4BAAe,CAACJ,UAAU,CAACG,KAAK,CAAC,CAAC;IAChF,MAAME,OAAO,GAAGC,0BAAc,CAACN,UAAU,CAACC,GAAG,CAACN,UAAU,CAAC;IACzD,MAAMC,SAAS,GAAGK,GAAG,CAACL,SAAS;IAC/B,MAAMC,SAAS,GAAGI,GAAG,CAACJ,SAAS;IAC/B,MAAMC,GAAG,GAAGG,GAAG,CAACH,GAAG,GAAGS,iBAAS,CAACP,UAAU,CAACC,GAAG,CAACH,GAAG,CAAC,GAAGC,SAAS;IAC/D,OAAO,IAAIT,iBAAiB,CAACG,QAAQ,EAAEC,MAAM,EAAEW,OAAO,EAAET,SAAS,EAAEC,SAAS,EAAEC,GAAG,CAAC;EACpF;AACF;AAACU,OAAA,CAAAlB,iBAAA,GAAAA,iBAAA","ignoreList":[]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { SchemaLocation
|
|
1
|
+
import type { SchemaLocation } from '../schema-node';
|
|
2
|
+
import { SchemaNode } from '../schema-node';
|
|
2
3
|
import { DocSchema } from './docs';
|
|
3
4
|
export declare class DecoratorSchema extends SchemaNode {
|
|
4
5
|
readonly location: SchemaLocation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schemaNode","data","require","_schemaRegistry","_docs","DecoratorSchema","SchemaNode","constructor","location","name","doc","args","getNodes","toString","argsStr","map","arg","join","toFullSignature","options","result","showDocs","toObject","fromObject","obj","DocSchema","undefined","SchemaRegistry","exports"],"sources":["decorator.ts"],"sourcesContent":["import { SchemaLocation
|
|
1
|
+
{"version":3,"names":["_schemaNode","data","require","_schemaRegistry","_docs","DecoratorSchema","SchemaNode","constructor","location","name","doc","args","getNodes","toString","argsStr","map","arg","join","toFullSignature","options","result","showDocs","toObject","fromObject","obj","DocSchema","undefined","SchemaRegistry","exports"],"sources":["decorator.ts"],"sourcesContent":["import type { SchemaLocation } from '../schema-node';\nimport { SchemaNode } from '../schema-node';\nimport { SchemaRegistry } from '../schema-registry';\nimport { DocSchema } from './docs';\n\nexport class DecoratorSchema extends SchemaNode {\n constructor(\n readonly location: SchemaLocation,\n readonly name: string,\n readonly doc?: DocSchema,\n readonly args?: SchemaNode[]\n ) {\n super();\n }\n\n getNodes() {\n return this.args || [];\n }\n\n toString() {\n const argsStr = this.args?.map((arg) => arg.toString()).join(', ');\n return `@${this.name}${argsStr ? `(${argsStr})` : ''}`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n let result = '';\n\n if (options?.showDocs && this.doc) {\n result += `${this.doc.toFullSignature()}\\n`;\n }\n\n const argsStr = this.args?.map((arg) => arg.toFullSignature(options)).join(', ');\n\n result += `@${this.name}${argsStr ? `(${argsStr})` : ''}`;\n\n return result;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n name: this.name,\n doc: this.doc?.toObject(),\n args: this.args?.map((arg) => arg.toObject()),\n };\n }\n\n static fromObject(obj: Record<string, any>): DecoratorSchema {\n const location = obj.location;\n const name = obj.name;\n const doc = obj.doc ? DocSchema.fromObject(obj.doc) : undefined;\n const args = obj.args ? obj.args.map((arg) => SchemaRegistry.fromObject(arg)) : undefined;\n return new DecoratorSchema(location, name, doc, args);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { SchemaLocation
|
|
2
|
-
import {
|
|
1
|
+
import type { SchemaLocation } from '../../schema-node';
|
|
2
|
+
import { SchemaNode } from '../../schema-node';
|
|
3
|
+
import type { TagName, TagSchema } from './tag';
|
|
3
4
|
export declare class DocSchema extends SchemaNode {
|
|
4
5
|
readonly location: SchemaLocation;
|
|
5
6
|
readonly raw: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schemaNode","data","require","_schemaRegistry","DocSchema","SchemaNode","constructor","location","raw","comment","tags","toString","map","tag","join","toFullSignature","lines","push","split","line","trim","length","hasTag","tagName","Boolean","findTag","find","toObject","__schema","name","signature","undefined","fromObject","obj","SchemaRegistry","exports"],"sources":["doc.ts"],"sourcesContent":["import { SchemaLocation
|
|
1
|
+
{"version":3,"names":["_schemaNode","data","require","_schemaRegistry","DocSchema","SchemaNode","constructor","location","raw","comment","tags","toString","map","tag","join","toFullSignature","lines","push","split","line","trim","length","hasTag","tagName","Boolean","findTag","find","toObject","__schema","name","signature","undefined","fromObject","obj","SchemaRegistry","exports"],"sources":["doc.ts"],"sourcesContent":["import type { SchemaLocation } from '../../schema-node';\nimport { SchemaNode } from '../../schema-node';\nimport { SchemaRegistry } from '../../schema-registry';\nimport type { TagName, TagSchema } from './tag';\n\nexport class DocSchema extends SchemaNode {\n readonly tags?: TagSchema[];\n\n constructor(\n readonly location: SchemaLocation,\n readonly raw: string,\n readonly comment?: string,\n tags?: TagSchema[]\n ) {\n super();\n this.tags = tags;\n }\n\n toString() {\n const comment = this.comment ? `${this.comment}\\n` : '';\n const tags = this.tags ? this.tags.map((tag) => tag.toString()).join('\\n') : '';\n return `${comment}${tags}`;\n }\n\n toFullSignature(): string {\n const lines: string[] = [];\n\n if (this.comment) {\n lines.push(...this.comment.split('\\n').map((line) => ` * ${line.trim()}`));\n }\n\n if (this.tags && this.tags.length > 0) {\n for (const tag of this.tags) {\n lines.push(` * ${tag.toString().trim()}`);\n }\n }\n\n if (lines.length === 0) {\n return '';\n }\n\n return `/**\\n${lines.join('\\n')}\\n */`;\n }\n\n hasTag(tagName: TagName) {\n return Boolean(this.findTag(tagName));\n }\n\n findTag(tagName: TagName) {\n return this.tags?.find((tag) => tag.tagName === tagName);\n }\n\n toObject() {\n return {\n __schema: this.__schema,\n name: this.name,\n location: this.location,\n signature: this.signature,\n raw: this.raw,\n comment: this.comment,\n tags: this.tags ? this.tags.map((tag) => tag.toObject()) : undefined,\n };\n }\n\n static fromObject(obj: Record<string, any>): DocSchema {\n const location = obj.location;\n const tags = obj.tags ? obj.tags.map((tag: any) => SchemaRegistry.fromObject(tag)) : undefined;\n return new DocSchema(location, obj.raw, obj.comment, tags);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schemaRegistry","data","require","_tag","PropertyLikeTagSchema","TagSchema","constructor","location","name","comment","type","TagName","parameter","toString","tagName","toFullSignature","options","typeStr","toObject","fromObject","obj","SchemaRegistry","undefined","exports"],"sources":["property-like-tag.ts"],"sourcesContent":["import { SchemaLocation, SchemaNode } from '../../schema-node';\nimport { SchemaRegistry } from '../../schema-registry';\nimport { TagName, TagSchema } from './tag';\n\n/**\n * e.g. `@param myParam {string} some comment`\n */\nexport class PropertyLikeTagSchema extends TagSchema {\n readonly type?: SchemaNode;\n constructor(\n readonly location: SchemaLocation,\n readonly name: string,\n readonly comment?: string,\n type?: SchemaNode\n ) {\n super(location, TagName.parameter, comment);\n this.type = type;\n }\n\n toString() {\n const comment = this.comment ? ` ${this.comment}` : '';\n const type = this.type ? ` {${this.type.toString()}} ` : '';\n return `@${this.tagName} ${this.name}${type} ${comment}`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n const typeStr = this.type ? ` {${this.type.toFullSignature(options)}} ` : '';\n const comment = this.comment ? ` ${this.comment}` : '';\n return `@${this.tagName} ${this.name}${typeStr}${comment}`;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n name: this.name,\n type: this.type?.toObject(),\n };\n }\n\n static fromObject(obj: Record<string, any>): PropertyLikeTagSchema {\n const location = obj.location;\n const name = obj.name;\n const comment = obj.comment;\n const type = obj.type ? SchemaRegistry.fromObject(obj.type) : undefined;\n return new PropertyLikeTagSchema(location, name, comment, type);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,gBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,eAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,KAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,IAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA;AACA;AACA;AACO,MAAMG,qBAAqB,SAASC,gBAAS,CAAC;EAEnDC,WAAWA,CACAC,QAAwB,EACxBC,IAAY,EACZC,OAAgB,EACzBC,IAAiB,EACjB;IACA,KAAK,CAACH,QAAQ,EAAEI,cAAO,CAACC,SAAS,EAAEH,OAAO,CAAC;IAAC,KALnCF,QAAwB,GAAxBA,QAAwB;IAAA,KACxBC,IAAY,GAAZA,IAAY;IAAA,KACZC,OAAgB,GAAhBA,OAAgB;IAIzB,IAAI,CAACC,IAAI,GAAGA,IAAI;EAClB;EAEAG,QAAQA,CAAA,EAAG;IACT,MAAMJ,OAAO,GAAG,IAAI,CAACA,OAAO,GAAG,IAAI,IAAI,CAACA,OAAO,EAAE,GAAG,EAAE;IACtD,MAAMC,IAAI,GAAG,IAAI,CAACA,IAAI,GAAG,KAAK,IAAI,CAACA,IAAI,CAACG,QAAQ,CAAC,CAAC,IAAI,GAAG,EAAE;IAC3D,OAAO,IAAI,IAAI,CAACC,OAAO,IAAI,IAAI,CAACN,IAAI,GAAGE,IAAI,IAAID,OAAO,EAAE;EAC1D;EAEAM,eAAeA,CAACC,OAAgC,EAAU;IACxD,MAAMC,OAAO,GAAG,IAAI,CAACP,IAAI,GAAG,KAAK,IAAI,CAACA,IAAI,CAACK,eAAe,CAACC,OAAO,CAAC,IAAI,GAAG,EAAE;IAC5E,MAAMP,OAAO,GAAG,IAAI,CAACA,OAAO,GAAG,IAAI,IAAI,CAACA,OAAO,EAAE,GAAG,EAAE;IACtD,OAAO,IAAI,IAAI,CAACK,OAAO,IAAI,IAAI,CAACN,IAAI,GAAGS,OAAO,GAAGR,OAAO,EAAE;EAC5D;EAEAS,QAAQA,CAAA,EAAG;IACT,OAAO;MACL,GAAG,KAAK,CAACA,QAAQ,CAAC,CAAC;MACnBV,IAAI,EAAE,IAAI,CAACA,IAAI;MACfE,IAAI,EAAE,IAAI,CAACA,IAAI,EAAEQ,QAAQ,CAAC;IAC5B,CAAC;EACH;EAEA,OAAOC,UAAUA,CAACC,GAAwB,EAAyB;IACjE,MAAMb,QAAQ,GAAGa,GAAG,CAACb,QAAQ;IAC7B,MAAMC,IAAI,GAAGY,GAAG,CAACZ,IAAI;IACrB,MAAMC,OAAO,GAAGW,GAAG,CAACX,OAAO;IAC3B,MAAMC,IAAI,GAAGU,GAAG,CAACV,IAAI,GAAGW,gCAAc,CAACF,UAAU,CAACC,GAAG,CAACV,IAAI,CAAC,GAAGY,SAAS;IACvE,OAAO,IAAIlB,qBAAqB,CAACG,QAAQ,EAAEC,IAAI,EAAEC,OAAO,EAAEC,IAAI,CAAC;EACjE;AACF;AAACa,OAAA,CAAAnB,qBAAA,GAAAA,qBAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_schemaRegistry","data","require","_tag","PropertyLikeTagSchema","TagSchema","constructor","location","name","comment","type","TagName","parameter","toString","tagName","toFullSignature","options","typeStr","toObject","fromObject","obj","SchemaRegistry","undefined","exports"],"sources":["property-like-tag.ts"],"sourcesContent":["import type { SchemaLocation, SchemaNode } from '../../schema-node';\nimport { SchemaRegistry } from '../../schema-registry';\nimport { TagName, TagSchema } from './tag';\n\n/**\n * e.g. `@param myParam {string} some comment`\n */\nexport class PropertyLikeTagSchema extends TagSchema {\n readonly type?: SchemaNode;\n constructor(\n readonly location: SchemaLocation,\n readonly name: string,\n readonly comment?: string,\n type?: SchemaNode\n ) {\n super(location, TagName.parameter, comment);\n this.type = type;\n }\n\n toString() {\n const comment = this.comment ? ` ${this.comment}` : '';\n const type = this.type ? ` {${this.type.toString()}} ` : '';\n return `@${this.tagName} ${this.name}${type} ${comment}`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n const typeStr = this.type ? ` {${this.type.toFullSignature(options)}} ` : '';\n const comment = this.comment ? ` ${this.comment}` : '';\n return `@${this.tagName} ${this.name}${typeStr}${comment}`;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n name: this.name,\n type: this.type?.toObject(),\n };\n }\n\n static fromObject(obj: Record<string, any>): PropertyLikeTagSchema {\n const location = obj.location;\n const name = obj.name;\n const comment = obj.comment;\n const type = obj.type ? SchemaRegistry.fromObject(obj.type) : undefined;\n return new PropertyLikeTagSchema(location, name, comment, type);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,gBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,eAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,KAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,IAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA;AACA;AACA;AACO,MAAMG,qBAAqB,SAASC,gBAAS,CAAC;EAEnDC,WAAWA,CACAC,QAAwB,EACxBC,IAAY,EACZC,OAAgB,EACzBC,IAAiB,EACjB;IACA,KAAK,CAACH,QAAQ,EAAEI,cAAO,CAACC,SAAS,EAAEH,OAAO,CAAC;IAAC,KALnCF,QAAwB,GAAxBA,QAAwB;IAAA,KACxBC,IAAY,GAAZA,IAAY;IAAA,KACZC,OAAgB,GAAhBA,OAAgB;IAIzB,IAAI,CAACC,IAAI,GAAGA,IAAI;EAClB;EAEAG,QAAQA,CAAA,EAAG;IACT,MAAMJ,OAAO,GAAG,IAAI,CAACA,OAAO,GAAG,IAAI,IAAI,CAACA,OAAO,EAAE,GAAG,EAAE;IACtD,MAAMC,IAAI,GAAG,IAAI,CAACA,IAAI,GAAG,KAAK,IAAI,CAACA,IAAI,CAACG,QAAQ,CAAC,CAAC,IAAI,GAAG,EAAE;IAC3D,OAAO,IAAI,IAAI,CAACC,OAAO,IAAI,IAAI,CAACN,IAAI,GAAGE,IAAI,IAAID,OAAO,EAAE;EAC1D;EAEAM,eAAeA,CAACC,OAAgC,EAAU;IACxD,MAAMC,OAAO,GAAG,IAAI,CAACP,IAAI,GAAG,KAAK,IAAI,CAACA,IAAI,CAACK,eAAe,CAACC,OAAO,CAAC,IAAI,GAAG,EAAE;IAC5E,MAAMP,OAAO,GAAG,IAAI,CAACA,OAAO,GAAG,IAAI,IAAI,CAACA,OAAO,EAAE,GAAG,EAAE;IACtD,OAAO,IAAI,IAAI,CAACK,OAAO,IAAI,IAAI,CAACN,IAAI,GAAGS,OAAO,GAAGR,OAAO,EAAE;EAC5D;EAEAS,QAAQA,CAAA,EAAG;IACT,OAAO;MACL,GAAG,KAAK,CAACA,QAAQ,CAAC,CAAC;MACnBV,IAAI,EAAE,IAAI,CAACA,IAAI;MACfE,IAAI,EAAE,IAAI,CAACA,IAAI,EAAEQ,QAAQ,CAAC;IAC5B,CAAC;EACH;EAEA,OAAOC,UAAUA,CAACC,GAAwB,EAAyB;IACjE,MAAMb,QAAQ,GAAGa,GAAG,CAACb,QAAQ;IAC7B,MAAMC,IAAI,GAAGY,GAAG,CAACZ,IAAI;IACrB,MAAMC,OAAO,GAAGW,GAAG,CAACX,OAAO;IAC3B,MAAMC,IAAI,GAAGU,GAAG,CAACV,IAAI,GAAGW,gCAAc,CAACF,UAAU,CAACC,GAAG,CAACV,IAAI,CAAC,GAAGY,SAAS;IACvE,OAAO,IAAIlB,qBAAqB,CAACG,QAAQ,EAAEC,IAAI,EAAEC,OAAO,EAAEC,IAAI,CAAC;EACjE;AACF;AAACa,OAAA,CAAAnB,qBAAA,GAAAA,qBAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schemaRegistry","data","require","_tag","ReturnTagSchema","TagSchema","constructor","location","comment","type","TagName","return","toString","tagName","toFullSignature","options","typeStr","toObject","fromObject","obj","SchemaRegistry","undefined","exports"],"sources":["return-tag.ts"],"sourcesContent":["import { SchemaLocation, SchemaNode } from '../../schema-node';\nimport { SchemaRegistry } from '../../schema-registry';\nimport { TagName, TagSchema } from './tag';\n\n/**\n * e.g. `@return {string} some comment`\n */\nexport class ReturnTagSchema extends TagSchema {\n readonly type?: SchemaNode;\n\n constructor(\n readonly location: SchemaLocation,\n readonly comment?: string,\n type?: SchemaNode\n ) {\n super(location, TagName.return, comment);\n this.type = type;\n }\n\n toString() {\n const comment = this.comment ? ` ${this.comment}` : '';\n return `@${this.tagName}${comment}`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n const typeStr = this.type ? ` {${this.type.toFullSignature(options)}}` : '';\n const comment = this.comment ? ` ${this.comment}` : '';\n return `@${this.tagName}${typeStr}${comment}`;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n type: this.type?.toObject(),\n };\n }\n\n static fromObject(obj: Record<string, any>): ReturnTagSchema {\n const location = obj.location;\n const comment = obj.comment;\n const type = obj.type ? SchemaRegistry.fromObject(obj.type) : undefined;\n return new ReturnTagSchema(location, comment, type);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,gBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,eAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,KAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,IAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA;AACA;AACA;AACO,MAAMG,eAAe,SAASC,gBAAS,CAAC;EAG7CC,WAAWA,CACAC,QAAwB,EACxBC,OAAgB,EACzBC,IAAiB,EACjB;IACA,KAAK,CAACF,QAAQ,EAAEG,cAAO,CAACC,MAAM,EAAEH,OAAO,CAAC;IAAC,KAJhCD,QAAwB,GAAxBA,QAAwB;IAAA,KACxBC,OAAgB,GAAhBA,OAAgB;IAIzB,IAAI,CAACC,IAAI,GAAGA,IAAI;EAClB;EAEAG,QAAQA,CAAA,EAAG;IACT,MAAMJ,OAAO,GAAG,IAAI,CAACA,OAAO,GAAG,IAAI,IAAI,CAACA,OAAO,EAAE,GAAG,EAAE;IACtD,OAAO,IAAI,IAAI,CAACK,OAAO,GAAGL,OAAO,EAAE;EACrC;EAEAM,eAAeA,CAACC,OAAgC,EAAU;IACxD,MAAMC,OAAO,GAAG,IAAI,CAACP,IAAI,GAAG,KAAK,IAAI,CAACA,IAAI,CAACK,eAAe,CAACC,OAAO,CAAC,GAAG,GAAG,EAAE;IAC3E,MAAMP,OAAO,GAAG,IAAI,CAACA,OAAO,GAAG,IAAI,IAAI,CAACA,OAAO,EAAE,GAAG,EAAE;IACtD,OAAO,IAAI,IAAI,CAACK,OAAO,GAAGG,OAAO,GAAGR,OAAO,EAAE;EAC/C;EAEAS,QAAQA,CAAA,EAAG;IACT,OAAO;MACL,GAAG,KAAK,CAACA,QAAQ,CAAC,CAAC;MACnBR,IAAI,EAAE,IAAI,CAACA,IAAI,EAAEQ,QAAQ,CAAC;IAC5B,CAAC;EACH;EAEA,OAAOC,UAAUA,CAACC,GAAwB,EAAmB;IAC3D,MAAMZ,QAAQ,GAAGY,GAAG,CAACZ,QAAQ;IAC7B,MAAMC,OAAO,GAAGW,GAAG,CAACX,OAAO;IAC3B,MAAMC,IAAI,GAAGU,GAAG,CAACV,IAAI,GAAGW,gCAAc,CAACF,UAAU,CAACC,GAAG,CAACV,IAAI,CAAC,GAAGY,SAAS;IACvE,OAAO,IAAIjB,eAAe,CAACG,QAAQ,EAAEC,OAAO,EAAEC,IAAI,CAAC;EACrD;AACF;AAACa,OAAA,CAAAlB,eAAA,GAAAA,eAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_schemaRegistry","data","require","_tag","ReturnTagSchema","TagSchema","constructor","location","comment","type","TagName","return","toString","tagName","toFullSignature","options","typeStr","toObject","fromObject","obj","SchemaRegistry","undefined","exports"],"sources":["return-tag.ts"],"sourcesContent":["import type { SchemaLocation, SchemaNode } from '../../schema-node';\nimport { SchemaRegistry } from '../../schema-registry';\nimport { TagName, TagSchema } from './tag';\n\n/**\n * e.g. `@return {string} some comment`\n */\nexport class ReturnTagSchema extends TagSchema {\n readonly type?: SchemaNode;\n\n constructor(\n readonly location: SchemaLocation,\n readonly comment?: string,\n type?: SchemaNode\n ) {\n super(location, TagName.return, comment);\n this.type = type;\n }\n\n toString() {\n const comment = this.comment ? ` ${this.comment}` : '';\n return `@${this.tagName}${comment}`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n const typeStr = this.type ? ` {${this.type.toFullSignature(options)}}` : '';\n const comment = this.comment ? ` ${this.comment}` : '';\n return `@${this.tagName}${typeStr}${comment}`;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n type: this.type?.toObject(),\n };\n }\n\n static fromObject(obj: Record<string, any>): ReturnTagSchema {\n const location = obj.location;\n const comment = obj.comment;\n const type = obj.type ? SchemaRegistry.fromObject(obj.type) : undefined;\n return new ReturnTagSchema(location, comment, type);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,gBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,eAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,KAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,IAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA;AACA;AACA;AACO,MAAMG,eAAe,SAASC,gBAAS,CAAC;EAG7CC,WAAWA,CACAC,QAAwB,EACxBC,OAAgB,EACzBC,IAAiB,EACjB;IACA,KAAK,CAACF,QAAQ,EAAEG,cAAO,CAACC,MAAM,EAAEH,OAAO,CAAC;IAAC,KAJhCD,QAAwB,GAAxBA,QAAwB;IAAA,KACxBC,OAAgB,GAAhBA,OAAgB;IAIzB,IAAI,CAACC,IAAI,GAAGA,IAAI;EAClB;EAEAG,QAAQA,CAAA,EAAG;IACT,MAAMJ,OAAO,GAAG,IAAI,CAACA,OAAO,GAAG,IAAI,IAAI,CAACA,OAAO,EAAE,GAAG,EAAE;IACtD,OAAO,IAAI,IAAI,CAACK,OAAO,GAAGL,OAAO,EAAE;EACrC;EAEAM,eAAeA,CAACC,OAAgC,EAAU;IACxD,MAAMC,OAAO,GAAG,IAAI,CAACP,IAAI,GAAG,KAAK,IAAI,CAACA,IAAI,CAACK,eAAe,CAACC,OAAO,CAAC,GAAG,GAAG,EAAE;IAC3E,MAAMP,OAAO,GAAG,IAAI,CAACA,OAAO,GAAG,IAAI,IAAI,CAACA,OAAO,EAAE,GAAG,EAAE;IACtD,OAAO,IAAI,IAAI,CAACK,OAAO,GAAGG,OAAO,GAAGR,OAAO,EAAE;EAC/C;EAEAS,QAAQA,CAAA,EAAG;IACT,OAAO;MACL,GAAG,KAAK,CAACA,QAAQ,CAAC,CAAC;MACnBR,IAAI,EAAE,IAAI,CAACA,IAAI,EAAEQ,QAAQ,CAAC;IAC5B,CAAC;EACH;EAEA,OAAOC,UAAUA,CAACC,GAAwB,EAAmB;IAC3D,MAAMZ,QAAQ,GAAGY,GAAG,CAACZ,QAAQ;IAC7B,MAAMC,OAAO,GAAGW,GAAG,CAACX,OAAO;IAC3B,MAAMC,IAAI,GAAGU,GAAG,CAACV,IAAI,GAAGW,gCAAc,CAACF,UAAU,CAACC,GAAG,CAACV,IAAI,CAAC,GAAGY,SAAS;IACvE,OAAO,IAAIjB,eAAe,CAACG,QAAQ,EAAEC,OAAO,EAAEC,IAAI,CAAC;EACrD;AACF;AAACa,OAAA,CAAAlB,eAAA,GAAAA,eAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schemaNode","data","require","TagSchema","SchemaNode","constructor","location","tagName","comment","toString","toFullSignature","fromObject","obj","toObject","__schema","name","signature","exports","TagName"],"sources":["tag.ts"],"sourcesContent":["import { SchemaLocation
|
|
1
|
+
{"version":3,"names":["_schemaNode","data","require","TagSchema","SchemaNode","constructor","location","tagName","comment","toString","toFullSignature","fromObject","obj","toObject","__schema","name","signature","exports","TagName"],"sources":["tag.ts"],"sourcesContent":["import type { SchemaLocation } from '../../schema-node';\nimport { SchemaNode } from '../../schema-node';\n\n/**\n * e.g. `@deprecated please use something else`\n */\nexport class TagSchema extends SchemaNode {\n constructor(\n readonly location: SchemaLocation,\n readonly tagName: TagName | string,\n readonly comment?: string\n ) {\n super();\n }\n\n toString() {\n const comment = this.comment ? ` ${this.comment}` : '';\n return `@${this.tagName}${comment}`;\n }\n\n toFullSignature(): string {\n return this.toString();\n }\n\n static fromObject(obj: Record<string, any>): TagSchema {\n const location = obj.location;\n const tagName = obj.tagName;\n const comment = obj.comment;\n return new TagSchema(location, tagName, comment);\n }\n\n toObject() {\n return {\n __schema: this.__schema,\n location: this.location,\n name: this.name,\n signature: this.signature,\n tagName: this.tagName,\n comment: this.comment,\n };\n }\n}\n\nexport enum TagName {\n augments = 'augments',\n author = 'author',\n class = 'class',\n callback = 'callback',\n public = 'public',\n private = 'private',\n protected = 'protected',\n readonly = 'readonly',\n override = 'override',\n see = 'see',\n enum = 'enum',\n parameter = 'parameter',\n this = 'this',\n type = 'type',\n template = 'template',\n typedef = 'typedef',\n property = 'property',\n implements = 'implements',\n return = 'return',\n deprecated = 'deprecated',\n exports = 'exports',\n link = 'link',\n}\n"],"mappings":";;;;;;AACA,SAAAA,YAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,WAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA;AACA;AACA;AACO,MAAME,SAAS,SAASC,wBAAU,CAAC;EACxCC,WAAWA,CACAC,QAAwB,EACxBC,OAAyB,EACzBC,OAAgB,EACzB;IACA,KAAK,CAAC,CAAC;IAAC,KAJCF,QAAwB,GAAxBA,QAAwB;IAAA,KACxBC,OAAyB,GAAzBA,OAAyB;IAAA,KACzBC,OAAgB,GAAhBA,OAAgB;EAG3B;EAEAC,QAAQA,CAAA,EAAG;IACT,MAAMD,OAAO,GAAG,IAAI,CAACA,OAAO,GAAG,IAAI,IAAI,CAACA,OAAO,EAAE,GAAG,EAAE;IACtD,OAAO,IAAI,IAAI,CAACD,OAAO,GAAGC,OAAO,EAAE;EACrC;EAEAE,eAAeA,CAAA,EAAW;IACxB,OAAO,IAAI,CAACD,QAAQ,CAAC,CAAC;EACxB;EAEA,OAAOE,UAAUA,CAACC,GAAwB,EAAa;IACrD,MAAMN,QAAQ,GAAGM,GAAG,CAACN,QAAQ;IAC7B,MAAMC,OAAO,GAAGK,GAAG,CAACL,OAAO;IAC3B,MAAMC,OAAO,GAAGI,GAAG,CAACJ,OAAO;IAC3B,OAAO,IAAIL,SAAS,CAACG,QAAQ,EAAEC,OAAO,EAAEC,OAAO,CAAC;EAClD;EAEAK,QAAQA,CAAA,EAAG;IACT,OAAO;MACLC,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBR,QAAQ,EAAE,IAAI,CAACA,QAAQ;MACvBS,IAAI,EAAE,IAAI,CAACA,IAAI;MACfC,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBT,OAAO,EAAE,IAAI,CAACA,OAAO;MACrBC,OAAO,EAAE,IAAI,CAACA;IAChB,CAAC;EACH;AACF;AAACS,OAAA,CAAAd,SAAA,GAAAA,SAAA;AAAA,IAEWe,OAAO,GAAAD,OAAA,CAAAC,OAAA,0BAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAPA,OAAO;EAAA,OAAPA,OAAO;AAAA","ignoreList":[]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { SchemaLocation
|
|
1
|
+
import type { SchemaLocation } from '../schema-node';
|
|
2
|
+
import { SchemaNode } from '../schema-node';
|
|
2
3
|
import { DocSchema } from './docs';
|
|
3
4
|
export declare class EnumMemberSchema extends SchemaNode {
|
|
4
5
|
readonly location: SchemaLocation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schemaNode","data","require","_docs","EnumMemberSchema","SchemaNode","constructor","location","name","signature","value","doc","toString","toFullSignature","options","result","showDocs","undefined","toObject","fromObject","obj","DocSchema","exports"],"sources":["enum-member.ts"],"sourcesContent":["import { SchemaLocation
|
|
1
|
+
{"version":3,"names":["_schemaNode","data","require","_docs","EnumMemberSchema","SchemaNode","constructor","location","name","signature","value","doc","toString","toFullSignature","options","result","showDocs","undefined","toObject","fromObject","obj","DocSchema","exports"],"sources":["enum-member.ts"],"sourcesContent":["import type { SchemaLocation } from '../schema-node';\nimport { SchemaNode } from '../schema-node';\nimport { DocSchema } from './docs';\n\nexport class EnumMemberSchema extends SchemaNode {\n readonly doc?: DocSchema;\n\n constructor(\n readonly location: SchemaLocation,\n readonly name: string,\n readonly signature: string,\n readonly value?: string,\n doc?: DocSchema\n ) {\n super();\n this.doc = doc;\n }\n\n toString() {\n if (!this.value) return this.name;\n return `${this.name}=${this.value}`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n let result = '';\n\n if (options?.showDocs && this.doc) {\n result += `${this.doc.toFullSignature()}\\n`;\n }\n\n if (this.value !== undefined) {\n result += `${this.name} = ${this.value}`;\n } else {\n result += `${this.name}`;\n }\n\n return result;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n name: this.name,\n signature: this.signature,\n value: this.value,\n doc: this.doc?.toObject(),\n };\n }\n\n static fromObject(obj: Record<string, any>): EnumMemberSchema {\n const location = obj.location;\n const name = obj.name;\n const signature = obj.signature;\n const value = obj.value;\n const doc = obj.doc ? DocSchema.fromObject(obj.doc) : undefined;\n return new EnumMemberSchema(location, name, signature, value, doc);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,YAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,WAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,MAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,KAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAMG,gBAAgB,SAASC,wBAAU,CAAC;EAG/CC,WAAWA,CACAC,QAAwB,EACxBC,IAAY,EACZC,SAAiB,EACjBC,KAAc,EACvBC,GAAe,EACf;IACA,KAAK,CAAC,CAAC;IAAC,KANCJ,QAAwB,GAAxBA,QAAwB;IAAA,KACxBC,IAAY,GAAZA,IAAY;IAAA,KACZC,SAAiB,GAAjBA,SAAiB;IAAA,KACjBC,KAAc,GAAdA,KAAc;IAIvB,IAAI,CAACC,GAAG,GAAGA,GAAG;EAChB;EAEAC,QAAQA,CAAA,EAAG;IACT,IAAI,CAAC,IAAI,CAACF,KAAK,EAAE,OAAO,IAAI,CAACF,IAAI;IACjC,OAAO,GAAG,IAAI,CAACA,IAAI,IAAI,IAAI,CAACE,KAAK,EAAE;EACrC;EAEAG,eAAeA,CAACC,OAAgC,EAAU;IACxD,IAAIC,MAAM,GAAG,EAAE;IAEf,IAAID,OAAO,EAAEE,QAAQ,IAAI,IAAI,CAACL,GAAG,EAAE;MACjCI,MAAM,IAAI,GAAG,IAAI,CAACJ,GAAG,CAACE,eAAe,CAAC,CAAC,IAAI;IAC7C;IAEA,IAAI,IAAI,CAACH,KAAK,KAAKO,SAAS,EAAE;MAC5BF,MAAM,IAAI,GAAG,IAAI,CAACP,IAAI,MAAM,IAAI,CAACE,KAAK,EAAE;IAC1C,CAAC,MAAM;MACLK,MAAM,IAAI,GAAG,IAAI,CAACP,IAAI,EAAE;IAC1B;IAEA,OAAOO,MAAM;EACf;EAEAG,QAAQA,CAAA,EAAG;IACT,OAAO;MACL,GAAG,KAAK,CAACA,QAAQ,CAAC,CAAC;MACnBV,IAAI,EAAE,IAAI,CAACA,IAAI;MACfC,SAAS,EAAE,IAAI,CAACA,SAAS;MACzBC,KAAK,EAAE,IAAI,CAACA,KAAK;MACjBC,GAAG,EAAE,IAAI,CAACA,GAAG,EAAEO,QAAQ,CAAC;IAC1B,CAAC;EACH;EAEA,OAAOC,UAAUA,CAACC,GAAwB,EAAoB;IAC5D,MAAMb,QAAQ,GAAGa,GAAG,CAACb,QAAQ;IAC7B,MAAMC,IAAI,GAAGY,GAAG,CAACZ,IAAI;IACrB,MAAMC,SAAS,GAAGW,GAAG,CAACX,SAAS;IAC/B,MAAMC,KAAK,GAAGU,GAAG,CAACV,KAAK;IACvB,MAAMC,GAAG,GAAGS,GAAG,CAACT,GAAG,GAAGU,iBAAS,CAACF,UAAU,CAACC,GAAG,CAACT,GAAG,CAAC,GAAGM,SAAS;IAC/D,OAAO,IAAIb,gBAAgB,CAACG,QAAQ,EAAEC,IAAI,EAAEC,SAAS,EAAEC,KAAK,EAAEC,GAAG,CAAC;EACpE;AACF;AAACW,OAAA,CAAAlB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
package/dist/schemas/enum.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { SchemaLocation
|
|
1
|
+
import type { SchemaLocation } from '../schema-node';
|
|
2
|
+
import { SchemaNode } from '../schema-node';
|
|
2
3
|
import { DocSchema } from './docs';
|
|
3
4
|
export declare class EnumSchema extends SchemaNode {
|
|
4
5
|
readonly location: SchemaLocation;
|
package/dist/schemas/enum.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_schemaNode","_docs","_","e","__esModule","default","EnumSchema","SchemaNode","constructor","location","name","members","signature","doc","getNodes","toString","options","boldUnderline","color","chalk","bold","underline","str","membersStr","map","m","join","toFullSignature","result","showDocs","member","memberStr","toObject","fromObject","obj","SchemaRegistry","DocSchema","undefined","exports"],"sources":["enum.ts"],"sourcesContent":["import chalk from 'chalk';\nimport { SchemaLocation
|
|
1
|
+
{"version":3,"names":["_chalk","data","_interopRequireDefault","require","_schemaNode","_docs","_","e","__esModule","default","EnumSchema","SchemaNode","constructor","location","name","members","signature","doc","getNodes","toString","options","boldUnderline","color","chalk","bold","underline","str","membersStr","map","m","join","toFullSignature","result","showDocs","member","memberStr","toObject","fromObject","obj","SchemaRegistry","DocSchema","undefined","exports"],"sources":["enum.ts"],"sourcesContent":["import chalk from 'chalk';\nimport type { SchemaLocation } from '../schema-node';\nimport { SchemaNode } from '../schema-node';\nimport { DocSchema } from './docs';\nimport { SchemaRegistry } from '..';\n\nexport class EnumSchema extends SchemaNode {\n readonly doc?: DocSchema;\n readonly members: SchemaNode[];\n\n constructor(\n readonly location: SchemaLocation,\n readonly name: string,\n members: SchemaNode[],\n readonly signature: string,\n doc?: DocSchema\n ) {\n super();\n this.doc = doc;\n this.members = members;\n }\n\n getNodes() {\n return this.members;\n }\n\n toString(options) {\n const boldUnderline = options?.color ? chalk.bold.underline : (str: string) => str;\n const membersStr = this.members.map((m) => `* ${m.toString(options)}`).join('\\n');\n return `${boldUnderline(this.name)}\\n${membersStr}`;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n let result = '';\n\n if (options?.showDocs && this.doc) {\n result += `${this.doc.toFullSignature()}\\n`;\n }\n\n result += `enum ${this.name} {\\n`;\n\n const membersStr = this.members\n .map((member) => {\n const memberStr = member.toFullSignature(options);\n return ` ${memberStr}`;\n })\n .join(',\\n');\n\n result += `${membersStr}\\n`;\n\n result += `}`;\n\n return result;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n name: this.name,\n members: this.members.map((member) => member.toObject()),\n doc: this.doc?.toObject(),\n signature: this.signature,\n };\n }\n\n static fromObject(obj: Record<string, any>): EnumSchema {\n const location = obj.location;\n const name = obj.name;\n const members = obj.members.map((member: any) => SchemaRegistry.fromObject(member));\n const signature = obj.signature;\n const doc = obj.doc ? DocSchema.fromObject(obj.doc) : undefined;\n return new EnumSchema(location, name, members, signature, doc);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/dist/schemas/export.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { SchemaLocation } from '../schema-node';
|
|
2
|
+
import { SchemaNode } from '../schema-node';
|
|
2
3
|
import { DocSchema } from './docs';
|
|
3
4
|
export declare class ExportSchema extends SchemaNode {
|
|
4
5
|
readonly location: SchemaLocation;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schemaNode","data","require","_docs","_schemaRegistry","ExportSchema","SchemaNode","constructor","location","name","exportNode","alias","doc","signature","toFullSignature","toString","options","originalName","exportNodeSignature","showDocs","docString","toObject","fromObject","obj","SchemaRegistry","DocSchema","undefined","isExportSchema","node","exports"],"sources":["export.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"names":["_schemaNode","data","require","_docs","_schemaRegistry","ExportSchema","SchemaNode","constructor","location","name","exportNode","alias","doc","signature","toFullSignature","toString","options","originalName","exportNodeSignature","showDocs","docString","toObject","fromObject","obj","SchemaRegistry","DocSchema","undefined","isExportSchema","node","exports"],"sources":["export.ts"],"sourcesContent":["import type { SchemaLocation } from '../schema-node';\nimport { SchemaNode } from '../schema-node';\nimport { DocSchema } from './docs';\nimport { SchemaRegistry } from '../schema-registry';\n\nexport class ExportSchema extends SchemaNode {\n alias?: string;\n exportNode: SchemaNode;\n readonly doc?: DocSchema;\n readonly signature?: string;\n\n constructor(\n readonly location: SchemaLocation,\n readonly name: string,\n exportNode: SchemaNode,\n alias?: string,\n doc?: DocSchema\n ) {\n super();\n this.exportNode = exportNode;\n this.alias = alias;\n this.doc = doc;\n this.signature = exportNode.signature || this.toFullSignature();\n }\n\n toString(options?: { color?: boolean }): string {\n let signature = '';\n\n const alias = this.alias || this.name;\n const originalName = this.exportNode.name || this.name;\n\n if (alias !== originalName) {\n signature += `export { ${originalName} as ${alias} };\\n`;\n } else {\n signature += `export { ${originalName} };\\n`;\n }\n\n const exportNodeSignature = this.exportNode.toString(options);\n\n signature += `\\n${exportNodeSignature}`;\n\n return signature;\n }\n\n toFullSignature(options?: { showDocs?: boolean }): string {\n let signature = '';\n\n if (options?.showDocs && this.doc) {\n const docString = this.doc.toFullSignature();\n signature += `${docString}\\n`;\n }\n\n const alias = this.alias || this.name;\n const originalName = this.exportNode.name || this.name;\n\n if (alias !== originalName) {\n signature += `export { ${originalName} as ${alias} };\\n`;\n } else {\n signature += `export { ${originalName} };\\n`;\n }\n\n const exportNodeSignature = this.exportNode.toFullSignature(options);\n\n signature += `\\n${exportNodeSignature}`;\n\n return signature;\n }\n\n toObject() {\n return {\n ...super.toObject(),\n name: this.name,\n doc: this.doc?.toObject(),\n location: this.location,\n exportNode: this.exportNode.toObject(),\n alias: this.alias,\n };\n }\n\n static fromObject(obj: Record<string, any>): ExportSchema {\n const name = obj.name;\n const location = obj.location;\n const exportNode = SchemaRegistry.fromObject(obj.exportNode);\n const alias = obj.alias;\n const doc = obj.doc ? DocSchema.fromObject(obj.doc) : undefined;\n return new ExportSchema(location, name, exportNode, alias, doc);\n }\n\n static isExportSchema(node: SchemaNode): node is ExportSchema {\n return 'exportNode' in node;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|