From a490ea980a5416a82d9fe564d785b185df54116c Mon Sep 17 00:00:00 2001 From: "Max P." <46793832+PxaMMaxP@users.noreply.github.com> Date: Fri, 23 Aug 2024 21:21:24 +0200 Subject: [PATCH] Revert "feat: Update Identifier documentation in TypeScript" This reverts commit 6e6a521c1f7b7906d8d47269a0d3b848677eef6b. --- src/types/Identifier.ts | 40 ++++++++-------------------------------- 1 file changed, 8 insertions(+), 32 deletions(-) diff --git a/src/types/Identifier.ts b/src/types/Identifier.ts index 495b8f1..6492bf1 100644 --- a/src/types/Identifier.ts +++ b/src/types/Identifier.ts @@ -1,35 +1,11 @@ /** - * ## The dependency identifier - * - * You can use any string or Symbol as identifier. The identifier is used to - * register a class in the TSinjex DI (Dependency Injection) container. - * See **Hierarchical identifiers** for more information on `.` in identifiers. - * - * ### Hierarchical identifiers - * To create hierarchical identifiers, you can use a dot `.` as a separator. - * E.g. `Parent.Child` or `Parent.Child.Grandchild`. - * - * ### Merge functionality - * You can merge multiple dependencies into one by resolving them with - * a identifier that is a prefix of the actual identifiers. - * E.g. `Parent` resolves `Parent.*` and returns a mixin of all children. - * Merging will only work, if the main identifier is not registered. - * Grandchildren are not included in the mixin but you can use something like - * `Parent.Child.Grandchild` to merge all direct children of Grandchild, - * e.g. `Parent.Child.Grandchild.*`. - * If you don't want to allow merging, you must register the dependencies - * with the full identifier. E.g. `Parent` or `Parent.Child.Grandchild`. - * - * ### Naming convention - * The name of a dependency should generally correspond to the interface that is implemented. - * E.g. a class `ClassA` that implements the interface `IClassA` and is registered - * as a dependent class is registered under the interface name `IClassA`. - * - * The mixin parts of the class are registered under the interface name `IClassA.*`. - * E.g. `IClassA.IClassZ`, `IClassA.IClassY`, etc. - * - * #### Static/Constructor Identifier naming - * The identifier for a static or constructor dependency should be the same as the class name - * postfixed with `_`. E.g. `IClassA_` for the the static or constructor interface of class `IClassA`. + * The dependency identifier. + * You can use any string as identifier. + * To create order, it is also possible to + * provide these with a separator: `GroupA.ClassZ`. + * The convection for naming is as follows: + * The name should generally correspond to the interface that is relevant. + * I.e. a class `ClassA` that implements the interface `IClassA` and is + * registered as a dependent class is registered under the interface name `IClassA`. */ export type Identifier = string | symbol;