@3sixty/api-models 0.20.0-next.0 → 0.20.0-next.1

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.
Files changed (123) hide show
  1. package/dist/es/errors/forbiddenError.js.map +1 -1
  2. package/dist/es/errors/tooManyRequestsError.js.map +1 -1
  3. package/dist/es/factories/mimeTypeProcessorFactory.js.map +1 -1
  4. package/dist/es/factories/restClientProcessorFactory.js.map +1 -1
  5. package/dist/es/factories/restRouteProcessorFactory.js.map +1 -1
  6. package/dist/es/factories/socketRouteProcessorFactory.js.map +1 -1
  7. package/dist/es/helpers/httpErrorHelper.js.map +1 -1
  8. package/dist/es/helpers/httpHeaderHelper.js.map +1 -1
  9. package/dist/es/helpers/httpParameterHelper.js.map +1 -1
  10. package/dist/es/helpers/httpUrlHelper.js.map +1 -1
  11. package/dist/es/index.js +4 -1
  12. package/dist/es/index.js.map +1 -1
  13. package/dist/es/models/IHealth.js.map +1 -1
  14. package/dist/es/models/api/IServerFavIconResponse.js.map +1 -1
  15. package/dist/es/models/api/IServerHealthResponse.js.map +1 -1
  16. package/dist/es/models/api/IServerInfoResponse.js.map +1 -1
  17. package/dist/es/models/api/IServerLivezResponse.js.map +1 -1
  18. package/dist/es/models/api/IServerReadyzResponse.js.map +1 -1
  19. package/dist/es/models/api/IServerRootResponse.js.map +1 -1
  20. package/dist/es/models/api/IServerSpecResponse.js.map +1 -1
  21. package/dist/es/models/client/IRestClientProcessor.js.map +1 -1
  22. package/dist/es/models/client/IRestClientProcessorContext.js.map +1 -1
  23. package/dist/es/models/config/IBaseRestClientConfig.js.map +1 -1
  24. package/dist/es/models/config/IBaseSocketClientConfig.js.map +1 -1
  25. package/dist/es/models/healthCategory.js.map +1 -1
  26. package/dist/es/models/healthStatus.js.map +1 -1
  27. package/dist/es/models/httpContextIdKeys.js +1 -4
  28. package/dist/es/models/httpContextIdKeys.js.map +1 -1
  29. package/dist/es/models/protocol/IHttpRequest.js.map +1 -1
  30. package/dist/es/models/protocol/IHttpRequestContext.js.map +1 -1
  31. package/dist/es/models/protocol/IHttpRequestPathParams.js.map +1 -1
  32. package/dist/es/models/protocol/IHttpRequestQuery.js.map +1 -1
  33. package/dist/es/models/protocol/IHttpResponse.js.map +1 -1
  34. package/dist/es/models/protocol/IHttpServerRequest.js.map +1 -1
  35. package/dist/es/models/protocol/ISocketRequestContext.js.map +1 -1
  36. package/dist/es/models/protocol/ISocketServerRequest.js.map +1 -1
  37. package/dist/es/models/requests/INoContentRequest.js.map +1 -1
  38. package/dist/es/models/responses/errors/IBadRequestResponse.js.map +1 -1
  39. package/dist/es/models/responses/errors/IConflictResponse.js.map +1 -1
  40. package/dist/es/models/responses/errors/IForbiddenResponse.js.map +1 -1
  41. package/dist/es/models/responses/errors/IInternalServerErrorResponse.js.map +1 -1
  42. package/dist/es/models/responses/errors/INotFoundResponse.js.map +1 -1
  43. package/dist/es/models/responses/errors/INotImplementedResponse.js.map +1 -1
  44. package/dist/es/models/responses/errors/ITooManyRequestsResponse.js.map +1 -1
  45. package/dist/es/models/responses/errors/IUnauthorizedResponse.js.map +1 -1
  46. package/dist/es/models/responses/errors/IUnprocessableEntityResponse.js.map +1 -1
  47. package/dist/es/models/responses/success/IAcceptedResponse.js.map +1 -1
  48. package/dist/es/models/responses/success/ICreatedResponse.js.map +1 -1
  49. package/dist/es/models/responses/success/INoContentResponse.js.map +1 -1
  50. package/dist/es/models/responses/success/IOkResponse.js.map +1 -1
  51. package/dist/es/models/routes/IBaseRoute.js +0 -2
  52. package/dist/es/models/routes/IBaseRoute.js.map +1 -1
  53. package/dist/es/models/routes/IBaseRouteEntryPoint.js.map +1 -1
  54. package/dist/es/models/routes/IRestRoute.js.map +1 -1
  55. package/dist/es/models/routes/IRestRouteEntryPoint.js.map +1 -1
  56. package/dist/es/models/routes/IRestRouteExample.js.map +1 -1
  57. package/dist/es/models/routes/IRestRouteRequestExample.js.map +1 -1
  58. package/dist/es/models/routes/IRestRouteResponseAttachmentOptions.js.map +1 -1
  59. package/dist/es/models/routes/IRestRouteResponseExample.js.map +1 -1
  60. package/dist/es/models/routes/IRestRouteResponseOptions.js.map +1 -1
  61. package/dist/es/models/routes/IRouteAuthorization.js +4 -0
  62. package/dist/es/models/routes/IRouteAuthorization.js.map +1 -0
  63. package/dist/es/models/routes/ISocketRoute.js.map +1 -1
  64. package/dist/es/models/routes/ISocketRouteEntryPoint.js.map +1 -1
  65. package/dist/es/models/routes/ITag.js.map +1 -1
  66. package/dist/es/models/routes/httpBodyLimit.js.map +1 -1
  67. package/dist/es/models/server/IBaseRouteProcessor.js.map +1 -1
  68. package/dist/es/models/server/IMimeTypeProcessor.js.map +1 -1
  69. package/dist/es/models/server/IRestRouteProcessor.js.map +1 -1
  70. package/dist/es/models/server/ISocketRouteProcessor.js.map +1 -1
  71. package/dist/es/models/server/IWebServer.js.map +1 -1
  72. package/dist/es/models/server/IWebServerOptions.js.map +1 -1
  73. package/dist/es/models/services/IHealthApplicationCallback.js.map +1 -1
  74. package/dist/es/models/services/IHealthComponent.js.map +1 -1
  75. package/dist/es/models/services/IHealthProviderComponent.js.map +1 -1
  76. package/dist/es/models/services/IInformationComponent.js.map +1 -1
  77. package/dist/es/models/services/IPlatformComponent.js.map +1 -1
  78. package/dist/es/models/services/IServerInfo.js.map +1 -1
  79. package/dist/es/models/services/ITenant.js.map +1 -1
  80. package/dist/es/models/services/ITenantAdminComponent.js.map +1 -1
  81. package/dist/es/models/services/tenantEventCallback.js +2 -0
  82. package/dist/es/models/services/tenantEventCallback.js.map +1 -0
  83. package/dist/es/models/services/tenantEventType.js +21 -0
  84. package/dist/es/models/services/tenantEventType.js.map +1 -0
  85. package/dist/types/index.d.ts +3 -1
  86. package/dist/types/models/httpContextIdKeys.d.ts +0 -4
  87. package/dist/types/models/routes/IBaseRoute.d.ts +12 -3
  88. package/dist/types/models/routes/IRouteAuthorization.d.ts +17 -0
  89. package/dist/types/models/server/IBaseRouteProcessor.d.ts +0 -7
  90. package/dist/types/models/services/IPlatformComponent.d.ts +20 -0
  91. package/dist/types/models/services/tenantEventCallback.d.ts +6 -0
  92. package/dist/types/models/services/tenantEventType.d.ts +21 -0
  93. package/docs/changelog.md +10 -0
  94. package/docs/reference/classes/ForbiddenError.md +2 -0
  95. package/docs/reference/classes/HttpParameterHelper.md +4 -4
  96. package/docs/reference/classes/TooManyRequestsError.md +2 -0
  97. package/docs/reference/index.md +4 -1
  98. package/docs/reference/interfaces/IBaseRoute.md +36 -4
  99. package/docs/reference/interfaces/IBaseRouteEntryPoint.md +1 -1
  100. package/docs/reference/interfaces/IBaseRouteProcessor.md +6 -18
  101. package/docs/reference/interfaces/IHttpRequest.md +1 -1
  102. package/docs/reference/interfaces/IHttpResponse.md +1 -1
  103. package/docs/reference/interfaces/IHttpServerRequest.md +1 -1
  104. package/docs/reference/interfaces/IPlatformComponent.md +74 -0
  105. package/docs/reference/interfaces/IRestRoute.md +43 -7
  106. package/docs/reference/interfaces/IRestRouteProcessor.md +6 -20
  107. package/docs/reference/interfaces/IRestRouteRequestExample.md +1 -1
  108. package/docs/reference/interfaces/IRestRouteResponseExample.md +1 -1
  109. package/docs/reference/interfaces/IRouteAuthorization.md +27 -0
  110. package/docs/reference/interfaces/ISocketRoute.md +43 -7
  111. package/docs/reference/interfaces/ISocketRouteProcessor.md +6 -20
  112. package/docs/reference/interfaces/ISocketServerRequest.md +1 -1
  113. package/docs/reference/interfaces/ITenantAdminComponent.md +1 -1
  114. package/docs/reference/interfaces/IWebServer.md +1 -1
  115. package/docs/reference/type-aliases/TenantEventCallback.md +20 -0
  116. package/docs/reference/type-aliases/TenantEventType.md +5 -0
  117. package/docs/reference/variables/HttpContextIdKeys.md +0 -6
  118. package/docs/reference/variables/TenantEventType.md +25 -0
  119. package/package.json +1 -1
  120. package/dist/es/helpers/scopeHelper.js +0 -46
  121. package/dist/es/helpers/scopeHelper.js.map +0 -1
  122. package/dist/types/helpers/scopeHelper.d.ts +0 -27
  123. package/docs/reference/classes/ScopeHelper.md +0 -88
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@3sixty/api-models",
3
- "version": "0.20.0-next.0",
3
+ "version": "0.20.0-next.1",
4
4
  "description": "Shared API contracts, route types, and response models used across services and clients.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,46 +0,0 @@
