Files
infocom-systems-design/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.esm/chunk-E6BFGAZB.mjs
2025-10-03 22:27:28 +03:00

67 lines
1.8 KiB
JavaScript

import {
AbstractMermaidTokenBuilder,
AbstractMermaidValueConverter,
ArchitectureGeneratedModule,
EmptyFileSystem,
MermaidGeneratedSharedModule,
__name,
createDefaultCoreModule,
createDefaultSharedCoreModule,
inject,
lib_exports
} from "./chunk-WVIFXK7E.mjs";
// src/language/architecture/tokenBuilder.ts
var ArchitectureTokenBuilder = class extends AbstractMermaidTokenBuilder {
static {
__name(this, "ArchitectureTokenBuilder");
}
constructor() {
super(["architecture"]);
}
};
// src/language/architecture/valueConverter.ts
var ArchitectureValueConverter = class extends AbstractMermaidValueConverter {
static {
__name(this, "ArchitectureValueConverter");
}
runCustomConverter(rule, input, _cstNode) {
if (rule.name === "ARCH_ICON") {
return input.replace(/[()]/g, "").trim();
} else if (rule.name === "ARCH_TEXT_ICON") {
return input.replace(/["()]/g, "");
} else if (rule.name === "ARCH_TITLE") {
return input.replace(/[[\]]/g, "").trim();
}
return void 0;
}
};
// src/language/architecture/module.ts
var ArchitectureModule = {
parser: {
TokenBuilder: /* @__PURE__ */ __name(() => new ArchitectureTokenBuilder(), "TokenBuilder"),
ValueConverter: /* @__PURE__ */ __name(() => new ArchitectureValueConverter(), "ValueConverter")
}
};
function createArchitectureServices(context = EmptyFileSystem) {
const shared = inject(
createDefaultSharedCoreModule(context),
MermaidGeneratedSharedModule
);
const Architecture = inject(
createDefaultCoreModule({ shared }),
ArchitectureGeneratedModule,
ArchitectureModule
);
shared.ServiceRegistry.register(Architecture);
return { shared, Architecture };
}
__name(createArchitectureServices, "createArchitectureServices");
export {
ArchitectureModule,
createArchitectureServices
};