brix-runtime-sdk-api-web 1.0.0
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/dist/index.js +190 -0
- package/dist/types/api-exports.test.d.ts +33 -0
- package/dist/types/api-exports.test.d.ts.map +1 -0
- package/dist/types/context/RuntimeContext.d.ts +69 -0
- package/dist/types/context/RuntimeContext.d.ts.map +1 -0
- package/dist/types/context/index.d.ts +23 -0
- package/dist/types/context/index.d.ts.map +1 -0
- package/dist/types/index.d.ts +52 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/types/auth.d.ts +405 -0
- package/dist/types/types/auth.d.ts.map +1 -0
- package/dist/types/types/capability.d.ts +218 -0
- package/dist/types/types/capability.d.ts.map +1 -0
- package/dist/types/types/common.d.ts +99 -0
- package/dist/types/types/common.d.ts.map +1 -0
- package/dist/types/types/config.d.ts +85 -0
- package/dist/types/types/config.d.ts.map +1 -0
- package/dist/types/types/event.d.ts +658 -0
- package/dist/types/types/event.d.ts.map +1 -0
- package/dist/types/types/http.d.ts +132 -0
- package/dist/types/types/http.d.ts.map +1 -0
- package/dist/types/types/i18n.d.ts +327 -0
- package/dist/types/types/i18n.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +61 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/types/layout.d.ts +301 -0
- package/dist/types/types/layout.d.ts.map +1 -0
- package/dist/types/types/module.d.ts +78 -0
- package/dist/types/types/module.d.ts.map +1 -0
- package/dist/types/types/navigation.d.ts +295 -0
- package/dist/types/types/navigation.d.ts.map +1 -0
- package/dist/types/types/plugin-loader-capability.d.ts +142 -0
- package/dist/types/types/plugin-loader-capability.d.ts.map +1 -0
- package/dist/types/types/plugin.d.ts +250 -0
- package/dist/types/types/plugin.d.ts.map +1 -0
- package/dist/types/types/state.d.ts +306 -0
- package/dist/types/types/state.d.ts.map +1 -0
- package/dist/types/types/theme.d.ts +279 -0
- package/dist/types/types/theme.d.ts.map +1 -0
- package/dist/types/types/ui/adapter.d.ts +181 -0
- package/dist/types/types/ui/adapter.d.ts.map +1 -0
- package/dist/types/types/ui/avatar.d.ts +102 -0
- package/dist/types/types/ui/avatar.d.ts.map +1 -0
- package/dist/types/types/ui/badge.d.ts +101 -0
- package/dist/types/types/ui/badge.d.ts.map +1 -0
- package/dist/types/types/ui/button.d.ts +135 -0
- package/dist/types/types/ui/button.d.ts.map +1 -0
- package/dist/types/types/ui/card.d.ts +105 -0
- package/dist/types/types/ui/card.d.ts.map +1 -0
- package/dist/types/types/ui/common.d.ts +29 -0
- package/dist/types/types/ui/common.d.ts.map +1 -0
- package/dist/types/types/ui/icon.d.ts +78 -0
- package/dist/types/types/ui/icon.d.ts.map +1 -0
- package/dist/types/types/ui/index.d.ts +59 -0
- package/dist/types/types/ui/index.d.ts.map +1 -0
- package/dist/types/types/ui/input.d.ts +200 -0
- package/dist/types/types/ui/input.d.ts.map +1 -0
- package/dist/types/types/ui/menu.d.ts +211 -0
- package/dist/types/types/ui/menu.d.ts.map +1 -0
- package/dist/types/types/ui/message.d.ts +121 -0
- package/dist/types/types/ui/message.d.ts.map +1 -0
- package/dist/types/types/ui/modal.d.ts +167 -0
- package/dist/types/types/ui/modal.d.ts.map +1 -0
- package/dist/types/types/ui/select.d.ts +213 -0
- package/dist/types/types/ui/select.d.ts.map +1 -0
- package/dist/types/types/ui/theme-tokens.d.ts +226 -0
- package/dist/types/types/ui/theme-tokens.d.ts.map +1 -0
- package/dist/types/types/ui/tooltip.d.ts +98 -0
- package/dist/types/types/ui/tooltip.d.ts.map +1 -0
- package/dist/types/types/ui.d.ts +49 -0
- package/dist/types/types/ui.d.ts.map +1 -0
- package/package.json +34 -0
- package/src/api-exports.test.ts +199 -0
- package/src/context/RuntimeContext.d.ts +69 -0
- package/src/context/RuntimeContext.d.ts.map +1 -0
- package/src/context/RuntimeContext.ts +75 -0
- package/src/context/index.d.ts +23 -0
- package/src/context/index.d.ts.map +1 -0
- package/src/context/index.ts +23 -0
- package/src/index.d.ts +52 -0
- package/src/index.d.ts.map +1 -0
- package/src/index.ts +59 -0
- package/src/types/auth.d.ts +146 -0
- package/src/types/auth.d.ts.map +1 -0
- package/src/types/auth.ts +479 -0
- package/src/types/capability.d.ts +218 -0
- package/src/types/capability.d.ts.map +1 -0
- package/src/types/capability.ts +302 -0
- package/src/types/common.d.ts +99 -0
- package/src/types/common.d.ts.map +1 -0
- package/src/types/common.ts +115 -0
- package/src/types/config.d.ts +64 -0
- package/src/types/config.d.ts.map +1 -0
- package/src/types/config.ts +96 -0
- package/src/types/event.d.ts +206 -0
- package/src/types/event.d.ts.map +1 -0
- package/src/types/event.ts +776 -0
- package/src/types/http.d.ts +132 -0
- package/src/types/http.d.ts.map +1 -0
- package/src/types/http.ts +156 -0
- package/src/types/i18n.ts +420 -0
- package/src/types/index.d.ts +50 -0
- package/src/types/index.d.ts.map +1 -0
- package/src/types/index.ts +120 -0
- package/src/types/layout.ts +394 -0
- package/src/types/module.d.ts +78 -0
- package/src/types/module.d.ts.map +1 -0
- package/src/types/module.ts +92 -0
- package/src/types/navigation.d.ts +101 -0
- package/src/types/navigation.d.ts.map +1 -0
- package/src/types/navigation.ts +361 -0
- package/src/types/plugin-loader-capability.ts +159 -0
- package/src/types/plugin.d.ts +250 -0
- package/src/types/plugin.d.ts.map +1 -0
- package/src/types/plugin.ts +344 -0
- package/src/types/state.d.ts +119 -0
- package/src/types/state.d.ts.map +1 -0
- package/src/types/state.ts +366 -0
- package/src/types/theme.ts +378 -0
- package/src/types/ui/adapter.ts +222 -0
- package/src/types/ui/avatar.ts +113 -0
- package/src/types/ui/badge.ts +112 -0
- package/src/types/ui/button.ts +148 -0
- package/src/types/ui/card.ts +116 -0
- package/src/types/ui/common.ts +29 -0
- package/src/types/ui/icon.ts +85 -0
- package/src/types/ui/index.ts +78 -0
- package/src/types/ui/input.ts +225 -0
- package/src/types/ui/menu.ts +237 -0
- package/src/types/ui/message.ts +135 -0
- package/src/types/ui/modal.ts +188 -0
- package/src/types/ui/select.ts +239 -0
- package/src/types/ui/theme-tokens.ts +357 -0
- package/src/types/ui/tooltip.ts +120 -0
- package/src/types/ui.ts +49 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
// src/types/capability.ts
|
|
2
|
+
var CapabilityPriority = /* @__PURE__ */ ((CapabilityPriority2) => {
|
|
3
|
+
CapabilityPriority2[CapabilityPriority2["LOW"] = 0] = "LOW";
|
|
4
|
+
CapabilityPriority2[CapabilityPriority2["NORMAL"] = 50] = "NORMAL";
|
|
5
|
+
CapabilityPriority2[CapabilityPriority2["HIGH"] = 100] = "HIGH";
|
|
6
|
+
return CapabilityPriority2;
|
|
7
|
+
})(CapabilityPriority || {});
|
|
8
|
+
function createCapabilityType(meta) {
|
|
9
|
+
return {
|
|
10
|
+
...meta,
|
|
11
|
+
id: Symbol.for(meta.id)
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// src/types/plugin.ts
|
|
16
|
+
var PluginLoadError = class extends Error {
|
|
17
|
+
constructor(message, pluginId, phase, cause) {
|
|
18
|
+
super(message);
|
|
19
|
+
this.pluginId = pluginId;
|
|
20
|
+
this.phase = phase;
|
|
21
|
+
this.cause = cause;
|
|
22
|
+
this.name = "PluginLoadError";
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
// src/types/navigation.ts
|
|
27
|
+
var NavigationCapabilityType = /* @__PURE__ */ Symbol.for("NavigationCapability");
|
|
28
|
+
var RouterCapabilityType = NavigationCapabilityType;
|
|
29
|
+
|
|
30
|
+
// src/types/state.ts
|
|
31
|
+
var PluginStateCapabilityType = /* @__PURE__ */ Symbol.for("PluginStateCapability");
|
|
32
|
+
var StateStoreCapabilityType = PluginStateCapabilityType;
|
|
33
|
+
|
|
34
|
+
// src/types/event.ts
|
|
35
|
+
var EventBusCapabilityType = /* @__PURE__ */ Symbol.for("EventBusCapability");
|
|
36
|
+
var GovernedEventBusCapabilityType = /* @__PURE__ */ Symbol.for("GovernedEventBusCapability");
|
|
37
|
+
var BackpressureError = class extends Error {
|
|
38
|
+
eventType;
|
|
39
|
+
queueDepth;
|
|
40
|
+
maxQueueDepth;
|
|
41
|
+
constructor(eventType, queueDepth, maxQueueDepth) {
|
|
42
|
+
super(
|
|
43
|
+
`Backpressure limit reached for event type '${eventType}': queue depth ${queueDepth} >= max ${maxQueueDepth}`
|
|
44
|
+
);
|
|
45
|
+
this.name = "BackpressureError";
|
|
46
|
+
this.eventType = eventType;
|
|
47
|
+
this.queueDepth = queueDepth;
|
|
48
|
+
this.maxQueueDepth = maxQueueDepth;
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
// src/types/module.ts
|
|
53
|
+
var ModuleState = /* @__PURE__ */ ((ModuleState2) => {
|
|
54
|
+
ModuleState2["UNLOADED"] = "UNLOADED";
|
|
55
|
+
ModuleState2["LOADING"] = "LOADING";
|
|
56
|
+
ModuleState2["LOADED"] = "LOADED";
|
|
57
|
+
ModuleState2["ACTIVE"] = "ACTIVE";
|
|
58
|
+
ModuleState2["ERROR"] = "ERROR";
|
|
59
|
+
return ModuleState2;
|
|
60
|
+
})(ModuleState || {});
|
|
61
|
+
var ModuleLifecycleEvent = /* @__PURE__ */ ((ModuleLifecycleEvent2) => {
|
|
62
|
+
ModuleLifecycleEvent2["BEFORE_LOAD"] = "BEFORE_LOAD";
|
|
63
|
+
ModuleLifecycleEvent2["AFTER_LOAD"] = "AFTER_LOAD";
|
|
64
|
+
ModuleLifecycleEvent2["BEFORE_ACTIVATE"] = "BEFORE_ACTIVATE";
|
|
65
|
+
ModuleLifecycleEvent2["AFTER_ACTIVATE"] = "AFTER_ACTIVATE";
|
|
66
|
+
ModuleLifecycleEvent2["BEFORE_DEACTIVATE"] = "BEFORE_DEACTIVATE";
|
|
67
|
+
ModuleLifecycleEvent2["AFTER_DEACTIVATE"] = "AFTER_DEACTIVATE";
|
|
68
|
+
ModuleLifecycleEvent2["ERROR"] = "ERROR";
|
|
69
|
+
return ModuleLifecycleEvent2;
|
|
70
|
+
})(ModuleLifecycleEvent || {});
|
|
71
|
+
|
|
72
|
+
// src/types/http.ts
|
|
73
|
+
var HttpCapabilityType = /* @__PURE__ */ Symbol.for("HttpCapability");
|
|
74
|
+
|
|
75
|
+
// src/types/auth.ts
|
|
76
|
+
var AuthCapabilityType = /* @__PURE__ */ Symbol.for("AuthCapability");
|
|
77
|
+
|
|
78
|
+
// src/types/config.ts
|
|
79
|
+
var ConfigCapabilityType = /* @__PURE__ */ Symbol.for("ConfigCapability");
|
|
80
|
+
var ConfigStoreCapabilityType = /* @__PURE__ */ Symbol.for("ConfigStoreCapability");
|
|
81
|
+
|
|
82
|
+
// src/types/i18n.ts
|
|
83
|
+
var I18nCapabilityType = /* @__PURE__ */ Symbol.for("I18nCapability");
|
|
84
|
+
|
|
85
|
+
// src/types/theme.ts
|
|
86
|
+
var ThemeCapabilityType = /* @__PURE__ */ Symbol.for("ThemeCapability");
|
|
87
|
+
|
|
88
|
+
// src/types/layout.ts
|
|
89
|
+
var LayoutCapabilityType = /* @__PURE__ */ Symbol.for("LayoutCapability");
|
|
90
|
+
|
|
91
|
+
// src/types/ui/theme-tokens.ts
|
|
92
|
+
var MUI_THEME_TOKENS = {
|
|
93
|
+
// Brand Colors
|
|
94
|
+
primary: "#1976d2",
|
|
95
|
+
primaryLight: "#42a5f5",
|
|
96
|
+
primaryDark: "#1565c0",
|
|
97
|
+
primaryContrastText: "#ffffff",
|
|
98
|
+
secondary: "#9c27b0",
|
|
99
|
+
secondaryLight: "#ba68c8",
|
|
100
|
+
secondaryDark: "#7b1fa2",
|
|
101
|
+
secondaryContrastText: "#ffffff",
|
|
102
|
+
// Semantic Colors
|
|
103
|
+
error: "#d32f2f",
|
|
104
|
+
warning: "#ed6c02",
|
|
105
|
+
info: "#0288d1",
|
|
106
|
+
success: "#2e7d32",
|
|
107
|
+
// Neutral Colors
|
|
108
|
+
background: "#f5f5f5",
|
|
109
|
+
paper: "#ffffff",
|
|
110
|
+
textPrimary: "rgba(0, 0, 0, 0.87)",
|
|
111
|
+
textSecondary: "rgba(0, 0, 0, 0.6)",
|
|
112
|
+
textDisabled: "rgba(0, 0, 0, 0.38)",
|
|
113
|
+
divider: "rgba(0, 0, 0, 0.12)",
|
|
114
|
+
// Layout Colors
|
|
115
|
+
sidebarBackground: "#1e293b",
|
|
116
|
+
sidebarText: "rgba(255, 255, 255, 0.87)",
|
|
117
|
+
sidebarActiveBackground: "#3b82f6",
|
|
118
|
+
sidebarHoverBackground: "rgba(255, 255, 255, 0.08)",
|
|
119
|
+
headerBackground: "#ffffff",
|
|
120
|
+
headerText: "rgba(0, 0, 0, 0.87)",
|
|
121
|
+
// Shape Tokens
|
|
122
|
+
borderRadiusSmall: 4,
|
|
123
|
+
borderRadiusMedium: 8,
|
|
124
|
+
borderRadiusLarge: 12
|
|
125
|
+
};
|
|
126
|
+
var MUI_DARK_THEME_TOKENS = {
|
|
127
|
+
// Brand Colors (same as light)
|
|
128
|
+
primary: "#90caf9",
|
|
129
|
+
primaryLight: "#e3f2fd",
|
|
130
|
+
primaryDark: "#42a5f5",
|
|
131
|
+
primaryContrastText: "rgba(0, 0, 0, 0.87)",
|
|
132
|
+
secondary: "#ce93d8",
|
|
133
|
+
secondaryLight: "#f3e5f5",
|
|
134
|
+
secondaryDark: "#ab47bc",
|
|
135
|
+
secondaryContrastText: "rgba(0, 0, 0, 0.87)",
|
|
136
|
+
// Semantic Colors (adjusted for dark mode)
|
|
137
|
+
error: "#f44336",
|
|
138
|
+
warning: "#ffa726",
|
|
139
|
+
info: "#29b6f6",
|
|
140
|
+
success: "#66bb6a",
|
|
141
|
+
// Neutral Colors (inverted)
|
|
142
|
+
background: "#121212",
|
|
143
|
+
paper: "#1e1e1e",
|
|
144
|
+
textPrimary: "rgba(255, 255, 255, 0.87)",
|
|
145
|
+
textSecondary: "rgba(255, 255, 255, 0.6)",
|
|
146
|
+
textDisabled: "rgba(255, 255, 255, 0.38)",
|
|
147
|
+
divider: "rgba(255, 255, 255, 0.12)",
|
|
148
|
+
// Layout Colors (adjusted for dark mode)
|
|
149
|
+
sidebarBackground: "#0f172a",
|
|
150
|
+
sidebarText: "rgba(255, 255, 255, 0.87)",
|
|
151
|
+
sidebarActiveBackground: "#1e40af",
|
|
152
|
+
sidebarHoverBackground: "rgba(255, 255, 255, 0.08)",
|
|
153
|
+
headerBackground: "#1e1e1e",
|
|
154
|
+
headerText: "rgba(255, 255, 255, 0.87)",
|
|
155
|
+
// Shape Tokens (same as light)
|
|
156
|
+
borderRadiusSmall: 4,
|
|
157
|
+
borderRadiusMedium: 8,
|
|
158
|
+
borderRadiusLarge: 12
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
// src/types/ui/adapter.ts
|
|
162
|
+
var UICapabilityType = /* @__PURE__ */ Symbol.for("UICapability");
|
|
163
|
+
|
|
164
|
+
// src/types/plugin-loader-capability.ts
|
|
165
|
+
var PluginLoaderCapabilityType = /* @__PURE__ */ Symbol.for("PluginLoaderCapability");
|
|
166
|
+
export {
|
|
167
|
+
AuthCapabilityType,
|
|
168
|
+
BackpressureError,
|
|
169
|
+
CapabilityPriority,
|
|
170
|
+
ConfigCapabilityType,
|
|
171
|
+
ConfigStoreCapabilityType,
|
|
172
|
+
EventBusCapabilityType,
|
|
173
|
+
GovernedEventBusCapabilityType,
|
|
174
|
+
HttpCapabilityType,
|
|
175
|
+
I18nCapabilityType,
|
|
176
|
+
LayoutCapabilityType,
|
|
177
|
+
MUI_DARK_THEME_TOKENS,
|
|
178
|
+
MUI_THEME_TOKENS,
|
|
179
|
+
ModuleLifecycleEvent,
|
|
180
|
+
ModuleState,
|
|
181
|
+
NavigationCapabilityType,
|
|
182
|
+
PluginLoadError,
|
|
183
|
+
PluginLoaderCapabilityType,
|
|
184
|
+
PluginStateCapabilityType,
|
|
185
|
+
RouterCapabilityType,
|
|
186
|
+
StateStoreCapabilityType,
|
|
187
|
+
ThemeCapabilityType,
|
|
188
|
+
UICapabilityType,
|
|
189
|
+
createCapabilityType
|
|
190
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 Brix Platform Authors
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* @file Public API Snapshot Test (Golden File)
|
|
18
|
+
* @description Validates stability of public API exports to prevent accidental breaking changes
|
|
19
|
+
* @module @brix/runtime-sdk-api-web/test
|
|
20
|
+
* @version 3.2.0
|
|
21
|
+
*
|
|
22
|
+
* [Test Description]
|
|
23
|
+
* Golden File tests ensure the following by creating API export snapshots:
|
|
24
|
+
* 1. Public APIs are not accidentally modified
|
|
25
|
+
* 2. Type exports remain stable
|
|
26
|
+
* 3. Any API changes require explicit confirmation
|
|
27
|
+
*
|
|
28
|
+
* [Update Snapshot]
|
|
29
|
+
* When intentionally modifying the API, run:
|
|
30
|
+
* pnpm test -- -u
|
|
31
|
+
*/
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=api-exports.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-exports.test.d.ts","sourceRoot":"","sources":["../../src/api-exports.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH;;;;;;;;;;;;;;;GAeG"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 Brix Platform Authors
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* @file Runtime Context Abstract Definition
|
|
18
|
+
* @description Defines the core interface for runtime context (no React dependency)
|
|
19
|
+
* @module @brix/runtime-sdk-api-web/context/RuntimeContext
|
|
20
|
+
* @version 3.2.0
|
|
21
|
+
*
|
|
22
|
+
* [v3.2 Refactoring Notes]
|
|
23
|
+
* Extracted RuntimeContext abstraction from index.ts to keep the contract layer free of React dependencies.
|
|
24
|
+
* React-related Context and Hooks are migrated to @brix/runtime-sdk-react package.
|
|
25
|
+
*
|
|
26
|
+
* [Design Principles]
|
|
27
|
+
* - Pure abstract interface, no dependency on any UI framework
|
|
28
|
+
* - Can be used in React, Vue, native JS, and other environments
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* Runtime Context Interface
|
|
32
|
+
*
|
|
33
|
+
* <p>Provides a unified entry point for plugins to access runtime capabilities.</p>
|
|
34
|
+
*
|
|
35
|
+
* <h3>Responsibilities</h3>
|
|
36
|
+
* <ul>
|
|
37
|
+
* <li>Provides module ID identification</li>
|
|
38
|
+
* <li>Provides tenant ID identification</li>
|
|
39
|
+
* <li>Provides capability retrieval method</li>
|
|
40
|
+
* </ul>
|
|
41
|
+
*
|
|
42
|
+
* <h3>Usage Example</h3>
|
|
43
|
+
* ```typescript
|
|
44
|
+
* const http = context.getCapability<HttpCapability>(HttpCapabilityType);
|
|
45
|
+
* const nav = context.getCapability<NavigationCapability>(NavigationCapabilityType);
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
export interface RuntimeContext {
|
|
49
|
+
/**
|
|
50
|
+
* Module/Plugin ID
|
|
51
|
+
*
|
|
52
|
+
* <p>Unique identifier for the current plugin.</p>
|
|
53
|
+
*/
|
|
54
|
+
readonly moduleId: string;
|
|
55
|
+
/**
|
|
56
|
+
* Tenant ID
|
|
57
|
+
*
|
|
58
|
+
* <p>Tenant identifier for the current runtime environment.</p>
|
|
59
|
+
*/
|
|
60
|
+
readonly tenantId: string;
|
|
61
|
+
/**
|
|
62
|
+
* Get capability instance
|
|
63
|
+
*
|
|
64
|
+
* @param capabilityType Capability type identifier (Symbol)
|
|
65
|
+
* @returns Capability instance, returns undefined if not found
|
|
66
|
+
*/
|
|
67
|
+
getCapability<T>(capabilityType: symbol): T | undefined;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=RuntimeContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RuntimeContext.d.ts","sourceRoot":"","sources":["../../../src/context/RuntimeContext.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH;;;;;;;;;;;;;GAaG;AAMH;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;;;;OAKG;IACH,aAAa,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC;CACzD"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 Brix Platform Authors
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* @file Context Module Unified Export
|
|
18
|
+
* @description Exports runtime context related types
|
|
19
|
+
* @module @brix/runtime-sdk-api-web/context
|
|
20
|
+
* @version 3.2.0
|
|
21
|
+
*/
|
|
22
|
+
export * from './RuntimeContext';
|
|
23
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/context/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH;;;;;GAKG;AAEH,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 Brix Platform Authors
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* @file @brix/runtime-sdk-api-web Unified Entry Point
|
|
18
|
+
* @description UI Capability Contract Definitions - Web Platform (Framework-agnostic)
|
|
19
|
+
* @module @brix/runtime-sdk-api-web
|
|
20
|
+
* @version 3.2.1
|
|
21
|
+
*
|
|
22
|
+
* [Module Responsibilities]
|
|
23
|
+
* Defines UI runtime capability contracts for plugins to obtain and use via RuntimeContext.
|
|
24
|
+
*
|
|
25
|
+
* [Capability Categories]
|
|
26
|
+
* - Navigation Capability: Page navigation, router management
|
|
27
|
+
* - Auth Capability: User identity, permission verification
|
|
28
|
+
* - State Capability: Plugin state management
|
|
29
|
+
* - EventBus Capability: Cross-plugin communication
|
|
30
|
+
* - Config Capability: Runtime configuration reading
|
|
31
|
+
* - Http Capability: Unified HTTP requests
|
|
32
|
+
*
|
|
33
|
+
* [Design Principles]
|
|
34
|
+
* - This module is a pure contract definition layer, containing no concrete implementations
|
|
35
|
+
* - Framework-agnostic: No dependency on React/Vue/Angular or other UI frameworks
|
|
36
|
+
* - Plugins only need to depend on this module
|
|
37
|
+
* - For React bindings, use @brix/runtime-sdk-react
|
|
38
|
+
*
|
|
39
|
+
* [v3.2.1 Refactoring Notes (v3.0.4 Architectural Constraint Fix)]
|
|
40
|
+
* - Removed all 963 lines of inline type declarations, eliminating duplicate type export issues
|
|
41
|
+
* - All type definitions are now exported uniformly from types/ directory
|
|
42
|
+
* - Context definitions are exported from context/ directory
|
|
43
|
+
* - Removed React dependency, achieving true framework independence
|
|
44
|
+
*
|
|
45
|
+
* [v3.2 Refactoring Notes]
|
|
46
|
+
* - Split into modular type files (types/)
|
|
47
|
+
* - Removed React dependency, React Hooks migrated to @brix/runtime-sdk-react
|
|
48
|
+
* - RouteContribution.component type changed to framework-agnostic ComponentType
|
|
49
|
+
*/
|
|
50
|
+
export * from './types';
|
|
51
|
+
export * from './context';
|
|
52
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAKH,cAAc,SAAS,CAAC;AAKxB,cAAc,WAAW,CAAC"}
|