mftsccs-node 0.0.56 → 0.0.58
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 -0
- package/dist/types/Api/Create/CreateTheCharacter.d.ts +45 -0
- package/dist/types/Api/Create/CreateTheConceptApi.d.ts +52 -0
- package/dist/types/Api/Create/CreateTheConnectionApi.d.ts +53 -0
- package/dist/types/Api/Create/CreateTheTextData.d.ts +58 -0
- package/dist/types/Api/Delete/DeleteConceptInBackend.d.ts +44 -0
- package/dist/types/Api/DeleteConnectionApiBulk.d.ts +56 -0
- package/dist/types/Api/DeleteTheConcept.d.ts +65 -0
- package/dist/types/Api/DeleteTheConnection.d.ts +77 -0
- package/dist/types/Api/GetAiData.d.ts +37 -0
- package/dist/types/Api/GetAllConcepts.d.ts +43 -0
- package/dist/types/Api/GetAllConceptsByType.d.ts +46 -0
- package/dist/types/Api/GetAllConnections.d.ts +49 -0
- package/dist/types/Api/GetAllConnectionsOfComposition.d.ts +82 -0
- package/dist/types/Api/GetAllConnectionsOfCompositionBulk.d.ts +93 -0
- package/dist/types/Api/GetAllLinkerConnectionsFromTheConcept.d.ts +54 -0
- package/dist/types/Api/GetAllLinkerConnectionsToTheConcept.d.ts +63 -0
- package/dist/types/Api/GetAllPrefetchConnections.d.ts +52 -0
- package/dist/types/Api/GetCharacterDataByCharacter.d.ts +33 -0
- package/dist/types/Api/GetCompositionConnectionsBetweenTwoConcepts.d.ts +41 -0
- package/dist/types/Api/GetConcept.d.ts +49 -0
- package/dist/types/Api/GetConceptBulk.d.ts +71 -0
- package/dist/types/Api/GetConceptByCharacterAndType.d.ts +78 -0
- package/dist/types/Api/GetConceptByCharacterValue.d.ts +49 -0
- package/dist/types/Api/GetConnection.d.ts +51 -0
- package/dist/types/Api/GetConnectionBulk.d.ts +48 -0
- package/dist/types/Api/GetConnectionOfTheConcept.d.ts +52 -0
- package/dist/types/Api/GetConnectionToTheConcept.d.ts +58 -0
- package/dist/types/Api/GetReservedConnectionIds.d.ts +37 -0
- package/dist/types/Api/GetReservedIds.d.ts +38 -0
- package/dist/types/Api/Login.d.ts +39 -0
- package/dist/types/Api/MakeTheNameInBackend.d.ts +40 -0
- package/dist/types/Api/MakeTheTypeConceptApi.d.ts +42 -0
- package/dist/types/Api/RecursiveSearch.d.ts +44 -0
- package/dist/types/Api/Search/FreeschemaQueryApi.d.ts +48 -0
- package/dist/types/Api/Search/Search.d.ts +68 -0
- package/dist/types/Api/Search/SearchInternalApi.d.ts +71 -0
- package/dist/types/Api/Search/SearchLinkMultipleApi.d.ts +92 -0
- package/dist/types/Api/Search/SearchWithLinker.d.ts +99 -0
- package/dist/types/Api/SearchConcept/GetConceptByCharacterAndCategoryApi.d.ts +41 -0
- package/dist/types/Api/SearchConcept/GetConceptByCharacterAndCategoryDirect.d.ts +49 -0
- package/dist/types/Api/Session/CreateSession.d.ts +47 -0
- package/dist/types/Api/Session/CreateSessionVisit.d.ts +44 -0
- package/dist/types/Api/Signin.d.ts +51 -0
- package/dist/types/Api/Signup.d.ts +47 -0
- package/dist/types/Api/View/ViewInternalDataApi.d.ts +51 -0
- package/dist/types/Constants/ApiConstants.d.ts +249 -0
- package/dist/types/Constants/FormatConstants.d.ts +87 -0
- package/dist/types/DataStructures/BaseUrl.d.ts +262 -0
- package/dist/types/DataStructures/BinaryCharacterTree.d.ts +227 -0
- package/dist/types/DataStructures/BinaryTree.d.ts +151 -0
- package/dist/types/DataStructures/BinaryTypeTree.d.ts +211 -0
- package/dist/types/DataStructures/CharacterRepository.d.ts +117 -0
- package/dist/types/DataStructures/Composition/Composition.d.ts +117 -0
- package/dist/types/DataStructures/Composition/CompositionBinaryTree.d.ts +114 -0
- package/dist/types/DataStructures/Composition/CompositionNode.d.ts +223 -0
- package/dist/types/DataStructures/Concept.d.ts +139 -0
- package/dist/types/DataStructures/ConceptData.d.ts +317 -0
- package/dist/types/DataStructures/ConceptsToDraw.d.ts +179 -0
- package/dist/types/DataStructures/Connection.d.ts +103 -0
- package/dist/types/DataStructures/ConnectionBinaryTree/ConnectionBinaryTree.d.ts +126 -0
- package/dist/types/DataStructures/ConnectionBinaryTree/ConnectionNode.d.ts +193 -0
- package/dist/types/DataStructures/ConnectionBinaryTree/ConnectionTypeTree.d.ts +95 -0
- package/dist/types/DataStructures/ConnectionData.d.ts +209 -0
- package/dist/types/DataStructures/Count/CountInfo.d.ts +79 -0
- package/dist/types/DataStructures/FilterSearch.d.ts +93 -0
- package/dist/types/DataStructures/IdentifierFlags.d.ts +45 -0
- package/dist/types/DataStructures/Local/LConcept.d.ts +126 -0
- package/dist/types/DataStructures/Local/LConnection.d.ts +101 -0
- package/dist/types/DataStructures/Local/LNode.d.ts +217 -0
- package/dist/types/DataStructures/Local/LocalBinaryCharacterTree.d.ts +145 -0
- package/dist/types/DataStructures/Local/LocalBinaryTree.d.ts +147 -0
- package/dist/types/DataStructures/Local/LocalBinaryTypeTree.d.ts +160 -0
- package/dist/types/DataStructures/Local/LocalConceptData.d.ts +114 -0
- package/dist/types/DataStructures/Local/LocalConnectionData.d.ts +125 -0
- package/dist/types/DataStructures/Local/LocalSyncData.d.ts +103 -0
- package/dist/types/DataStructures/Node.d.ts +29 -0
- package/dist/types/DataStructures/PatcherStructure.d.ts +94 -0
- package/dist/types/DataStructures/ReferentInfo.d.ts +75 -0
- package/dist/types/DataStructures/ReservedIds.d.ts +111 -0
- package/dist/types/DataStructures/Responses/ErrorResponse.d.ts +236 -0
- package/dist/types/DataStructures/Responses/StandardResponses.d.ts +71 -0
- package/dist/types/DataStructures/Returner.d.ts +66 -0
- package/dist/types/DataStructures/Search/FreeschemaQuery.d.ts +187 -0
- package/dist/types/DataStructures/Search/SearchStructure.d.ts +78 -0
- package/dist/types/DataStructures/SearchQuery.d.ts +146 -0
- package/dist/types/DataStructures/Security/TokenStorage.d.ts +51 -0
- package/dist/types/DataStructures/Session/SessionData.d.ts +131 -0
- package/dist/types/DataStructures/SettingData.d.ts +37 -0
- package/dist/types/DataStructures/Settings.d.ts +31 -0
- package/dist/types/DataStructures/SigninModel.d.ts +54 -0
- package/dist/types/DataStructures/SignupModel.d.ts +54 -0
- package/dist/types/DataStructures/SyncData.d.ts +232 -0
- package/dist/types/DataStructures/TheCharacter.d.ts +100 -0
- package/dist/types/DataStructures/TheTexts.d.ts +106 -0
- package/dist/types/DataStructures/Transaction/Transaction.d.ts +320 -0
- package/dist/types/DataStructures/User/UserBinaryTree.d.ts +132 -0
- package/dist/types/DataStructures/User/UserNode.d.ts +150 -0
- package/dist/types/Database/GetConceptFromIndexDb.d.ts +9 -0
- package/dist/types/Database/NoIndexDb.d.ts +178 -0
- package/dist/types/Database/indexdblocal.d.ts +45 -0
- package/dist/types/Database/indexeddb.d.ts +46 -0
- package/dist/types/Drawing/ConceptDraw.d.ts +29 -0
- package/dist/types/Drawing/ConceptEvents.d.ts +47 -0
- package/dist/types/Helpers/CheckIfExists.d.ts +169 -0
- package/dist/types/Helpers/RemoveFromArray.d.ts +72 -0
- package/dist/types/Helpers/UniqueInsert.d.ts +29 -0
- package/dist/types/Services/CheckForConnectionDeletion.d.ts +193 -0
- package/dist/types/Services/Common/DecodeCountInfo.d.ts +57 -0
- package/dist/types/Services/Common/ErrorPosting.d.ts +51 -0
- package/dist/types/Services/Common/RegexFunction.d.ts +29 -0
- package/dist/types/Services/Composition/BuildComposition.d.ts +40 -0
- package/dist/types/Services/Composition/CompositionCache.d.ts +93 -0
- package/dist/types/Services/Composition/CreateCompositionCache.d.ts +46 -0
- package/dist/types/Services/ConceptFinding/GetConceptByCharacterAndCategory.d.ts +5 -0
- package/dist/types/Services/Conversion/ConvertConcepts.d.ts +90 -0
- package/dist/types/Services/CreateBinaryTreeFromData.d.ts +39 -0
- package/dist/types/Services/CreateCharacterBinaryTreeFromData.d.ts +43 -0
- package/dist/types/Services/CreateConnectionBetweenTwoConcepts.d.ts +211 -0
- package/dist/types/Services/CreateDefaultConcept.d.ts +117 -0
- package/dist/types/Services/CreateTheComposition.d.ts +103 -0
- package/dist/types/Services/CreateTheConcept.d.ts +184 -0
- package/dist/types/Services/CreateTheConnection.d.ts +61 -0
- package/dist/types/Services/CreateTheConnectionGeneral.d.ts +132 -0
- package/dist/types/Services/CreateTypeTreeFromData.d.ts +44 -0
- package/dist/types/Services/Delete/DeleteConnectionByType.d.ts +60 -0
- package/dist/types/Services/Delete/GetAllConnectionByType.d.ts +64 -0
- package/dist/types/Services/DeleteConcept.d.ts +137 -0
- package/dist/types/Services/DeleteConnection.d.ts +196 -0
- package/dist/types/Services/FindConeceptsFromConnection.d.ts +181 -0
- package/dist/types/Services/FindConnectionsOfCompositionBulkInMemory.d.ts +159 -0
- package/dist/types/Services/GenerateHexNumber.d.ts +65 -0
- package/dist/types/Services/GetAccessIdOfUser.d.ts +0 -0
- package/dist/types/Services/GetComposition.d.ts +342 -0
- package/dist/types/Services/GetCompositionBulk.d.ts +259 -0
- package/dist/types/Services/GetCompositionList.d.ts +132 -0
- package/dist/types/Services/GetConceptByCharacter.d.ts +87 -0
- package/dist/types/Services/GetConnections.d.ts +74 -0
- package/dist/types/Services/GetDataFromIndexDb.d.ts +81 -0
- package/dist/types/Services/GetLink.d.ts +107 -0
- package/dist/types/Services/GetLinkerConnectionFromConcept.d.ts +102 -0
- package/dist/types/Services/GetMaximumConnectionSyncTime.d.ts +59 -0
- package/dist/types/Services/GetRelation.d.ts +167 -0
- package/dist/types/Services/GetTheConcept.d.ts +73 -0
- package/dist/types/Services/GetTheReferent.d.ts +76 -0
- package/dist/types/Services/InitializeSystem.d.ts +121 -0
- package/dist/types/Services/Local/CreateConnectionListFromDatat.d.ts +0 -0
- package/dist/types/Services/Local/CreateDefaultLConcept.d.ts +50 -0
- package/dist/types/Services/Local/CreateLocalBinaryTreeFromData.d.ts +50 -0
- package/dist/types/Services/Local/CreateLocalBinaryTypeTreeFromData.d.ts +55 -0
- package/dist/types/Services/Local/CreateLocalCharacterBinaryTree.d.ts +61 -0
- package/dist/types/Services/Local/CreateTheCompositionLocal.d.ts +72 -0
- package/dist/types/Services/Local/CreateTheConceptLocal.d.ts +60 -0
- package/dist/types/Services/Local/CreateTheConnectionLocal.d.ts +58 -0
- package/dist/types/Services/Local/GetCompositionListLocal.d.ts +105 -0
- package/dist/types/Services/Local/GetCompositionLocal.d.ts +98 -0
- package/dist/types/Services/Local/GetConceptByCharacterLocal.d.ts +58 -0
- package/dist/types/Services/Local/MakeTheConceptLocal.d.ts +73 -0
- package/dist/types/Services/Local/MakeTheInstanceConceptLocal.d.ts +91 -0
- package/dist/types/Services/Local/MakeTheTypeLocal.d.ts +73 -0
- package/dist/types/Services/Local/UpdateCompositionLocal.d.ts +103 -0
- package/dist/types/Services/MakeTheCharacter.d.ts +76 -0
- package/dist/types/Services/MakeTheCharacterData.d.ts +67 -0
- package/dist/types/Services/MakeTheConcept.d.ts +2 -0
- package/dist/types/Services/MakeTheInstanceConcept.d.ts +78 -0
- package/dist/types/Services/MakeTheLocalConcept.d.ts +0 -0
- package/dist/types/Services/MakeTheName.d.ts +83 -0
- package/dist/types/Services/MakeTheTimestamp.d.ts +70 -0
- package/dist/types/Services/MakeTheTypeConcept.d.ts +71 -0
- package/dist/types/Services/Mqtt/publishMessage.d.ts +28 -0
- package/dist/types/Services/Mqtt/subscribeMessage.d.ts +23 -0
- package/dist/types/Services/PatchComposition.d.ts +107 -0
- package/dist/types/Services/Search/DataIdFormat.d.ts +104 -0
- package/dist/types/Services/Search/FormatData.d.ts +101 -0
- package/dist/types/Services/Search/JustIdFormat.d.ts +98 -0
- package/dist/types/Services/Search/SearchLinkInternal.d.ts +30 -0
- package/dist/types/Services/Search/SearchLinkMultiple.d.ts +61 -0
- package/dist/types/Services/Search/SearchWithTypeAndLinker.d.ts +101 -0
- package/dist/types/Services/Search/orderingConnections.d.ts +36 -0
- package/dist/types/Services/Security/GetRequestHeader.d.ts +10 -0
- package/dist/types/Services/SplitStrings.d.ts +51 -0
- package/dist/types/Services/UpdateComposition.d.ts +125 -0
- package/dist/types/Services/User/UserTranslation.d.ts +108 -0
- package/dist/types/Services/View/ViewInternalData.d.ts +33 -0
- package/dist/types/WrapperFunctions/SchemaQueryObservable.d.ts +159 -0
- package/dist/types/app.d.ts +162 -0
- package/package.json +1 -1
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Defines the SearchQuery class for constructing search queries with filtering and pagination.
|
|
3
|
+
* @module DataStructures/SearchQuery
|
|
4
|
+
*/
|
|
5
|
+
import { FilterSearch } from "./FilterSearch";
|
|
6
|
+
/**
|
|
7
|
+
* Represents a search query configuration with support for filtering, linking, and pagination.
|
|
8
|
+
* This class provides a comprehensive structure for building complex search operations
|
|
9
|
+
* with multiple criteria and logical operators.
|
|
10
|
+
*
|
|
11
|
+
* @class SearchQuery
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* const query = new SearchQuery();
|
|
16
|
+
* query.type = "Article";
|
|
17
|
+
* query.composition = 123;
|
|
18
|
+
* query.textSearch = "TypeScript tutorial";
|
|
19
|
+
* query.page = 1;
|
|
20
|
+
* query.inpage = 25;
|
|
21
|
+
* query.logic = "and";
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```typescript
|
|
26
|
+
* // Search with filters
|
|
27
|
+
* const query = new SearchQuery();
|
|
28
|
+
* query.type = "Product";
|
|
29
|
+
* query.doFilter = true;
|
|
30
|
+
* query.filterSearches = [
|
|
31
|
+
* { type: "price", search: "100", logicoperator: ">", index: 0, composition: true, name: "price", operateon: "value" },
|
|
32
|
+
* { type: "category", search: "Electronics", logicoperator: "=", index: 1, composition: true, name: "category", operateon: "value" }
|
|
33
|
+
* ];
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export declare class SearchQuery {
|
|
37
|
+
/**
|
|
38
|
+
* The composition ID to search within.
|
|
39
|
+
* Specifies which composition context the search should be performed in.
|
|
40
|
+
*
|
|
41
|
+
* @type {number}
|
|
42
|
+
* @default 0
|
|
43
|
+
*/
|
|
44
|
+
composition: number;
|
|
45
|
+
/**
|
|
46
|
+
* The type of entity to search for.
|
|
47
|
+
* Determines the data structure or entity type being queried.
|
|
48
|
+
*
|
|
49
|
+
* @type {string}
|
|
50
|
+
* @default ""
|
|
51
|
+
*/
|
|
52
|
+
type: string;
|
|
53
|
+
/**
|
|
54
|
+
* The linker identifier for relationship-based searches.
|
|
55
|
+
* Used to specify connection types when traversing relationships.
|
|
56
|
+
*
|
|
57
|
+
* @type {string}
|
|
58
|
+
* @default ""
|
|
59
|
+
*/
|
|
60
|
+
linker: string;
|
|
61
|
+
/**
|
|
62
|
+
* The number of results to display per page (page size).
|
|
63
|
+
* Controls pagination by limiting the number of results returned.
|
|
64
|
+
*
|
|
65
|
+
* @type {number}
|
|
66
|
+
* @default 10
|
|
67
|
+
*/
|
|
68
|
+
inpage: number;
|
|
69
|
+
/**
|
|
70
|
+
* The page number to retrieve (1-indexed).
|
|
71
|
+
* Used with inpage for paginating through search results.
|
|
72
|
+
*
|
|
73
|
+
* @type {number}
|
|
74
|
+
* @default 1
|
|
75
|
+
*/
|
|
76
|
+
page: number;
|
|
77
|
+
/**
|
|
78
|
+
* Array of linker identifiers for multiple relationship types.
|
|
79
|
+
* Allows searching across multiple connection types simultaneously.
|
|
80
|
+
*
|
|
81
|
+
* @type {string[]}
|
|
82
|
+
* @default []
|
|
83
|
+
*/
|
|
84
|
+
listLinkers: string[];
|
|
85
|
+
/**
|
|
86
|
+
* Array of complete linker specifications for complex relationship queries.
|
|
87
|
+
* Contains fully qualified linker definitions for advanced searches.
|
|
88
|
+
*
|
|
89
|
+
* @type {string[]}
|
|
90
|
+
* @default []
|
|
91
|
+
*/
|
|
92
|
+
fullLinkers: string[];
|
|
93
|
+
/**
|
|
94
|
+
* The text search term or query string.
|
|
95
|
+
* Primary search criteria for text-based filtering.
|
|
96
|
+
*
|
|
97
|
+
* @type {string}
|
|
98
|
+
* @default ""
|
|
99
|
+
*/
|
|
100
|
+
textSearch: string;
|
|
101
|
+
/**
|
|
102
|
+
* The logical operator to combine multiple search criteria.
|
|
103
|
+
* Determines how multiple conditions are combined (e.g., "or", "and").
|
|
104
|
+
*
|
|
105
|
+
* @type {string}
|
|
106
|
+
* @default "or"
|
|
107
|
+
*/
|
|
108
|
+
logic: string;
|
|
109
|
+
/**
|
|
110
|
+
* Flag indicating whether to reverse the search direction.
|
|
111
|
+
* When true, traverses relationships in the opposite direction.
|
|
112
|
+
*
|
|
113
|
+
* @type {boolean}
|
|
114
|
+
* @default false
|
|
115
|
+
*/
|
|
116
|
+
reverse: boolean;
|
|
117
|
+
/**
|
|
118
|
+
* Flag indicating whether to apply filters to the search.
|
|
119
|
+
* When true, the filterSearches array is applied to narrow results.
|
|
120
|
+
*
|
|
121
|
+
* @type {boolean}
|
|
122
|
+
* @default false
|
|
123
|
+
*/
|
|
124
|
+
doFilter: boolean;
|
|
125
|
+
/**
|
|
126
|
+
* Array of FilterSearch objects defining specific filter criteria.
|
|
127
|
+
* Each filter specifies conditions that must be met for results to be included.
|
|
128
|
+
*
|
|
129
|
+
* @type {FilterSearch[]}
|
|
130
|
+
* @default []
|
|
131
|
+
*/
|
|
132
|
+
filterSearches: FilterSearch[];
|
|
133
|
+
/**
|
|
134
|
+
* Array of field selectors to include in the query results.
|
|
135
|
+
* Specifies which properties should be returned in the response.
|
|
136
|
+
*
|
|
137
|
+
* @type {string[]}
|
|
138
|
+
* @default []
|
|
139
|
+
*
|
|
140
|
+
* @example
|
|
141
|
+
* ```typescript
|
|
142
|
+
* query.selectors = ["id", "name", "createdAt"];
|
|
143
|
+
* ```
|
|
144
|
+
*/
|
|
145
|
+
selectors: string[];
|
|
146
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Defines the TokenStorage class for managing authentication tokens.
|
|
3
|
+
* @module DataStructures/Security/TokenStorage
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Centralized storage for authentication tokens.
|
|
7
|
+
* This class provides a singleton-like static storage mechanism for managing
|
|
8
|
+
* Bearer access tokens across the application. The token is stored as a static
|
|
9
|
+
* property, making it accessible throughout the application without instantiation.
|
|
10
|
+
*
|
|
11
|
+
* @class TokenStorage
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* // Set the access token after authentication
|
|
16
|
+
* TokenStorage.BearerAccessToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...";
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* // Retrieve the access token for API requests
|
|
22
|
+
* const token = TokenStorage.BearerAccessToken;
|
|
23
|
+
* const headers = {
|
|
24
|
+
* 'Authorization': `Bearer ${token}`
|
|
25
|
+
* };
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* // Clear the token on logout
|
|
31
|
+
* TokenStorage.BearerAccessToken = "";
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
export declare class TokenStorage {
|
|
35
|
+
/**
|
|
36
|
+
* The Bearer access token used for authentication.
|
|
37
|
+
* This static property stores the JWT or other authentication token
|
|
38
|
+
* used for authorizing API requests. The token typically has the format
|
|
39
|
+
* "Bearer <token>" when included in HTTP headers.
|
|
40
|
+
*
|
|
41
|
+
* @static
|
|
42
|
+
* @type {string}
|
|
43
|
+
* @default ""
|
|
44
|
+
*
|
|
45
|
+
* @remarks
|
|
46
|
+
* As a static property, this token is shared across all instances and modules.
|
|
47
|
+
* Exercise caution when handling this token to prevent security vulnerabilities.
|
|
48
|
+
* Consider clearing this value on logout or session expiration.
|
|
49
|
+
*/
|
|
50
|
+
static BearerAccessToken: string;
|
|
51
|
+
}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Defines the SessionData class for storing session information.
|
|
3
|
+
* @module DataStructures/Session/SessionData
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Represents session information for a user's connection.
|
|
7
|
+
* This class stores comprehensive details about a user's session, including
|
|
8
|
+
* network information, server configuration, and user identification data.
|
|
9
|
+
* It captures both client and server-side information for session tracking and security purposes.
|
|
10
|
+
*
|
|
11
|
+
* @class SessionData
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* const session = new SessionData();
|
|
16
|
+
* session.id = "abc123def456";
|
|
17
|
+
* session.userId = "12345";
|
|
18
|
+
* session.email = "user@example.com";
|
|
19
|
+
* session.remote_address = "192.168.1.100";
|
|
20
|
+
* session.http_user_agent = "Mozilla/5.0...";
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* // Populate session data from request
|
|
26
|
+
* const session = new SessionData();
|
|
27
|
+
* session.remote_address = request.connection.remoteAddress;
|
|
28
|
+
* session.server_port = process.env.PORT;
|
|
29
|
+
* session.server_name = request.hostname;
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare class SessionData {
|
|
33
|
+
/**
|
|
34
|
+
* The unique session identifier.
|
|
35
|
+
* Used to track and identify individual sessions across requests.
|
|
36
|
+
*
|
|
37
|
+
* @type {string}
|
|
38
|
+
* @default "0"
|
|
39
|
+
*/
|
|
40
|
+
id: string;
|
|
41
|
+
/**
|
|
42
|
+
* The remote IP address of the client.
|
|
43
|
+
* Identifies the network address from which the client is connecting.
|
|
44
|
+
*
|
|
45
|
+
* @type {string}
|
|
46
|
+
* @default ""
|
|
47
|
+
*
|
|
48
|
+
* @example "192.168.1.100" or "2001:0db8:85a3:0000:0000:8a2e:0370:7334"
|
|
49
|
+
*/
|
|
50
|
+
remote_address: string;
|
|
51
|
+
/**
|
|
52
|
+
* The port number on which the server is listening.
|
|
53
|
+
* Indicates which server port is handling the connection.
|
|
54
|
+
*
|
|
55
|
+
* @type {string}
|
|
56
|
+
* @default ""
|
|
57
|
+
*
|
|
58
|
+
* @example "8080" or "443"
|
|
59
|
+
*/
|
|
60
|
+
server_port: string;
|
|
61
|
+
/**
|
|
62
|
+
* The server's IP address.
|
|
63
|
+
* Identifies the network address of the server handling the request.
|
|
64
|
+
*
|
|
65
|
+
* @type {string}
|
|
66
|
+
* @default ""
|
|
67
|
+
*/
|
|
68
|
+
server_address: string;
|
|
69
|
+
/**
|
|
70
|
+
* The server's hostname or domain name.
|
|
71
|
+
* The fully qualified domain name or hostname of the server.
|
|
72
|
+
*
|
|
73
|
+
* @type {string}
|
|
74
|
+
* @default ""
|
|
75
|
+
*
|
|
76
|
+
* @example "api.example.com" or "localhost"
|
|
77
|
+
*/
|
|
78
|
+
server_name: string;
|
|
79
|
+
/**
|
|
80
|
+
* Information about the server software.
|
|
81
|
+
* Identifies the server software and version handling the request.
|
|
82
|
+
*
|
|
83
|
+
* @type {string}
|
|
84
|
+
* @default ""
|
|
85
|
+
*
|
|
86
|
+
* @example "Apache/2.4.41" or "nginx/1.18.0"
|
|
87
|
+
*/
|
|
88
|
+
server_software: string;
|
|
89
|
+
/**
|
|
90
|
+
* The HTTP User-Agent header from the client.
|
|
91
|
+
* Contains information about the client's browser or application making the request.
|
|
92
|
+
*
|
|
93
|
+
* @type {string}
|
|
94
|
+
* @default ""
|
|
95
|
+
*
|
|
96
|
+
* @example "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36..."
|
|
97
|
+
*/
|
|
98
|
+
http_user_agent: string;
|
|
99
|
+
/**
|
|
100
|
+
* The self-referential identifier or URL.
|
|
101
|
+
* May contain a reference to the current script or endpoint.
|
|
102
|
+
*
|
|
103
|
+
* @type {string}
|
|
104
|
+
* @default ""
|
|
105
|
+
*/
|
|
106
|
+
self: string;
|
|
107
|
+
/**
|
|
108
|
+
* The client's port number.
|
|
109
|
+
* Indicates which port on the client side is being used for the connection.
|
|
110
|
+
*
|
|
111
|
+
* @type {string}
|
|
112
|
+
* @default ""
|
|
113
|
+
*/
|
|
114
|
+
port: string;
|
|
115
|
+
/**
|
|
116
|
+
* The user's unique identifier.
|
|
117
|
+
* Links the session to a specific user account.
|
|
118
|
+
*
|
|
119
|
+
* @type {string}
|
|
120
|
+
* @default ""
|
|
121
|
+
*/
|
|
122
|
+
userId: string;
|
|
123
|
+
/**
|
|
124
|
+
* The user's email address.
|
|
125
|
+
* Stores the authenticated user's email for session tracking.
|
|
126
|
+
*
|
|
127
|
+
* @type {string}
|
|
128
|
+
* @default ""
|
|
129
|
+
*/
|
|
130
|
+
email: string;
|
|
131
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview SettingData module for managing persisted setting data in CCS-JS.
|
|
3
|
+
* This module defines the structure for storing user preferences and configuration.
|
|
4
|
+
* @module DataStructures/SettingData
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Represents persisted setting data for the application.
|
|
8
|
+
* Can be stored in local storage or IndexedDB for user preferences.
|
|
9
|
+
*
|
|
10
|
+
* @class SettingData
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* // Create settings with online sync enabled
|
|
14
|
+
* const settings = new SettingData(true);
|
|
15
|
+
*
|
|
16
|
+
* // Store settings
|
|
17
|
+
* localStorage.setItem('settings', JSON.stringify(settings));
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export declare class SettingData {
|
|
21
|
+
/** Unique identifier for the settings record */
|
|
22
|
+
id: number;
|
|
23
|
+
/** Controls whether online synchronization is enabled */
|
|
24
|
+
isOnlineSync: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Creates a new SettingData instance.
|
|
27
|
+
*
|
|
28
|
+
* @param {boolean} isOnlineSync - Whether to enable online synchronization
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```typescript
|
|
32
|
+
* const settings = new SettingData(true);
|
|
33
|
+
* console.log(settings.isOnlineSync); // true
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
constructor(isOnlineSync: boolean);
|
|
37
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Settings module for managing global application settings in CCS-JS.
|
|
3
|
+
* This module provides centralized configuration flags for application behavior.
|
|
4
|
+
* @module DataStructures/Settings
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Global application settings for CCS-JS.
|
|
8
|
+
* Controls application-wide behavior such as update status and synchronization mode.
|
|
9
|
+
*
|
|
10
|
+
* @class Settings
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* // Enable online sync
|
|
14
|
+
* Settings.isOnlineSync = true;
|
|
15
|
+
*
|
|
16
|
+
* // Check if system is updated
|
|
17
|
+
* if (Settings.isUpdated) {
|
|
18
|
+
* console.log("System is up to date");
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* @remarks
|
|
23
|
+
* All properties are static flags used across the application.
|
|
24
|
+
* These settings affect how data is synchronized and persisted.
|
|
25
|
+
*/
|
|
26
|
+
export declare class Settings {
|
|
27
|
+
/** Flag indicating if the system has been updated to the latest version */
|
|
28
|
+
static isUpdated: boolean;
|
|
29
|
+
/** Flag controlling whether changes are synchronized online immediately */
|
|
30
|
+
static isOnlineSync: boolean;
|
|
31
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Defines the SigninModel interface for user authentication data.
|
|
3
|
+
* @module DataStructures/SigninModel
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Represents the data required for user authentication/signin.
|
|
7
|
+
* This interface defines the structure for collecting user credentials
|
|
8
|
+
* during the login process.
|
|
9
|
+
*
|
|
10
|
+
* @interface SigninModel
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const signinData: SigninModel = {
|
|
15
|
+
* email: "user@example.com",
|
|
16
|
+
* password: "MySecurePassword123"
|
|
17
|
+
* };
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```typescript
|
|
22
|
+
* // Usage in an authentication function
|
|
23
|
+
* async function authenticateUser(credentials: SigninModel) {
|
|
24
|
+
* const user = await validateCredentials(credentials.email, credentials.password);
|
|
25
|
+
* if (user) {
|
|
26
|
+
* return generateAuthToken(user);
|
|
27
|
+
* }
|
|
28
|
+
* throw new Error("Invalid credentials");
|
|
29
|
+
* }
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export interface SigninModel {
|
|
33
|
+
/**
|
|
34
|
+
* The user's email address.
|
|
35
|
+
* Used to identify the user account attempting to sign in.
|
|
36
|
+
*
|
|
37
|
+
* @type {string}
|
|
38
|
+
*
|
|
39
|
+
* @example "user@example.com"
|
|
40
|
+
*/
|
|
41
|
+
email: string;
|
|
42
|
+
/**
|
|
43
|
+
* The user's password for authentication.
|
|
44
|
+
* Will be verified against the stored hashed password.
|
|
45
|
+
*
|
|
46
|
+
* @type {string}
|
|
47
|
+
*
|
|
48
|
+
* @remarks
|
|
49
|
+
* The password is transmitted securely and verified against
|
|
50
|
+
* the hashed version stored in the database. Never store or
|
|
51
|
+
* log passwords in plain text.
|
|
52
|
+
*/
|
|
53
|
+
password: string;
|
|
54
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Defines the SignupModel interface for user registration data.
|
|
3
|
+
* @module DataStructures/SignupModel
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Represents the data required for user registration/signup.
|
|
7
|
+
* This interface defines the structure for collecting user credentials
|
|
8
|
+
* during the account creation process.
|
|
9
|
+
*
|
|
10
|
+
* @interface SignupModel
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const signupData: SignupModel = {
|
|
15
|
+
* email: "newuser@example.com",
|
|
16
|
+
* password: "SecureP@ssw0rd123"
|
|
17
|
+
* };
|
|
18
|
+
* ```
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```typescript
|
|
22
|
+
* // Usage in a signup function
|
|
23
|
+
* async function registerUser(userData: SignupModel) {
|
|
24
|
+
* // Validate and create user account
|
|
25
|
+
* const result = await createAccount(userData.email, userData.password);
|
|
26
|
+
* return result;
|
|
27
|
+
* }
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export interface SignupModel {
|
|
31
|
+
/**
|
|
32
|
+
* The user's email address.
|
|
33
|
+
* Used as the primary identifier for the user account.
|
|
34
|
+
* Should be unique and in valid email format.
|
|
35
|
+
*
|
|
36
|
+
* @type {string}
|
|
37
|
+
*
|
|
38
|
+
* @example "user@example.com"
|
|
39
|
+
*/
|
|
40
|
+
email: string;
|
|
41
|
+
/**
|
|
42
|
+
* The user's password for account authentication.
|
|
43
|
+
* Should meet security requirements (e.g., minimum length, complexity).
|
|
44
|
+
* Will be hashed before storage for security purposes.
|
|
45
|
+
*
|
|
46
|
+
* @type {string}
|
|
47
|
+
*
|
|
48
|
+
* @remarks
|
|
49
|
+
* Passwords should be validated for strength before being accepted.
|
|
50
|
+
* Common requirements include minimum length, uppercase, lowercase,
|
|
51
|
+
* numbers, and special characters.
|
|
52
|
+
*/
|
|
53
|
+
password: string;
|
|
54
|
+
}
|