mftsccs-node 0.2.6 → 0.2.8
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/README.md +1148 -11
- package/dist/bundle.js +1 -1
- package/dist/types/Api/Create/CreateTheCharacter.d.ts +42 -0
- package/dist/types/Api/Create/CreateTheConceptApi.d.ts +50 -0
- package/dist/types/Api/Create/CreateTheConnectionApi.d.ts +51 -0
- package/dist/types/Api/Create/CreateTheTextData.d.ts +56 -0
- package/dist/types/Api/Delete/DeleteConceptInBackend.d.ts +43 -0
- package/dist/types/Api/DeleteConnectionApiBulk.d.ts +55 -0
- package/dist/types/Api/DeleteTheConcept.d.ts +64 -0
- package/dist/types/Api/DeleteTheConnection.d.ts +76 -0
- package/dist/types/Api/GetAiData.d.ts +36 -0
- package/dist/types/Api/GetAllConcepts.d.ts +42 -0
- package/dist/types/Api/GetAllConceptsByType.d.ts +45 -0
- package/dist/types/Api/GetAllConnections.d.ts +48 -0
- package/dist/types/Api/GetAllConnectionsOfComposition.d.ts +79 -0
- package/dist/types/Api/GetAllConnectionsOfCompositionBulk.d.ts +90 -0
- package/dist/types/Api/GetAllLinkerConnectionsFromTheConcept.d.ts +52 -0
- package/dist/types/Api/GetAllLinkerConnectionsToTheConcept.d.ts +61 -0
- package/dist/types/Api/GetAllPrefetchConnections.d.ts +51 -0
- package/dist/types/Api/GetCharacterDataByCharacter.d.ts +31 -0
- package/dist/types/Api/GetCompositionConnectionsBetweenTwoConcepts.d.ts +39 -0
- package/dist/types/Api/GetConcept.d.ts +47 -0
- package/dist/types/Api/GetConceptBulk.d.ts +68 -0
- package/dist/types/Api/GetConceptByCharacterAndType.d.ts +75 -0
- package/dist/types/Api/GetConceptByCharacterValue.d.ts +47 -0
- package/dist/types/Api/GetConnection.d.ts +49 -0
- package/dist/types/Api/GetConnectionBulk.d.ts +46 -0
- package/dist/types/Api/GetConnectionOfTheConcept.d.ts +50 -0
- package/dist/types/Api/GetConnectionToTheConcept.d.ts +56 -0
- package/dist/types/Api/GetReservedConnectionIds.d.ts +36 -0
- package/dist/types/Api/GetReservedIds.d.ts +37 -0
- package/dist/types/Api/Login.d.ts +38 -0
- package/dist/types/Api/MakeTheNameInBackend.d.ts +39 -0
- package/dist/types/Api/MakeTheTypeConceptApi.d.ts +40 -0
- package/dist/types/Api/RecursiveSearch.d.ts +43 -0
- package/dist/types/Api/Search/FreeschemaQueryApi.d.ts +46 -0
- package/dist/types/Api/Search/Search.d.ts +67 -0
- package/dist/types/Api/Search/SearchInternalApi.d.ts +69 -0
- package/dist/types/Api/Search/SearchLinkMultipleApi.d.ts +90 -0
- package/dist/types/Api/Search/SearchWithLinker.d.ts +97 -0
- package/dist/types/Api/SearchConcept/GetConceptByCharacterAndCategoryApi.d.ts +39 -0
- package/dist/types/Api/SearchConcept/GetConceptByCharacterAndCategoryDirect.d.ts +47 -0
- package/dist/types/Api/Session/CreateSession.d.ts +45 -0
- package/dist/types/Api/Session/CreateSessionVisit.d.ts +43 -0
- package/dist/types/Api/Signin.d.ts +48 -0
- package/dist/types/Api/Signup.d.ts +44 -0
- package/dist/types/Api/View/ViewInternalDataApi.d.ts +50 -0
- package/dist/types/Constants/ApiConstants.d.ts +226 -0
- package/dist/types/Constants/FormatConstants.d.ts +81 -0
- package/dist/types/DataStructures/BaseUrl.d.ts +210 -0
- package/dist/types/DataStructures/BinaryCharacterTree.d.ts +211 -0
- package/dist/types/DataStructures/BinaryTree.d.ts +139 -0
- package/dist/types/DataStructures/BinaryTypeTree.d.ts +196 -0
- package/dist/types/DataStructures/CharacterRepository.d.ts +109 -0
- package/dist/types/DataStructures/Composition/Composition.d.ts +103 -0
- package/dist/types/DataStructures/Composition/CompositionBinaryTree.d.ts +104 -0
- package/dist/types/DataStructures/Composition/CompositionNode.d.ts +202 -0
- package/dist/types/DataStructures/Concept.d.ts +110 -0
- package/dist/types/DataStructures/ConceptData.d.ts +292 -0
- package/dist/types/DataStructures/ConceptsToDraw.d.ts +168 -0
- package/dist/types/DataStructures/Connection.d.ts +76 -0
- package/dist/types/DataStructures/ConnectionBinaryTree/ConnectionBinaryTree.d.ts +115 -0
- package/dist/types/DataStructures/ConnectionBinaryTree/ConnectionNode.d.ts +169 -0
- package/dist/types/DataStructures/ConnectionBinaryTree/ConnectionTypeTree.d.ts +82 -0
- package/dist/types/DataStructures/ConnectionData.d.ts +191 -0
- package/dist/types/DataStructures/Count/CountInfo.d.ts +73 -0
- package/dist/types/DataStructures/FilterSearch.d.ts +84 -0
- package/dist/types/DataStructures/IdentifierFlags.d.ts +34 -0
- package/dist/types/DataStructures/Local/LConcept.d.ts +105 -0
- package/dist/types/DataStructures/Local/LConnection.d.ts +83 -0
- package/dist/types/DataStructures/Local/LNode.d.ts +190 -0
- package/dist/types/DataStructures/Local/LocalBinaryCharacterTree.d.ts +133 -0
- package/dist/types/DataStructures/Local/LocalBinaryTree.d.ts +135 -0
- package/dist/types/DataStructures/Local/LocalBinaryTypeTree.d.ts +147 -0
- package/dist/types/DataStructures/Local/LocalConceptData.d.ts +100 -0
- package/dist/types/DataStructures/Local/LocalConnectionData.d.ts +109 -0
- package/dist/types/DataStructures/Local/LocalSyncData.d.ts +89 -0
- package/dist/types/DataStructures/PatcherStructure.d.ts +86 -0
- package/dist/types/DataStructures/ReferentInfo.d.ts +68 -0
- package/dist/types/DataStructures/ReservedIds.d.ts +101 -0
- package/dist/types/DataStructures/Responses/ErrorResponse.d.ts +184 -22
- package/dist/types/DataStructures/Responses/StandardResponses.d.ts +65 -0
- package/dist/types/DataStructures/Returner.d.ts +59 -0
- package/dist/types/DataStructures/Search/FreeschemaQuery.d.ts +165 -0
- package/dist/types/DataStructures/Search/SearchStructure.d.ts +69 -0
- package/dist/types/DataStructures/SearchQuery.d.ts +130 -0
- package/dist/types/DataStructures/Security/TokenStorage.d.ts +48 -0
- package/dist/types/DataStructures/Session/SessionData.d.ts +118 -0
- package/dist/types/DataStructures/SettingData.d.ts +32 -0
- package/dist/types/DataStructures/Settings.d.ts +27 -0
- package/dist/types/DataStructures/SigninModel.d.ts +50 -0
- package/dist/types/DataStructures/SignupModel.d.ts +50 -0
- package/dist/types/DataStructures/SyncData.d.ts +206 -0
- package/dist/types/DataStructures/TheCharacter.d.ts +87 -0
- package/dist/types/DataStructures/TheTexts.d.ts +92 -0
- package/dist/types/DataStructures/Transaction/Transaction.d.ts +294 -4
- package/dist/types/DataStructures/User/UserBinaryTree.d.ts +117 -0
- package/dist/types/DataStructures/User/UserNode.d.ts +130 -0
- package/dist/types/Database/GetConceptFromIndexDb.d.ts +9 -0
- package/dist/types/Database/NoIndexDb.d.ts +169 -0
- package/dist/types/Database/indexdblocal.d.ts +42 -0
- package/dist/types/Database/indexeddb.d.ts +43 -0
- package/dist/types/Drawing/ConceptDraw.d.ts +28 -0
- package/dist/types/Drawing/ConceptEvents.d.ts +46 -0
- package/dist/types/Helpers/CheckIfExists.d.ts +159 -0
- package/dist/types/Helpers/RemoveFromArray.d.ts +66 -0
- package/dist/types/Helpers/UniqueInsert.d.ts +28 -0
- package/dist/types/Services/CheckForConnectionDeletion.d.ts +190 -0
- package/dist/types/Services/Common/DecodeCountInfo.d.ts +54 -0
- package/dist/types/Services/Common/ErrorPosting.d.ts +49 -0
- package/dist/types/Services/Common/RegexFunction.d.ts +28 -0
- package/dist/types/Services/Composition/BuildComposition.d.ts +37 -0
- package/dist/types/Services/Composition/CompositionCache.d.ts +89 -0
- package/dist/types/Services/Composition/CreateCompositionCache.d.ts +43 -0
- package/dist/types/Services/Conversion/ConvertConcepts.d.ts +83 -0
- package/dist/types/Services/CreateBinaryTreeFromData.d.ts +38 -0
- package/dist/types/Services/CreateCharacterBinaryTreeFromData.d.ts +42 -0
- package/dist/types/Services/CreateConnectionBetweenTwoConcepts.d.ts +206 -0
- package/dist/types/Services/CreateDefaultConcept.d.ts +114 -0
- package/dist/types/Services/CreateTheComposition.d.ts +101 -0
- package/dist/types/Services/CreateTheConcept.d.ts +179 -0
- package/dist/types/Services/CreateTheConnection.d.ts +59 -0
- package/dist/types/Services/CreateTheConnectionGeneral.d.ts +127 -0
- package/dist/types/Services/CreateTypeTreeFromData.d.ts +43 -0
- package/dist/types/Services/Delete/DeleteConnectionByType.d.ts +52 -5
- package/dist/types/Services/Delete/GetAllConnectionByType.d.ts +57 -9
- package/dist/types/Services/DeleteConcept.d.ts +136 -0
- package/dist/types/Services/DeleteConnection.d.ts +194 -0
- package/dist/types/Services/FindConeceptsFromConnection.d.ts +179 -0
- package/dist/types/Services/FindConnectionsOfCompositionBulkInMemory.d.ts +157 -0
- package/dist/types/Services/GenerateHexNumber.d.ts +64 -0
- package/dist/types/Services/GetComposition.d.ts +331 -0
- package/dist/types/Services/GetCompositionBulk.d.ts +251 -3
- package/dist/types/Services/GetCompositionList.d.ts +130 -0
- package/dist/types/Services/GetConceptByCharacter.d.ts +84 -0
- package/dist/types/Services/GetConnections.d.ts +72 -0
- package/dist/types/Services/GetDataFromIndexDb.d.ts +79 -0
- package/dist/types/Services/GetLink.d.ts +104 -0
- package/dist/types/Services/GetLinkerConnectionFromConcept.d.ts +99 -0
- package/dist/types/Services/GetMaximumConnectionSyncTime.d.ts +57 -0
- package/dist/types/Services/GetRelation.d.ts +162 -0
- package/dist/types/Services/GetTheConcept.d.ts +71 -0
- package/dist/types/Services/GetTheReferent.d.ts +74 -0
- package/dist/types/Services/InitializeSystem.d.ts +119 -0
- package/dist/types/Services/Local/CreateDefaultLConcept.d.ts +48 -0
- package/dist/types/Services/Local/CreateLocalBinaryTreeFromData.d.ts +49 -0
- package/dist/types/Services/Local/CreateLocalBinaryTypeTreeFromData.d.ts +54 -0
- package/dist/types/Services/Local/CreateLocalCharacterBinaryTree.d.ts +60 -0
- package/dist/types/Services/Local/CreateTheCompositionLocal.d.ts +70 -0
- package/dist/types/Services/Local/CreateTheConceptLocal.d.ts +58 -0
- package/dist/types/Services/Local/CreateTheConnectionLocal.d.ts +56 -0
- package/dist/types/Services/Local/GetCompositionListLocal.d.ts +103 -0
- package/dist/types/Services/Local/GetCompositionLocal.d.ts +96 -0
- package/dist/types/Services/Local/GetConceptByCharacterLocal.d.ts +57 -0
- package/dist/types/Services/Local/MakeTheConceptLocal.d.ts +71 -0
- package/dist/types/Services/Local/MakeTheInstanceConceptLocal.d.ts +89 -0
- package/dist/types/Services/Local/MakeTheTypeLocal.d.ts +71 -0
- package/dist/types/Services/Local/UpdateCompositionLocal.d.ts +101 -0
- package/dist/types/Services/MakeTheCharacter.d.ts +74 -0
- package/dist/types/Services/MakeTheCharacterData.d.ts +65 -0
- package/dist/types/Services/MakeTheInstanceConcept.d.ts +75 -0
- package/dist/types/Services/MakeTheName.d.ts +81 -0
- package/dist/types/Services/MakeTheTimestamp.d.ts +68 -0
- package/dist/types/Services/MakeTheTypeConcept.d.ts +68 -0
- package/dist/types/Services/Mqtt/publishMessage.d.ts +27 -0
- package/dist/types/Services/Mqtt/subscribeMessage.d.ts +23 -0
- package/dist/types/Services/PatchComposition.d.ts +105 -0
- package/dist/types/Services/Search/DataIdFormat.d.ts +96 -24
- package/dist/types/Services/Search/FormatData.d.ts +92 -17
- package/dist/types/Services/Search/JustIdFormat.d.ts +91 -16
- package/dist/types/Services/Search/SearchLinkInternal.d.ts +28 -0
- package/dist/types/Services/Search/SearchLinkMultiple.d.ts +58 -0
- package/dist/types/Services/Search/SearchWithTypeAndLinker.d.ts +92 -24
- package/dist/types/Services/Search/orderingConnections.d.ts +34 -0
- package/dist/types/Services/SplitStrings.d.ts +50 -0
- package/dist/types/Services/UpdateComposition.d.ts +123 -0
- package/dist/types/Services/User/UserTranslation.d.ts +102 -0
- package/dist/types/Services/View/ViewInternalData.d.ts +32 -0
- package/dist/types/WrapperFunctions/SchemaQueryObservable.d.ts +140 -5
- package/dist/types/app.d.ts +72 -1
- package/package.json +1 -1
- package/dist/main.bundle.js +0 -2
- package/dist/main.bundle.js.LICENSE.txt +0 -1
- package/dist/serviceWorker.bundle.js +0 -2
- package/dist/serviceWorker.bundle.js.LICENSE.txt +0 -1
- package/dist/types/AccessTracker/accessTracker.d.ts +0 -67
- package/dist/types/Anomaly/anomaly.d.ts +0 -103
- package/dist/types/Api/Create/CreateTheGhostConceptApi.d.ts +0 -3
- package/dist/types/Api/Create/CreateTheGhostConnectionApi.d.ts +0 -2
- package/dist/types/Api/Delete/DeleteUserInBackend.d.ts +0 -1
- package/dist/types/Api/DeleteConnectionBulkApi.d.ts +0 -1
- package/dist/types/Api/GetConnections/GetConnectionsByTypeApi.d.ts +0 -3
- package/dist/types/Api/Images/GetImages.d.ts +0 -1
- package/dist/types/Api/Local/GetLocalConceptByCharacterValue.d.ts +0 -2
- package/dist/types/Api/Prototype/CreatePrototype.d.ts +0 -2
- package/dist/types/Api/Prototype/Selector.d.ts +0 -15
- package/dist/types/Api/Search/SearchWithTypeAndLinker.d.ts +0 -2
- package/dist/types/Api/SearchConcept/GetTypeConceptByBulk.d.ts +0 -2
- package/dist/types/Api/Translate/TranslateLocalToReal.d.ts +0 -2
- package/dist/types/Constants/AccessConstants.d.ts +0 -3
- package/dist/types/Constants/ckeditorCSS.d.ts +0 -1
- package/dist/types/Constants/general.const.d.ts +0 -6
- package/dist/types/Constants/page.const.d.ts +0 -5
- package/dist/types/DataStructures/ConnectionBinaryTree/ConnectionOfNode.d.ts +0 -10
- package/dist/types/DataStructures/ConnectionBinaryTree/ConnectionOfTheTree.d.ts +0 -24
- package/dist/types/DataStructures/ConnectionBinaryTree/ConnectionTypeNode.d.ts +0 -10
- package/dist/types/DataStructures/ConnectionBinaryTree/NodePrimitive.d.ts +0 -15
- package/dist/types/DataStructures/ConnectionByType/GetConnectionByType.d.ts +0 -4
- package/dist/types/DataStructures/Local/LocalGhostIdTree.d.ts +0 -11
- package/dist/types/DataStructures/Local/LocalId.d.ts +0 -19
- package/dist/types/DataStructures/Prototype/Prototype.d.ts +0 -19
- package/dist/types/DataStructures/Prototype/PrototypeOption.d.ts +0 -4
- package/dist/types/DataStructures/Prototype/QuerySelector.d.ts +0 -4
- package/dist/types/DataStructures/TypeLibrary.d.ts +0 -19
- package/dist/types/DataStructures/TypeNode.d.ts +0 -18
- package/dist/types/DataStructures/WidgetCache/WidgetCache.d.ts +0 -10
- package/dist/types/DataStructures/WidgetCache/WidgetDetails.d.ts +0 -9
- package/dist/types/DataStructures/WidgetCache/WidgetNode.d.ts +0 -18
- package/dist/types/Database/IndexUpdate.d.ts +0 -47
- package/dist/types/Middleware/ApplicationMonitor.d.ts +0 -14
- package/dist/types/Middleware/ErrorHandling.d.ts +0 -0
- package/dist/types/Middleware/logger.service.d.ts +0 -144
- package/dist/types/ServiceWorker/actions/connectionActions.d.ts +0 -2
- package/dist/types/ServiceWorker/actions/createActions.d.ts +0 -2
- package/dist/types/ServiceWorker/actions/deleteActions.d.ts +0 -2
- package/dist/types/ServiceWorker/actions/getActions.d.ts +0 -2
- package/dist/types/ServiceWorker/actions/index.d.ts +0 -15
- package/dist/types/ServiceWorker/actions/searchActions.d.ts +0 -2
- package/dist/types/ServiceWorker/actions/syncActions.d.ts +0 -2
- package/dist/types/ServiceWorker/actions/updateActions.d.ts +0 -2
- package/dist/types/ServiceWorker/index.d.ts +0 -11
- package/dist/types/Services/AccessControl/AccessControl.d.ts +0 -218
- package/dist/types/Services/Common/DelayFunction.d.ts +0 -7
- package/dist/types/Services/Common/MergeArrays.d.ts +0 -7
- package/dist/types/Services/Common/RemoveAllChild.d.ts +0 -1
- package/dist/types/Services/CreateConnection/CreateConnectionEntity.d.ts +0 -2
- package/dist/types/Services/DeleteConnectionByType.d.ts +0 -22
- package/dist/types/Services/GetConnectionBetweenTwoConceptsLinker.d.ts +0 -11
- package/dist/types/Services/Local/ConvertFromLConceptToConcept.d.ts +0 -2
- package/dist/types/Services/Local/ConvertFromLConnectionToConnection.d.ts +0 -2
- package/dist/types/Services/Local/CreateConnectionBetweenTwoConceptsLocal.d.ts +0 -3
- package/dist/types/Services/Local/DeleteConceptLocal.d.ts +0 -1
- package/dist/types/Services/Local/GetConnectionOfTheConceptLocal.d.ts +0 -2
- package/dist/types/Services/Local/GetRelationLocal.d.ts +0 -1
- package/dist/types/Services/Local/GetTheConceptLocal.d.ts +0 -9
- package/dist/types/Services/Logs/LogEvent.d.ts +0 -1
- package/dist/types/Services/Mail.d.ts +0 -18
- package/dist/types/Services/Transaction/LocalTransaction.d.ts +0 -45
- package/dist/types/Services/Upload.d.ts +0 -33
- package/dist/types/Services/User/UserFromLocalStorage.d.ts +0 -6
- package/dist/types/Services/assets/GetImageService.d.ts +0 -14
- package/dist/types/Services/automated/automated-concept-connection.d.ts +0 -7
- package/dist/types/Services/cacheService.d.ts +0 -1
- package/dist/types/Validator/constant.d.ts +0 -3
- package/dist/types/Validator/interface.d.ts +0 -19
- package/dist/types/Validator/utils.d.ts +0 -7
- package/dist/types/Validator/validator.d.ts +0 -37
- package/dist/types/Visualize/ConceptCircle.d.ts +0 -35
- package/dist/types/Visualize/ConceptCircleList.d.ts +0 -9
- package/dist/types/Visualize/ConnectionLine.d.ts +0 -21
- package/dist/types/Visualize/ConnectionLineList.d.ts +0 -6
- package/dist/types/Visualize/drawExistingConcepts.d.ts +0 -8
- package/dist/types/Visualize/helper.d.ts +0 -15
- package/dist/types/Visualize/index.d.ts +0 -0
- package/dist/types/Widgets/BaseObserver.d.ts +0 -22
- package/dist/types/Widgets/BaseWidget.d.ts +0 -24
- package/dist/types/Widgets/BuilderSpeceficFunctions.d.ts +0 -2
- package/dist/types/Widgets/BuilderStatefulWidget.d.ts +0 -42
- package/dist/types/Widgets/CacheWidget.service.d.ts +0 -17
- package/dist/types/Widgets/NormalizeStyles.service.d.ts +0 -1
- package/dist/types/Widgets/RenderPage.service.d.ts +0 -12
- package/dist/types/Widgets/RenderWidgetLibrary.service.d.ts +0 -14
- package/dist/types/Widgets/RenderWidgetService.d.ts +0 -50
- package/dist/types/Widgets/StatefulWidget.d.ts +0 -102
- package/dist/types/Widgets/WidgetBuild.d.ts +0 -4
- package/dist/types/Widgets/WidgetTree.d.ts +0 -29
- package/dist/types/Widgets/mainView.class.d.ts +0 -6
- package/dist/types/WrapperFunctions/DepenedencyObserver.d.ts +0 -73
- package/dist/types/WrapperFunctions/GetCompositionListObservable.d.ts +0 -19
- package/dist/types/WrapperFunctions/GetCompositionObservable.d.ts +0 -13
- package/dist/types/WrapperFunctions/GetLinkListObservable.d.ts +0 -28
- package/dist/types/WrapperFunctions/GetLinkObservable.d.ts +0 -32
- package/dist/types/WrapperFunctions/RecursiveSearchObservable.d.ts +0 -37
- package/dist/types/WrapperFunctions/SearchLinkMultipleAllObservable.d.ts +0 -15
- package/dist/types/prototype/getPrototype.service.d.ts +0 -2
- package/dist/types/prototype/prototype.service.d.ts +0 -25
- package/dist/types/service-worker.d.ts +0 -1
|
@@ -1,25 +1,317 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview ConceptsData module for managing concept storage and retrieval in CCS-JS.
|
|
3
|
+
* This module provides centralized management of concepts using multiple indexing strategies
|
|
4
|
+
* including binary trees, character-based trees, and type-based trees for efficient lookups.
|
|
5
|
+
* @module DataStructures/ConceptData
|
|
6
|
+
*/
|
|
1
7
|
import { Concept } from "./Concept";
|
|
8
|
+
/**
|
|
9
|
+
* Central repository for managing all concepts in the CCS system.
|
|
10
|
+
* Provides multiple indexing strategies (ID-based, character-based, type-based) for efficient concept retrieval.
|
|
11
|
+
* Maintains both in-memory (tree structures) and persistent (IndexedDB) storage.
|
|
12
|
+
*
|
|
13
|
+
* @class ConceptsData
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* // Add a concept to the system
|
|
17
|
+
* ConceptsData.AddConcept(myConcept);
|
|
18
|
+
*
|
|
19
|
+
* // Retrieve a concept by ID
|
|
20
|
+
* const concept = await ConceptsData.GetConcept(123);
|
|
21
|
+
*
|
|
22
|
+
* // Get concepts by type
|
|
23
|
+
* const concepts = ConceptsData.GetConceptsByTypeId(10);
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @remarks
|
|
27
|
+
* This class uses static methods and properties, functioning as a singleton data store.
|
|
28
|
+
* It coordinates multiple indexing strategies for optimized query performance.
|
|
29
|
+
*/
|
|
2
30
|
export declare class ConceptsData {
|
|
31
|
+
/** Name identifier for this data structure */
|
|
3
32
|
name: string;
|
|
33
|
+
/**
|
|
34
|
+
* Creates a new ConceptsData instance.
|
|
35
|
+
* @remarks This is rarely instantiated as the class primarily uses static methods.
|
|
36
|
+
*/
|
|
4
37
|
constructor();
|
|
38
|
+
/** Legacy array storage for concepts (deprecated in favor of tree structures) */
|
|
5
39
|
static conceptsArray: Concept[];
|
|
40
|
+
/**
|
|
41
|
+
* NPC (Non-Persistent Concepts) cache for temporarily tracking accessed concept IDs.
|
|
42
|
+
* Limited to 10 entries for memory management.
|
|
43
|
+
*/
|
|
6
44
|
static NPC: number[];
|
|
45
|
+
/** Dictionary-style storage for quick concept lookups by ID */
|
|
7
46
|
static conceptDictionary: Concept[];
|
|
47
|
+
/**
|
|
48
|
+
* Checks if a concept already exists in the concepts array.
|
|
49
|
+
*
|
|
50
|
+
* @param {Concept} concept - The concept to check for existence
|
|
51
|
+
* @returns {boolean} True if the concept exists, false otherwise
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```typescript
|
|
55
|
+
* const exists = ConceptsData.CheckContains(myConcept);
|
|
56
|
+
* if (!exists) {
|
|
57
|
+
* // Add the concept
|
|
58
|
+
* }
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
8
61
|
static CheckContains(concept: Concept): boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Adds a concept ID to the Non-Persistent Concepts (NPC) cache.
|
|
64
|
+
* Used for tracking recently accessed concepts. Automatically clears when exceeding 10 entries.
|
|
65
|
+
*
|
|
66
|
+
* @param {number} id - The concept ID to add to NPC cache
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```typescript
|
|
70
|
+
* ConceptsData.AddNpc(123);
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
9
73
|
static AddNpc(id: number): void;
|
|
74
|
+
/**
|
|
75
|
+
* Checks if a concept ID exists in the NPC cache.
|
|
76
|
+
*
|
|
77
|
+
* @param {number} id - The concept ID to check
|
|
78
|
+
* @returns {boolean} True if the ID is in the NPC cache, false otherwise
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```typescript
|
|
82
|
+
* if (ConceptsData.GetNpc(123)) {
|
|
83
|
+
* console.log("Concept recently accessed");
|
|
84
|
+
* }
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
10
87
|
static GetNpc(id: number): boolean;
|
|
88
|
+
/**
|
|
89
|
+
* Adds a concept to persistent storage (IndexedDB) only.
|
|
90
|
+
* Does not update in-memory tree structures.
|
|
91
|
+
*
|
|
92
|
+
* @param {Concept} concept - The concept to store persistently
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```typescript
|
|
96
|
+
* ConceptsData.AddConceptToStorage(myConcept);
|
|
97
|
+
* ```
|
|
98
|
+
*
|
|
99
|
+
* @remarks Only stores concepts with valid IDs (id > 0)
|
|
100
|
+
*/
|
|
11
101
|
static AddConceptToStorage(concept: Concept): void;
|
|
102
|
+
/**
|
|
103
|
+
* Adds a concept to both persistent storage and all in-memory tree indexes.
|
|
104
|
+
* This is the primary method for adding concepts to the system.
|
|
105
|
+
*
|
|
106
|
+
* @param {Concept} concept - The concept to add
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```typescript
|
|
110
|
+
* const newConcept = new Concept(...);
|
|
111
|
+
* ConceptsData.AddConcept(newConcept);
|
|
112
|
+
* ```
|
|
113
|
+
*
|
|
114
|
+
* @remarks
|
|
115
|
+
* Updates three tree structures:
|
|
116
|
+
* - BinaryTree (ID-based lookup)
|
|
117
|
+
* - BinaryTypeTree (type-based lookup)
|
|
118
|
+
* - BinaryCharacterTree (character value lookup)
|
|
119
|
+
* Only processes concepts with valid IDs (id > 0)
|
|
120
|
+
*/
|
|
12
121
|
static AddConcept(concept: Concept): void;
|
|
122
|
+
/**
|
|
123
|
+
* Adds a concept to in-memory tree structures only, without persisting to storage.
|
|
124
|
+
* Useful for temporary concepts or when storage is handled separately.
|
|
125
|
+
*
|
|
126
|
+
* @param {Concept} concept - The concept to add to memory
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* ```typescript
|
|
130
|
+
* ConceptsData.AddConceptToMemory(temporaryConcept);
|
|
131
|
+
* ```
|
|
132
|
+
*
|
|
133
|
+
* @remarks
|
|
134
|
+
* Updates three tree structures without touching IndexedDB.
|
|
135
|
+
* Only processes concepts with valid IDs (id > 0)
|
|
136
|
+
*/
|
|
13
137
|
static AddConceptToMemory(concept: Concept): void;
|
|
138
|
+
/**
|
|
139
|
+
* Adds a concept to the legacy array storage temporarily.
|
|
140
|
+
* Removes existing duplicates before adding.
|
|
141
|
+
*
|
|
142
|
+
* @param {Concept} concept - The concept to add temporarily
|
|
143
|
+
*
|
|
144
|
+
* @example
|
|
145
|
+
* ```typescript
|
|
146
|
+
* ConceptsData.AddConceptTemporary(tempConcept);
|
|
147
|
+
* ```
|
|
148
|
+
*
|
|
149
|
+
* @remarks
|
|
150
|
+
* This method uses the legacy conceptsArray and conceptDictionary.
|
|
151
|
+
* Consider using AddConceptToMemory for new implementations.
|
|
152
|
+
*/
|
|
14
153
|
static AddConceptTemporary(concept: Concept): void;
|
|
154
|
+
/**
|
|
155
|
+
* Removes a concept from all storage locations (memory trees and persistent storage).
|
|
156
|
+
*
|
|
157
|
+
* @param {Concept} concept - The concept to remove
|
|
158
|
+
*
|
|
159
|
+
* @example
|
|
160
|
+
* ```typescript
|
|
161
|
+
* ConceptsData.RemoveConcept(obsoleteConcept);
|
|
162
|
+
* ```
|
|
163
|
+
*
|
|
164
|
+
* @remarks
|
|
165
|
+
* Removes from:
|
|
166
|
+
* - Legacy conceptsArray
|
|
167
|
+
* - BinaryTree (ID index)
|
|
168
|
+
* - IndexedDB persistent storage
|
|
169
|
+
*/
|
|
15
170
|
static RemoveConcept(concept: Concept): void;
|
|
171
|
+
/**
|
|
172
|
+
* Retrieves a concept by its ID from the binary tree index.
|
|
173
|
+
*
|
|
174
|
+
* @param {number} id - The concept ID to retrieve
|
|
175
|
+
* @returns {Promise<Concept>} The concept if found, or a default concept if not found
|
|
176
|
+
*
|
|
177
|
+
* @example
|
|
178
|
+
* ```typescript
|
|
179
|
+
* const concept = await ConceptsData.GetConcept(123);
|
|
180
|
+
* if (concept.id !== 0) {
|
|
181
|
+
* console.log("Found:", concept.characterValue);
|
|
182
|
+
* }
|
|
183
|
+
* ```
|
|
184
|
+
*
|
|
185
|
+
* @remarks
|
|
186
|
+
* Returns a default concept (id = 0) if the concept is not found.
|
|
187
|
+
* Uses BinaryTree for O(log n) lookup performance.
|
|
188
|
+
*/
|
|
16
189
|
static GetConcept(id: number): Promise<Concept>;
|
|
190
|
+
/**
|
|
191
|
+
* Retrieves a concept by its character value from the character tree index.
|
|
192
|
+
*
|
|
193
|
+
* @param {string} characterValue - The character value to search for
|
|
194
|
+
* @returns {Promise<Concept>} The concept if found, or a default concept if not found
|
|
195
|
+
*
|
|
196
|
+
* @example
|
|
197
|
+
* ```typescript
|
|
198
|
+
* const concept = await ConceptsData.GetConceptByCharacter("Hello");
|
|
199
|
+
* ```
|
|
200
|
+
*
|
|
201
|
+
* @remarks
|
|
202
|
+
* Uses BinaryCharacterTree for efficient character-based lookups.
|
|
203
|
+
* Returns a default concept if not found.
|
|
204
|
+
*/
|
|
17
205
|
static GetConceptByCharacter(characterValue: string): Promise<Concept>;
|
|
206
|
+
/**
|
|
207
|
+
* Retrieves a concept by its character value (updated version).
|
|
208
|
+
* Currently identical to GetConceptByCharacter.
|
|
209
|
+
*
|
|
210
|
+
* @param {string} characterValue - The character value to search for
|
|
211
|
+
* @returns {Promise<Concept>} The concept if found, or a default concept if not found
|
|
212
|
+
*
|
|
213
|
+
* @example
|
|
214
|
+
* ```typescript
|
|
215
|
+
* const concept = await ConceptsData.GetConceptByCharacterUpdated("Hello");
|
|
216
|
+
* ```
|
|
217
|
+
*
|
|
218
|
+
* @remarks
|
|
219
|
+
* This method may be deprecated or merged with GetConceptByCharacter in future versions.
|
|
220
|
+
*/
|
|
18
221
|
static GetConceptByCharacterUpdated(characterValue: string): Promise<Concept>;
|
|
222
|
+
/**
|
|
223
|
+
* Retrieves a concept by both its character value and type ID from local storage.
|
|
224
|
+
* Provides more specific matching than character-only searches.
|
|
225
|
+
*
|
|
226
|
+
* @param {string} character_value - The character value to search for
|
|
227
|
+
* @param {number} typeId - The type ID to filter by
|
|
228
|
+
* @returns {Promise<Concept>} The concept matching both criteria, or a default concept if not found
|
|
229
|
+
*
|
|
230
|
+
* @example
|
|
231
|
+
* ```typescript
|
|
232
|
+
* const concept = await ConceptsData.GetConceptByCharacterAndTypeLocal("Apple", 5);
|
|
233
|
+
* ```
|
|
234
|
+
*
|
|
235
|
+
* @remarks
|
|
236
|
+
* Uses BinaryTypeTree for efficient combined character and type lookups.
|
|
237
|
+
* More specific than GetConceptByCharacter as it filters by type.
|
|
238
|
+
*/
|
|
19
239
|
static GetConceptByCharacterAndTypeLocal(character_value: string, typeId: number): Promise<Concept>;
|
|
240
|
+
/**
|
|
241
|
+
* Retrieves a concept by both its character value and category ID from local storage.
|
|
242
|
+
*
|
|
243
|
+
* @param {string} character_value - The character value to search for
|
|
244
|
+
* @param {number} categoryId - The category ID to filter by
|
|
245
|
+
* @returns {Promise<Concept>} The concept matching both criteria, or a default concept if not found
|
|
246
|
+
*
|
|
247
|
+
* @example
|
|
248
|
+
* ```typescript
|
|
249
|
+
* const concept = await ConceptsData.GetConceptByCharacterAndCategoryLocal("Fruit", 3);
|
|
250
|
+
* ```
|
|
251
|
+
*
|
|
252
|
+
* @remarks
|
|
253
|
+
* Uses BinaryCharacterTree with category filtering for specific lookups.
|
|
254
|
+
*/
|
|
20
255
|
static GetConceptByCharacterAndCategoryLocal(character_value: string, categoryId: number): Promise<Concept>;
|
|
256
|
+
/**
|
|
257
|
+
* Retrieves all concepts of a specific type ID from local storage.
|
|
258
|
+
*
|
|
259
|
+
* @param {number} typeId - The type ID to filter by
|
|
260
|
+
* @returns {Concept[]} Array of concepts with the specified type
|
|
261
|
+
*
|
|
262
|
+
* @example
|
|
263
|
+
* ```typescript
|
|
264
|
+
* const fruits = ConceptsData.GetConceptsByTypeId(5);
|
|
265
|
+
* console.log(`Found ${fruits.length} fruits`);
|
|
266
|
+
* ```
|
|
267
|
+
*
|
|
268
|
+
* @remarks
|
|
269
|
+
* Currently searches the legacy conceptsArray.
|
|
270
|
+
* Consider using GetConceptsByTypeIdAndUser for more specific queries.
|
|
271
|
+
*/
|
|
21
272
|
static GetConceptsByTypeId(typeId: number): Concept[];
|
|
273
|
+
/**
|
|
274
|
+
* Retrieves all concepts of a specific type ID and user ID from the type tree.
|
|
275
|
+
*
|
|
276
|
+
* @param {number} typeId - The type ID to filter by
|
|
277
|
+
* @param {number} userId - The user ID to filter by
|
|
278
|
+
* @returns {Promise<Concept[]>} Array of concepts matching both type and user
|
|
279
|
+
*
|
|
280
|
+
* @example
|
|
281
|
+
* ```typescript
|
|
282
|
+
* const userConcepts = await ConceptsData.GetConceptsByTypeIdAndUser(5, 1);
|
|
283
|
+
* ```
|
|
284
|
+
*
|
|
285
|
+
* @remarks
|
|
286
|
+
* Uses BinaryTypeTree for efficient filtered queries.
|
|
287
|
+
* Useful for multi-user systems to get user-specific concepts of a type.
|
|
288
|
+
*/
|
|
22
289
|
static GetConceptsByTypeIdAndUser(typeId: number, userId: number): Promise<Concept[]>;
|
|
290
|
+
/**
|
|
291
|
+
* Returns the root node of the binary character tree.
|
|
292
|
+
* Used for direct tree traversal or debugging.
|
|
293
|
+
*
|
|
294
|
+
* @returns {Node | null} The root node of the character tree
|
|
295
|
+
*
|
|
296
|
+
* @example
|
|
297
|
+
* ```typescript
|
|
298
|
+
* const tree = ConceptsData.GetBinaryCharacterTree();
|
|
299
|
+
* if (tree) {
|
|
300
|
+
* console.log("Tree root:", tree.key);
|
|
301
|
+
* }
|
|
302
|
+
* ```
|
|
303
|
+
*/
|
|
23
304
|
static GetBinaryCharacterTree(): import("./Node").Node | null;
|
|
305
|
+
/**
|
|
306
|
+
* Returns the name identifier of this data structure instance.
|
|
307
|
+
*
|
|
308
|
+
* @returns {string} The name "conceptsArray"
|
|
309
|
+
*
|
|
310
|
+
* @example
|
|
311
|
+
* ```typescript
|
|
312
|
+
* const conceptData = new ConceptsData();
|
|
313
|
+
* console.log(conceptData.getName()); // "conceptsArray"
|
|
314
|
+
* ```
|
|
315
|
+
*/
|
|
24
316
|
getName(): string;
|
|
25
317
|
}
|
|
@@ -1,11 +1,179 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Static repository for managing concepts to be drawn/rendered in the CCS-JS system.
|
|
3
|
+
* @module DataStructures/ConceptsToDraw
|
|
4
|
+
*/
|
|
1
5
|
import { Concept } from "./Concept";
|
|
6
|
+
/**
|
|
7
|
+
* Manages a static collection of concepts that need to be drawn or rendered.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* ConceptsToDraw acts as a singleton-like repository using static methods and properties
|
|
11
|
+
* to manage a collection of Concept instances. It provides functionality to add, remove,
|
|
12
|
+
* check existence, and retrieve concepts by ID. This is typically used for maintaining
|
|
13
|
+
* a render queue or active concept list in visualization components.
|
|
14
|
+
*
|
|
15
|
+
* The class uses static methods for all operations, meaning the concept array is shared
|
|
16
|
+
* across all instances of the class. The instance method `getName()` is provided for
|
|
17
|
+
* identification purposes.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* // Add concepts to the collection
|
|
22
|
+
* const concept1 = new Concept(...);
|
|
23
|
+
* ConceptsToDraw.AddConcept(concept1);
|
|
24
|
+
*
|
|
25
|
+
* // Check if a concept exists
|
|
26
|
+
* if (ConceptsToDraw.CheckContains(concept1)) {
|
|
27
|
+
* console.log('Concept is in the draw queue');
|
|
28
|
+
* }
|
|
29
|
+
*
|
|
30
|
+
* // Retrieve a concept by ID
|
|
31
|
+
* const retrieved = ConceptsToDraw.GetConcept(concept1.id);
|
|
32
|
+
*
|
|
33
|
+
* // Remove when done
|
|
34
|
+
* ConceptsToDraw.RemoveConcept(concept1);
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
2
37
|
export declare class ConceptsToDraw {
|
|
38
|
+
/**
|
|
39
|
+
* Descriptive name for this concepts collection.
|
|
40
|
+
* @defaultValue "concepts To Draw"
|
|
41
|
+
*/
|
|
3
42
|
name: string;
|
|
43
|
+
/**
|
|
44
|
+
* Creates a new ConceptsToDraw instance.
|
|
45
|
+
*
|
|
46
|
+
* @remarks
|
|
47
|
+
* While the class can be instantiated, the primary functionality is accessed
|
|
48
|
+
* through static methods. Instances are mainly useful for accessing the `name`
|
|
49
|
+
* property via the `getName()` method.
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* const conceptsToDraw = new ConceptsToDraw();
|
|
54
|
+
* console.log(conceptsToDraw.getName()); // "concepts To Draw"
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
4
57
|
constructor();
|
|
58
|
+
/**
|
|
59
|
+
* Static array holding all concepts that are queued to be drawn.
|
|
60
|
+
*
|
|
61
|
+
* @remarks
|
|
62
|
+
* This array is shared across all instances and should be managed through
|
|
63
|
+
* the static methods provided by the class. Direct manipulation is not recommended.
|
|
64
|
+
*/
|
|
5
65
|
static conceptsArray: Concept[];
|
|
66
|
+
/**
|
|
67
|
+
* Checks whether a concept already exists in the collection.
|
|
68
|
+
*
|
|
69
|
+
* @param concept - The concept to check for existence
|
|
70
|
+
* @returns `true` if the concept exists (matched by ID), `false` otherwise
|
|
71
|
+
*
|
|
72
|
+
* @remarks
|
|
73
|
+
* Performs a linear search through the conceptsArray comparing concept IDs.
|
|
74
|
+
* This method is used internally by `AddConcept` to prevent duplicates.
|
|
75
|
+
*
|
|
76
|
+
* @example
|
|
77
|
+
* ```typescript
|
|
78
|
+
* const concept = new Concept(...);
|
|
79
|
+
* ConceptsToDraw.AddConcept(concept);
|
|
80
|
+
*
|
|
81
|
+
* if (ConceptsToDraw.CheckContains(concept)) {
|
|
82
|
+
* console.log('Concept already exists');
|
|
83
|
+
* }
|
|
84
|
+
* ```
|
|
85
|
+
*/
|
|
6
86
|
static CheckContains(concept: Concept): boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Adds a concept to the collection if it doesn't already exist.
|
|
89
|
+
*
|
|
90
|
+
* @param concept - The concept to add to the collection
|
|
91
|
+
*
|
|
92
|
+
* @remarks
|
|
93
|
+
* This method ensures no duplicate concepts are added by first checking
|
|
94
|
+
* existence via `CheckContains`. Only concepts with unique IDs will be added.
|
|
95
|
+
* If a concept with the same ID already exists, the method silently returns
|
|
96
|
+
* without adding the duplicate.
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* ```typescript
|
|
100
|
+
* const concept1 = new Concept(...);
|
|
101
|
+
* const concept2 = new Concept(...);
|
|
102
|
+
*
|
|
103
|
+
* ConceptsToDraw.AddConcept(concept1);
|
|
104
|
+
* ConceptsToDraw.AddConcept(concept2);
|
|
105
|
+
* ConceptsToDraw.AddConcept(concept1); // Won't add duplicate
|
|
106
|
+
*
|
|
107
|
+
* console.log(ConceptsToDraw.conceptsArray.length); // 2
|
|
108
|
+
* ```
|
|
109
|
+
*/
|
|
7
110
|
static AddConcept(concept: Concept): void;
|
|
111
|
+
/**
|
|
112
|
+
* Removes a concept from the collection by matching its ID.
|
|
113
|
+
*
|
|
114
|
+
* @param concept - The concept to remove from the collection
|
|
115
|
+
*
|
|
116
|
+
* @remarks
|
|
117
|
+
* Performs a linear search to find and remove the concept with a matching ID.
|
|
118
|
+
* Uses `Array.splice()` to remove the element. If multiple concepts with the
|
|
119
|
+
* same ID exist (which shouldn't happen with proper usage of AddConcept), only
|
|
120
|
+
* the first match is removed.
|
|
121
|
+
*
|
|
122
|
+
* If the concept doesn't exist in the array, the method completes without error.
|
|
123
|
+
*
|
|
124
|
+
* @example
|
|
125
|
+
* ```typescript
|
|
126
|
+
* const concept = new Concept(...);
|
|
127
|
+
* ConceptsToDraw.AddConcept(concept);
|
|
128
|
+
*
|
|
129
|
+
* // Later, when no longer needed
|
|
130
|
+
* ConceptsToDraw.RemoveConcept(concept);
|
|
131
|
+
*
|
|
132
|
+
* // Verify removal
|
|
133
|
+
* console.log(ConceptsToDraw.CheckContains(concept)); // false
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
8
136
|
static RemoveConcept(concept: Concept): void;
|
|
137
|
+
/**
|
|
138
|
+
* Retrieves a concept from the collection by its ID.
|
|
139
|
+
*
|
|
140
|
+
* @param id - The unique identifier of the concept to retrieve
|
|
141
|
+
* @returns The Concept object if found, or `null` if no matching concept exists
|
|
142
|
+
*
|
|
143
|
+
* @remarks
|
|
144
|
+
* Performs a linear search through the conceptsArray to find a concept with
|
|
145
|
+
* the matching ID. Returns the first match found. If no concept with the
|
|
146
|
+
* specified ID exists, returns `null`.
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* ```typescript
|
|
150
|
+
* const concept = new Concept(...);
|
|
151
|
+
* ConceptsToDraw.AddConcept(concept);
|
|
152
|
+
*
|
|
153
|
+
* // Retrieve by ID
|
|
154
|
+
* const retrieved = ConceptsToDraw.GetConcept(concept.id);
|
|
155
|
+
* if (retrieved) {
|
|
156
|
+
* console.log('Found concept:', retrieved.id);
|
|
157
|
+
* } else {
|
|
158
|
+
* console.log('Concept not found');
|
|
159
|
+
* }
|
|
160
|
+
* ```
|
|
161
|
+
*/
|
|
9
162
|
static GetConcept(id: number): Concept | null;
|
|
163
|
+
/**
|
|
164
|
+
* Gets the descriptive name of this concepts collection.
|
|
165
|
+
*
|
|
166
|
+
* @returns The name string "concepts To Draw"
|
|
167
|
+
*
|
|
168
|
+
* @remarks
|
|
169
|
+
* This is an instance method (unlike the other methods which are static),
|
|
170
|
+
* so it requires an instance of ConceptsToDraw to call.
|
|
171
|
+
*
|
|
172
|
+
* @example
|
|
173
|
+
* ```typescript
|
|
174
|
+
* const conceptsToDraw = new ConceptsToDraw();
|
|
175
|
+
* console.log(conceptsToDraw.getName()); // "concepts To Draw"
|
|
176
|
+
* ```
|
|
177
|
+
*/
|
|
10
178
|
getName(): string;
|
|
11
179
|
}
|
|
@@ -1,27 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Connection module for the Concept Connection System (CCS-JS).
|
|
3
|
+
* This module defines the Connection class which represents relationships between concepts.
|
|
4
|
+
* @module DataStructures/Connection
|
|
5
|
+
*/
|
|
1
6
|
import { Concept } from "./Concept";
|
|
7
|
+
/**
|
|
8
|
+
* Represents a connection (relationship) between two concepts in the CCS system.
|
|
9
|
+
* Connections link concepts together and define semantic relationships with type, order, security, and access control.
|
|
10
|
+
*
|
|
11
|
+
* @class Connection
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const connection = new Connection(
|
|
15
|
+
* 0, // id
|
|
16
|
+
* 123, // ofTheConceptId
|
|
17
|
+
* 456, // toTheConceptId
|
|
18
|
+
* 1, 1, // userIds
|
|
19
|
+
* 1, // userId
|
|
20
|
+
* 10, 1, // type
|
|
21
|
+
* 0, 0, // order
|
|
22
|
+
* 0, 0, // security
|
|
23
|
+
* 0, 0, // access
|
|
24
|
+
* 0, 0 // sessionInfo
|
|
25
|
+
* );
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
2
28
|
export declare class Connection {
|
|
29
|
+
/** Unique identifier for this connection */
|
|
3
30
|
id: number;
|
|
31
|
+
/** User ID of the connection owner */
|
|
4
32
|
userId: number;
|
|
33
|
+
/** Ghost ID for tracking temporary connections before persistence */
|
|
5
34
|
ghostId: number;
|
|
35
|
+
/** ID of the source concept in this connection */
|
|
6
36
|
ofTheConceptId: number;
|
|
37
|
+
/** ID of the target concept in this connection */
|
|
7
38
|
toTheConceptId: number;
|
|
39
|
+
/** User ID of the source concept owner */
|
|
8
40
|
ofTheConceptUserId: number;
|
|
41
|
+
/** User ID of the target concept owner */
|
|
9
42
|
toTheConceptUserId: number;
|
|
43
|
+
/** Timestamp when the connection was created */
|
|
10
44
|
entryTimeStamp: Date | string;
|
|
45
|
+
/** Termination date for the connection (if applicable) */
|
|
11
46
|
terminationDateTime: Date;
|
|
47
|
+
/** Type ID defining the semantic meaning of this connection */
|
|
12
48
|
typeId: number;
|
|
49
|
+
/** User ID of the type concept owner */
|
|
13
50
|
typeUserId: number;
|
|
51
|
+
/** Order ID for sorting connections */
|
|
14
52
|
orderId: number;
|
|
53
|
+
/** User ID of the order concept owner */
|
|
15
54
|
orderUserId: number;
|
|
55
|
+
/** Security concept ID controlling access permissions */
|
|
16
56
|
securityId: number;
|
|
57
|
+
/** User ID of the security concept owner */
|
|
17
58
|
securityUserId: number;
|
|
59
|
+
/** Access control concept ID */
|
|
18
60
|
accessId: number;
|
|
61
|
+
/** User ID of the access concept owner */
|
|
19
62
|
accessUserId: number;
|
|
63
|
+
/** Session information concept ID for tracking connection context */
|
|
20
64
|
sessionInformationId: number;
|
|
65
|
+
/** User ID of the session information concept owner */
|
|
21
66
|
sessionInformationUserId: number;
|
|
67
|
+
/** Local synchronization timestamp for offline support */
|
|
22
68
|
localSyncTime: Date;
|
|
69
|
+
/** Flag indicating if this is a temporary connection not yet persisted */
|
|
23
70
|
isTemp: boolean;
|
|
71
|
+
/** Flag indicating if this connection needs to be updated */
|
|
24
72
|
toUpdate: boolean;
|
|
73
|
+
/** The type concept object providing semantic meaning to this connection */
|
|
25
74
|
type: Concept;
|
|
75
|
+
/**
|
|
76
|
+
* Creates a new Connection instance.
|
|
77
|
+
*
|
|
78
|
+
* @param {number} [id=0] - Unique identifier for the connection
|
|
79
|
+
* @param {number} ofTheConceptId - Source concept ID
|
|
80
|
+
* @param {number} toTheConceptId - Target concept ID
|
|
81
|
+
* @param {number} ofTheConceptUserId - User ID of source concept owner
|
|
82
|
+
* @param {number} toTheConceptUserId - User ID of target concept owner
|
|
83
|
+
* @param {number} userId - User ID of connection creator
|
|
84
|
+
* @param {number} typeId - Connection type ID
|
|
85
|
+
* @param {number} typeUserId - User ID of type concept owner
|
|
86
|
+
* @param {number} orderId - Order concept ID for sorting
|
|
87
|
+
* @param {number} orderUserId - User ID of order concept owner
|
|
88
|
+
* @param {number} securityId - Security concept ID
|
|
89
|
+
* @param {number} securityUserId - User ID of security concept owner
|
|
90
|
+
* @param {number} accessId - Access control concept ID
|
|
91
|
+
* @param {number} accessUserId - User ID of access concept owner
|
|
92
|
+
* @param {number} sessionInformationId - Session information concept ID
|
|
93
|
+
* @param {number} sessionInformationUserId - User ID of session information concept owner
|
|
94
|
+
*
|
|
95
|
+
* @example
|
|
96
|
+
* ```typescript
|
|
97
|
+
* const connection = new Connection(
|
|
98
|
+
* 1, 100, 200, 1, 1, 1, 5, 1, 0, 0, 0, 0, 0, 0, 0, 0
|
|
99
|
+
* );
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
26
102
|
constructor(id: number | undefined, ofTheConceptId: number, toTheConceptId: number, ofTheConceptUserId: number, toTheConceptUserId: number, userId: number, typeId: number, typeUserId: number, orderId: number, orderUserId: number, securityId: number, securityUserId: number, accessId: number, accessUserId: number, sessionInformationId: number, sessionInformationUserId: number);
|
|
27
103
|
}
|