1
- // Copyright 2026 IOTA Stiftung.
2
- // SPDX-License-Identifier: Apache-2.0.
3
- import { Is } from "@3sixty/core";
4
- /**
5
- * Helper methods for working with scope values stored as comma-separated strings.
6
- */
7
- export class ScopeHelper {
8
- /**
9
- * Converts a scope value to a normalised lowercase array. Accepts either a comma-separated
10
- * string or an already-split array, so callers do not need to branch on input type.
11
- * Returns an empty array for an empty or undefined input.
12
- * @param scope The comma-separated scope string, or an array of scope entries.
13
- * @returns The scope entries as a trimmed, lowercase array.
14
- */
15
- static toArray(scope) {
16
- if (Array.isArray(scope)) {
17
- return scope.map(s => s.trim().toLocaleLowerCase()).filter(s => s.length > 0);
18
- }
19
- if (!Is.stringValue(scope)) {
20
- return [];
21
- }
22
- return scope
23
- .split(",")
24
- .map(s => s.trim().toLocaleLowerCase())
25
- .filter(s => s.length > 0);
26
- }
27
- /**
28
- * Joins a scope array into a normalised comma-separated string, trimming and lowercasing each entry.
29
- * @param scopes The scope entries to join.
30
- * @returns The comma-separated scope string.
31
- */
32
- static toString(scopes) {
33
- return scopes.map(s => s.trim().toLocaleLowerCase()).join(",");
34
- }
35
- /**
36
- * Returns true if the scope includes the specified value. Accepts either a
37
- * comma-separated string or an array, matching the input forms accepted by toArray.
38
- * @param scope The comma-separated scope string or array to search.
39
- * @param value The scope value to look for.
40
- * @returns True when value is present in the scope.
41
- */
42
- static includes(scope, value) {
43
- return ScopeHelper.toArray(scope).includes(value);
44
- }
45
- }
46
- //# sourceMappingURL=scopeHelper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scopeHelper.js","sourceRoot":"","sources":["../../../src/helpers/scopeHelper.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAElC;;GAEG;AACH,MAAM,OAAO,WAAW;IACvB;;;;;;OAMG;IACI,MAAM,CAAC,OAAO,CAAC,KAAoC;QACzD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,EAAE,CAAC;QACX,CAAC;QACD,OAAO,KAAK;aACV,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC;aACtC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,QAAQ,CAAC,MAAgB;QACtC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChE,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,QAAQ,CAAC,KAAoC,EAAE,KAAa;QACzE,OAAO,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;CACD","sourcesContent":["// Copyright 2026 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { Is } from \"@3sixty/core\";\n\n/**\n * Helper methods for working with scope values stored as comma-separated strings.\n */\nexport class ScopeHelper {\n\t/**\n\t * Converts a scope value to a normalised lowercase array. Accepts either a comma-separated\n\t * string or an already-split array, so callers do not need to branch on input type.\n\t * Returns an empty array for an empty or undefined input.\n\t * @param scope The comma-separated scope string, or an array of scope entries.\n\t * @returns The scope entries as a trimmed, lowercase array.\n\t */\n\tpublic static toArray(scope: string | string[] | undefined): string[] {\n\t\tif (Array.isArray(scope)) {\n\t\t\treturn scope.map(s => s.trim().toLocaleLowerCase()).filter(s => s.length > 0);\n\t\t}\n\t\tif (!Is.stringValue(scope)) {\n\t\t\treturn [];\n\t\t}\n\t\treturn scope\n\t\t\t.split(\",\")\n\t\t\t.map(s => s.trim().toLocaleLowerCase())\n\t\t\t.filter(s => s.length > 0);\n\t}\n\n\t/**\n\t * Joins a scope array into a normalised comma-separated string, trimming and lowercasing each entry.\n\t * @param scopes The scope entries to join.\n\t * @returns The comma-separated scope string.\n\t */\n\tpublic static toString(scopes: string[]): string {\n\t\treturn scopes.map(s => s.trim().toLocaleLowerCase()).join(\",\");\n\t}\n\n\t/**\n\t * Returns true if the scope includes the specified value. Accepts either a\n\t * comma-separated string or an array, matching the input forms accepted by toArray.\n\t * @param scope The comma-separated scope string or array to search.\n\t * @param value The scope value to look for.\n\t * @returns True when value is present in the scope.\n\t */\n\tpublic static includes(scope: string | string[] | undefined, value: string): boolean {\n\t\treturn ScopeHelper.toArray(scope).includes(value);\n\t}\n}\n"]}
@@ -1,27 +0,0 @@
1
- /**
2
- * Helper methods for working with scope values stored as comma-separated strings.
3
- */
4
- export declare class ScopeHelper {
5
- /**
6
- * Converts a scope value to a normalised lowercase array. Accepts either a comma-separated
7
- * string or an already-split array, so callers do not need to branch on input type.
8
- * Returns an empty array for an empty or undefined input.
9
- * @param scope The comma-separated scope string, or an array of scope entries.
10
- * @returns The scope entries as a trimmed, lowercase array.
11
- */
12
- static toArray(scope: string | string[] | undefined): string[];
13
- /**
14
- * Joins a scope array into a normalised comma-separated string, trimming and lowercasing each entry.
15
- * @param scopes The scope entries to join.
16
- * @returns The comma-separated scope string.
17
- */
18
- static toString(scopes: string[]): string;
19
- /**
20
- * Returns true if the scope includes the specified value. Accepts either a
21
- * comma-separated string or an array, matching the input forms accepted by toArray.
22
- * @param scope The comma-separated scope string or array to search.
23
- * @param value The scope value to look for.
24
- * @returns True when value is present in the scope.
25
- */
26
- static includes(scope: string | string[] | undefined, value: string): boolean;
27
- }
@@ -1,88 +0,0 @@
1
- # Class: ScopeHelper
2
-
3
- Helper methods for working with scope values stored as comma-separated strings.
4
-
5
- ## Constructors
6
-
7
- ### Constructor
8
-
9
- > **new ScopeHelper**(): `ScopeHelper`
10
-
11
- #### Returns
12
-
13
- `ScopeHelper`
14
-
15
- ## Methods
16
-
17
- ### toArray() {#toarray}
18
-
19
- > `static` **toArray**(`scope`): `string`[]
20
-
21
- Converts a scope value to a normalised lowercase array. Accepts either a comma-separated
22
- string or an already-split array, so callers do not need to branch on input type.
23
- Returns an empty array for an empty or undefined input.
24
-
25
- #### Parameters
26
-
27
- ##### scope
28
-
29
- `string` \| `string`[] \| `undefined`
30
-
31
- The comma-separated scope string, or an array of scope entries.
32
-
33
- #### Returns
34
-
35
- `string`[]
36
-
37
- The scope entries as a trimmed, lowercase array.
38
-
39
- ***
40
-
41
- ### toString() {#tostring}
42
-
43
- > `static` **toString**(`scopes`): `string`
44
-
45
- Joins a scope array into a normalised comma-separated string, trimming and lowercasing each entry.
46
-
47
- #### Parameters
48
-
49
- ##### scopes
50
-
51
- `string`[]
52
-
53
- The scope entries to join.
54
-
55
- #### Returns
56
-
57
- `string`
58
-
59
- The comma-separated scope string.
60
-
61
- ***
62
-
63
- ### includes() {#includes}
64
-
65
- > `static` **includes**(`scope`, `value`): `boolean`
66
-
67
- Returns true if the scope includes the specified value. Accepts either a
68
- comma-separated string or an array, matching the input forms accepted by toArray.
69
-
70
- #### Parameters
71
-
72
- ##### scope
73
-
74
- `string` \| `string`[] \| `undefined`
75
-
76
- The comma-separated scope string or array to search.
77
-
78
- ##### value
79
-
80
- `string`
81
-
82
- The scope value to look for.
83
-
84
- #### Returns
85
-
86
- `boolean`
87
-
88
- True when value is present in the scope.