arcane-os 0.1.0-dev.5

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 (248) hide show
  1. package/CHANGELOG.md +154 -0
  2. package/COMMERCIAL-LICENSE.md +13 -0
  3. package/LICENSE +661 -0
  4. package/NOTICE +70 -0
  5. package/README.md +448 -0
  6. package/bin/arcane-test.mjs +741 -0
  7. package/bin/arcane.mjs +5 -0
  8. package/docs/architecture.md +234 -0
  9. package/docs/compatibility.md +36 -0
  10. package/docs/event-manager.md +166 -0
  11. package/docs/platform-targets.md +108 -0
  12. package/docs/publishing.md +203 -0
  13. package/docs/reference/README.md +117 -0
  14. package/docs/reference/arcane-ollama.md +288 -0
  15. package/docs/reference/availability-and-normalization.md +123 -0
  16. package/docs/reference/behavioral-testing.md +86 -0
  17. package/docs/reference/cli.md +569 -0
  18. package/docs/reference/core/README.md +62 -0
  19. package/docs/reference/core/arcane-ai-contracts.md +873 -0
  20. package/docs/reference/core/arcane-api.md +601 -0
  21. package/docs/reference/core/arcane-entities.md +65 -0
  22. package/docs/reference/core/arcane-events.md +134 -0
  23. package/docs/reference/core/ollama-module.md +181 -0
  24. package/docs/reference/core/reference/arcane-api/ai-and-ollama.md +1909 -0
  25. package/docs/reference/core/reference/arcane-api/applications-terminal-capabilities.md +1057 -0
  26. package/docs/reference/core/reference/arcane-api/core-and-events.md +320 -0
  27. package/docs/reference/core/reference/arcane-api/filesystem-storage-preferences-appearance.md +610 -0
  28. package/docs/reference/core/reference/arcane-api/namespaces.md +1157 -0
  29. package/docs/reference/core/reference/arcane-api/platform-installation-users-system.md +1423 -0
  30. package/docs/reference/core/reference/arcane-api/session-provisioning-diagnostics-development.md +315 -0
  31. package/docs/reference/event-manager.md +957 -0
  32. package/docs/reference/inventory/package-api.json +2632 -0
  33. package/docs/reference/inventory/runtime-components.json +934 -0
  34. package/docs/reference/inventory/runtime-entities.json +26 -0
  35. package/docs/reference/inventory/runtime-modules.json +1249 -0
  36. package/docs/reference/protocols.md +242 -0
  37. package/docs/reference/runtime-components.md +1098 -0
  38. package/docs/reference/runtime-entities.md +303 -0
  39. package/docs/reference/runtime-modules.md +2010 -0
  40. package/docs/reference/sdk-api.md +4901 -0
  41. package/docs/roadmap.md +79 -0
  42. package/docs/work-amplification.md +124 -0
  43. package/node_modules/event-pubsub/CHANGELOG.md +55 -0
  44. package/node_modules/event-pubsub/MIGRATION.md +70 -0
  45. package/node_modules/event-pubsub/README.md +363 -0
  46. package/node_modules/event-pubsub/SECURITY.md +37 -0
  47. package/node_modules/event-pubsub/index.js +141 -0
  48. package/node_modules/event-pubsub/licence +21 -0
  49. package/node_modules/event-pubsub/package.json +59 -0
  50. package/node_modules/strong-type/README.md +408 -0
  51. package/node_modules/strong-type/assets/strong-type-header.png +0 -0
  52. package/node_modules/strong-type/index.js +1151 -0
  53. package/node_modules/strong-type/licence +21 -0
  54. package/node_modules/strong-type/node.js +125 -0
  55. package/node_modules/strong-type/package.json +61 -0
  56. package/package.json +95 -0
  57. package/runtime/ARCANE_RUNTIME_RELEASE.json +791 -0
  58. package/runtime/arcane/components/app-bar.html +468 -0
  59. package/runtime/arcane/components/assistant-panel.html +715 -0
  60. package/runtime/arcane/components/calculator.html +8 -0
  61. package/runtime/arcane/components/chart.html +655 -0
  62. package/runtime/arcane/components/chat.html +1225 -0
  63. package/runtime/arcane/components/conversation-view.html +13 -0
  64. package/runtime/arcane/components/dashboard-config.html +341 -0
  65. package/runtime/arcane/components/data-maintenance.html +112 -0
  66. package/runtime/arcane/components/data-view.html +92 -0
  67. package/runtime/arcane/components/directory-picker.html +197 -0
  68. package/runtime/arcane/components/document-inspector.html +252 -0
  69. package/runtime/arcane/components/file-drop.html +264 -0
  70. package/runtime/arcane/components/file-inspector.html +293 -0
  71. package/runtime/arcane/components/file-manager.html +1715 -0
  72. package/runtime/arcane/components/header.html +142 -0
  73. package/runtime/arcane/components/integration-settings.html +14 -0
  74. package/runtime/arcane/components/local-ai-status.html +360 -0
  75. package/runtime/arcane/components/markdown-document.html +1048 -0
  76. package/runtime/arcane/components/markdown-editor.html +360 -0
  77. package/runtime/arcane/components/media-embed.html +8 -0
  78. package/runtime/arcane/components/modal.html +402 -0
  79. package/runtime/arcane/components/output-panel.html +259 -0
  80. package/runtime/arcane/components/preferences-form.html +135 -0
  81. package/runtime/arcane/components/record-timeline.html +105 -0
  82. package/runtime/arcane/components/relationship-board.html +116 -0
  83. package/runtime/arcane/components/screen-capture.html +8 -0
  84. package/runtime/arcane/components/source-code-viewer.html +441 -0
  85. package/runtime/arcane/components/source-explanation.html +124 -0
  86. package/runtime/arcane/components/speech.html +365 -0
  87. package/runtime/arcane/components/summary-strip.html +177 -0
  88. package/runtime/arcane/components/table.html +77 -0
  89. package/runtime/arcane/components/task-progress.html +282 -0
  90. package/runtime/arcane/components/terminal-workspace.html +65 -0
  91. package/runtime/arcane/components/theme-editor.html +41 -0
  92. package/runtime/arcane/components/theme-switcher.html +46 -0
  93. package/runtime/arcane/components/unified-inbox.html +20 -0
  94. package/runtime/arcane/components/voice-transcription.html +476 -0
  95. package/runtime/arcane/components/weather-widget.html +8 -0
  96. package/runtime/arcane/components/web-navigator.html +239 -0
  97. package/runtime/arcane/css/communications.css +1 -0
  98. package/runtime/arcane/css/dashboard-config.css +45 -0
  99. package/runtime/arcane/css/document-site.css +981 -0
  100. package/runtime/arcane/css/layout.css +438 -0
  101. package/runtime/arcane/css/primitives.css +321 -0
  102. package/runtime/arcane/css/theme.css +112 -0
  103. package/runtime/arcane/css/utility-workspace.css +1 -0
  104. package/runtime/arcane/entities/ApiModelRecord.js +20 -0
  105. package/runtime/arcane/entities/Calculation.js +13 -0
  106. package/runtime/arcane/entities/Chat.js +581 -0
  107. package/runtime/arcane/entities/CommunicationMessage.js +29 -0
  108. package/runtime/arcane/entities/CommunicationThread.js +21 -0
  109. package/runtime/arcane/entities/Document.js +10 -0
  110. package/runtime/arcane/entities/File.js +143 -0
  111. package/runtime/arcane/entities/Image.js +135 -0
  112. package/runtime/arcane/entities/IntentEnvelope.js +834 -0
  113. package/runtime/arcane/entities/Preference.js +83 -0
  114. package/runtime/arcane/entities/TWiNPolicyDecision.js +1092 -0
  115. package/runtime/arcane/entities/TerminalSession.js +46 -0
  116. package/runtime/arcane/entities/Theme.js +107 -0
  117. package/runtime/arcane/entities/User.js +1046 -0
  118. package/runtime/arcane/entities/Weather.js +23 -0
  119. package/runtime/arcane/img/arcane-os-everywhere.png +0 -0
  120. package/runtime/arcane/img/arrow-left.png +0 -0
  121. package/runtime/arcane/img/arrow-right.png +0 -0
  122. package/runtime/arcane/img/doc.svg +5 -0
  123. package/runtime/arcane/img/folder.svg +4 -0
  124. package/runtime/arcane/img/image.svg +5 -0
  125. package/runtime/arcane/img/refresh.png +0 -0
  126. package/runtime/arcane/img/send.svg +9 -0
  127. package/runtime/arcane/img/trash.svg +5 -0
  128. package/runtime/arcane/img/upload.svg +5 -0
  129. package/runtime/arcane/modules/AI.js +2048 -0
  130. package/runtime/arcane/modules/AIPreferenceRuntime.js +32 -0
  131. package/runtime/arcane/modules/AIPreferenceTuple.js +92 -0
  132. package/runtime/arcane/modules/AIResponseLength.js +42 -0
  133. package/runtime/arcane/modules/AIResponseURLPolicy.js +626 -0
  134. package/runtime/arcane/modules/AnsiText.js +53 -0
  135. package/runtime/arcane/modules/ApiModelDatabase.js +25 -0
  136. package/runtime/arcane/modules/AppDataScope.js +245 -0
  137. package/runtime/arcane/modules/AppearancePreferences.js +28 -0
  138. package/runtime/arcane/modules/ArcaneCommunicationBridge.js +22 -0
  139. package/runtime/arcane/modules/ArcaneNavigationPolicy.js +135 -0
  140. package/runtime/arcane/modules/ArcaneNetworkPolicy.js +255 -0
  141. package/runtime/arcane/modules/AsyncBoundary.js +161 -0
  142. package/runtime/arcane/modules/BrowserTestSuite.js +326 -0
  143. package/runtime/arcane/modules/CalculatorEngine.js +20 -0
  144. package/runtime/arcane/modules/CaseEvidenceIndexer.js +134 -0
  145. package/runtime/arcane/modules/ChartLibrary.js +35 -0
  146. package/runtime/arcane/modules/ChatRecords.js +13 -0
  147. package/runtime/arcane/modules/CommunicationAppController.js +43 -0
  148. package/runtime/arcane/modules/CommunicationHub.js +16 -0
  149. package/runtime/arcane/modules/CommunicationPreferences.js +13 -0
  150. package/runtime/arcane/modules/CommunicationProviderRegistry.js +16 -0
  151. package/runtime/arcane/modules/ComponentContracts.js +586 -0
  152. package/runtime/arcane/modules/ConfiguredAIChatSession.js +288 -0
  153. package/runtime/arcane/modules/ConversationActionItems.js +488 -0
  154. package/runtime/arcane/modules/ConversationClosingReport.js +274 -0
  155. package/runtime/arcane/modules/ConversationTimebox.js +527 -0
  156. package/runtime/arcane/modules/CoreLocalModelCatalog.js +255 -0
  157. package/runtime/arcane/modules/DBLS.js +171 -0
  158. package/runtime/arcane/modules/DBOPFS.js +1154 -0
  159. package/runtime/arcane/modules/DBOPFSWorker.js +116 -0
  160. package/runtime/arcane/modules/DataMaintenance.js +91 -0
  161. package/runtime/arcane/modules/DevelopmentWorkspace.js +74 -0
  162. package/runtime/arcane/modules/DirectoryPicker.js +109 -0
  163. package/runtime/arcane/modules/DocumentNavigation.js +223 -0
  164. package/runtime/arcane/modules/Errors.js +1025 -0
  165. package/runtime/arcane/modules/GifEncoder.js +29 -0
  166. package/runtime/arcane/modules/HTMLImport.js +114 -0
  167. package/runtime/arcane/modules/InMemoryCommunicationProvider.js +14 -0
  168. package/runtime/arcane/modules/IsolatedModelQuestionRunner.js +275 -0
  169. package/runtime/arcane/modules/LocalAIReadiness.js +870 -0
  170. package/runtime/arcane/modules/LocalAIReadinessController.js +156 -0
  171. package/runtime/arcane/modules/MD.js +111 -0
  172. package/runtime/arcane/modules/Mail.js +352 -0
  173. package/runtime/arcane/modules/MailTransport.mjs +180 -0
  174. package/runtime/arcane/modules/Marked.min.js +71 -0
  175. package/runtime/arcane/modules/MemoryRecords.js +44 -0
  176. package/runtime/arcane/modules/MessageAdvisory.js +38 -0
  177. package/runtime/arcane/modules/ModelDefinition.js +189 -0
  178. package/runtime/arcane/modules/Ollama.js +74 -0
  179. package/runtime/arcane/modules/OllamaModelIdentifier.js +21 -0
  180. package/runtime/arcane/modules/OllamaSettings.js +24 -0
  181. package/runtime/arcane/modules/OpenMeteoWeatherProvider.js +14 -0
  182. package/runtime/arcane/modules/PreferenceStore.js +109 -0
  183. package/runtime/arcane/modules/QRCode.min.js +1 -0
  184. package/runtime/arcane/modules/Questionnaire.js +61 -0
  185. package/runtime/arcane/modules/RecordLinkIndex.js +24 -0
  186. package/runtime/arcane/modules/RecordPassageIndex.js +222 -0
  187. package/runtime/arcane/modules/RecordReviewStore.js +94 -0
  188. package/runtime/arcane/modules/RevocableProjectionLedger.js +1623 -0
  189. package/runtime/arcane/modules/RiskSignalAnalyzer.js +37 -0
  190. package/runtime/arcane/modules/ScamRiskPolicy.js +62 -0
  191. package/runtime/arcane/modules/ScopedOPFSCache.js +183 -0
  192. package/runtime/arcane/modules/ScreenCapture.js +20 -0
  193. package/runtime/arcane/modules/SpeechPlayback.js +581 -0
  194. package/runtime/arcane/modules/StaticDocumentCatalog.js +1248 -0
  195. package/runtime/arcane/modules/SystemAppearance.js +20 -0
  196. package/runtime/arcane/modules/SystemPlatformPresentation.js +51 -0
  197. package/runtime/arcane/modules/SystemToolRegistry.js +28 -0
  198. package/runtime/arcane/modules/TerminalClient.js +52 -0
  199. package/runtime/arcane/modules/TerminalCommandRegistry.js +50 -0
  200. package/runtime/arcane/modules/ThemeBootstrap.js +26 -0
  201. package/runtime/arcane/modules/ThemeManager.js +131 -0
  202. package/runtime/arcane/modules/TimeGuard.js +149 -0
  203. package/runtime/arcane/modules/ToolCallRouter.js +83 -0
  204. package/runtime/arcane/modules/WaitForComponent.js +102 -0
  205. package/runtime/arcane/modules/YouTubeMedia.js +16 -0
  206. package/runtime/arcane/modules/uPlot.LICENSE.txt +21 -0
  207. package/runtime/arcane/modules/uPlot.iife.min.js +2 -0
  208. package/runtime/arcane/modules/uPlot.min.css +1 -0
  209. package/runtime/arcane/security/arcane-network-policy.json +6 -0
  210. package/runtime/strong-type/index.js +352 -0
  211. package/runtime/strong-type/licence +21 -0
  212. package/runtime/strong-type/package.json +45 -0
  213. package/schemas/arcane-app-bundle.schema.json +125 -0
  214. package/schemas/arcane-app.schema.json +329 -0
  215. package/schemas/arcane-lock.schema.json +86 -0
  216. package/schemas/arcane-package.schema.json +224 -0
  217. package/schemas/cli-event.schema.json +122 -0
  218. package/schemas/event-stack.schema.json +152 -0
  219. package/schemas/native-build-plan.schema.json +176 -0
  220. package/schemas/target-adapter.schema.json +117 -0
  221. package/src/app-descriptor.mjs +500 -0
  222. package/src/cli/main.mjs +561 -0
  223. package/src/constants.mjs +31 -0
  224. package/src/dev-server.mjs +718 -0
  225. package/src/doctor.mjs +315 -0
  226. package/src/dom-event-instrumentation.mjs +594 -0
  227. package/src/errors.mjs +75 -0
  228. package/src/event-manager.mjs +1342 -0
  229. package/src/event-queue.mjs +138 -0
  230. package/src/events.mjs +219 -0
  231. package/src/index.mjs +177 -0
  232. package/src/integrated-provider-loader.mjs +432 -0
  233. package/src/native-plan.mjs +698 -0
  234. package/src/native-provider-loader.mjs +1126 -0
  235. package/src/packager/core.mjs +2691 -0
  236. package/src/process.mjs +353 -0
  237. package/src/release-bundle.mjs +2523 -0
  238. package/src/repository.mjs +90 -0
  239. package/src/runtime.mjs +452 -0
  240. package/src/scaffold.mjs +380 -0
  241. package/src/targets/index.mjs +436 -0
  242. package/src/templates/assets/app-icon.png +0 -0
  243. package/src/templates/workspace-template.mjs +388 -0
  244. package/src/testing-loader.mjs +9 -0
  245. package/src/testing.mjs +427 -0
  246. package/src/toolchain.mjs +1335 -0
  247. package/src/update-check.mjs +307 -0
  248. package/src/workspace.mjs +449 -0
@@ -0,0 +1,934 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "source": {
4
+ "commit": "567ad110bf57a1c2d4a3daa22ae93716cc5f4d7e",
5
+ "bundleVersion": "0.8.12"
6
+ },
7
+ "componentCount": 39,
8
+ "loader": "/arcane/modules/HTMLImport.js",
9
+ "artifacts": [
10
+ {
11
+ "file": "runtime/arcane/components/app-bar.html",
12
+ "name": "app-bar.html",
13
+ "purpose": "Responsive application navigation, route state, status, and trailing actions.",
14
+ "methods": [
15
+ "setNavigation()",
16
+ "setActiveRoute()",
17
+ "setStatus()",
18
+ "refresh()"
19
+ ],
20
+ "events": [
21
+ "app-bar-ready"
22
+ ],
23
+ "slots": [
24
+ "brand-mark",
25
+ "product-name",
26
+ "navigation",
27
+ "status",
28
+ "trailing"
29
+ ],
30
+ "dependencies": [],
31
+ "availability": "Browser and supported native WebViews",
32
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
33
+ "normalization": "DOM-normalized"
34
+ },
35
+ {
36
+ "file": "runtime/arcane/components/assistant-panel.html",
37
+ "name": "assistant-panel.html",
38
+ "purpose": "Reusable assistant drawer, message area, composer, pending/streaming/empty/error state, and actions.",
39
+ "methods": [
40
+ "open()",
41
+ "close()",
42
+ "toggle()",
43
+ "send()",
44
+ "clear()",
45
+ "setState()",
46
+ "focusComposer()",
47
+ "scrollToEnd()"
48
+ ],
49
+ "events": [
50
+ "assistant-ready",
51
+ "assistant-send",
52
+ "assistant-clear"
53
+ ],
54
+ "slots": [
55
+ "title",
56
+ "subtitle",
57
+ "identity",
58
+ "messages/message",
59
+ "composer",
60
+ "actions",
61
+ "pending",
62
+ "streaming",
63
+ "empty",
64
+ "error",
65
+ "footer"
66
+ ],
67
+ "dependencies": [],
68
+ "availability": "Browser and supported native WebViews",
69
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
70
+ "normalization": "DOM-normalized; caller/provider results remain external"
71
+ },
72
+ {
73
+ "file": "runtime/arcane/components/calculator.html",
74
+ "name": "calculator.html",
75
+ "purpose": "Calculator keypad and result/error event surface backed by CalculatorEngine.",
76
+ "methods": [
77
+ "calculate()"
78
+ ],
79
+ "events": [
80
+ "calculator-ready",
81
+ "calculation-complete",
82
+ "calculation-error"
83
+ ],
84
+ "slots": [],
85
+ "dependencies": [
86
+ "CalculatorEngine.js"
87
+ ],
88
+ "availability": "Browser and supported native WebViews",
89
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
90
+ "normalization": "Normalized Calculation/error events"
91
+ },
92
+ {
93
+ "file": "runtime/arcane/components/chart.html",
94
+ "name": "chart.html",
95
+ "purpose": "Accessible uPlot line, area, or point chart with normalized options and rows.",
96
+ "methods": [
97
+ "configure()",
98
+ "populate()",
99
+ "setData()",
100
+ "addData()",
101
+ "update()",
102
+ "destroy()"
103
+ ],
104
+ "events": [
105
+ "chart-ready",
106
+ "chart-remove"
107
+ ],
108
+ "slots": [],
109
+ "dependencies": [
110
+ "ChartLibrary.js",
111
+ "ComponentContracts.js"
112
+ ],
113
+ "availability": "Browser and supported native WebViews",
114
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
115
+ "normalization": "Options/rows normalized; uPlot rendering is vendor-native"
116
+ },
117
+ {
118
+ "file": "runtime/arcane/components/chat.html",
119
+ "name": "chat.html",
120
+ "purpose": "Shared chat, file upload, streaming, speech, language, availability, and conversation-timebox surface.",
121
+ "methods": [
122
+ "streamMessage()",
123
+ "setMessageProgress()",
124
+ "setAIAvailability()",
125
+ "setInitialSpeechMuted()",
126
+ "setConversationComplete()",
127
+ "bindConversationTimebox()",
128
+ "submitMessage()",
129
+ "sendMessage()",
130
+ "languageChanged()"
131
+ ],
132
+ "events": [
133
+ "chat-ready",
134
+ "chat-send-message",
135
+ "chat-send-error",
136
+ "chat-file-uploaded",
137
+ "chat-language-changed",
138
+ "conversation-timebox-error"
139
+ ],
140
+ "slots": [],
141
+ "dependencies": [
142
+ "MD.js",
143
+ "File.js",
144
+ "ConversationTimebox.js"
145
+ ],
146
+ "availability": "Browser and supported native WebViews",
147
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
148
+ "normalization": "UI state normalized; AI/storage/media behavior mixed"
149
+ },
150
+ {
151
+ "file": "runtime/arcane/components/conversation-view.html",
152
+ "name": "conversation-view.html",
153
+ "purpose": "Provider-neutral conversation display, advisory actions, composer, busy state, and status.",
154
+ "methods": [
155
+ "setConversation()",
156
+ "setBusy()",
157
+ "setStatus()",
158
+ "clearComposer()"
159
+ ],
160
+ "events": [
161
+ "conversation-view-ready",
162
+ "communication-send",
163
+ "communication-advisory-action"
164
+ ],
165
+ "slots": [],
166
+ "dependencies": [],
167
+ "availability": "Browser and supported native WebViews",
168
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
169
+ "normalization": "DOM-normalized"
170
+ },
171
+ {
172
+ "file": "runtime/arcane/components/dashboard-config.html",
173
+ "name": "dashboard-config.html",
174
+ "purpose": "Selects which normalized chart definitions are visible on a dashboard.",
175
+ "methods": [
176
+ "configure()",
177
+ "setDefinitions()",
178
+ "setVisibility()",
179
+ "getChartOptions()",
180
+ "getEffectiveVisibility()",
181
+ "open()",
182
+ "close()"
183
+ ],
184
+ "events": [
185
+ "dashboard-config-ready",
186
+ "dashboard-config-opened",
187
+ "dashboard-config-closed",
188
+ "dashboard-config-change"
189
+ ],
190
+ "slots": [],
191
+ "dependencies": [
192
+ "ComponentContracts.js",
193
+ "WaitForComponent.js"
194
+ ],
195
+ "availability": "Browser and supported native WebViews",
196
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
197
+ "normalization": "Fully normalized definitions and visibility"
198
+ },
199
+ {
200
+ "file": "runtime/arcane/components/data-maintenance.html",
201
+ "name": "data-maintenance.html",
202
+ "purpose": "Runs destructive cleanup of empty chats and memories inside the current app data scope.",
203
+ "methods": [
204
+ "open()"
205
+ ],
206
+ "events": [
207
+ "data-maintenance-ready",
208
+ "data-maintenance-complete"
209
+ ],
210
+ "slots": [],
211
+ "dependencies": [
212
+ "DataMaintenance.js",
213
+ "WaitForComponent.js"
214
+ ],
215
+ "availability": "Browser and supported native WebViews",
216
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
217
+ "normalization": "Normalized counts; DBOPFS failures mixed"
218
+ },
219
+ {
220
+ "file": "runtime/arcane/components/data-view.html",
221
+ "name": "data-view.html",
222
+ "purpose": "Opens a generic modal-style data view around an injected provider.",
223
+ "methods": [
224
+ "beforeOpen()",
225
+ "open()"
226
+ ],
227
+ "events": [
228
+ "data-view-ready"
229
+ ],
230
+ "slots": [],
231
+ "dependencies": [
232
+ "WaitForComponent.js"
233
+ ],
234
+ "availability": "Browser and supported native WebViews",
235
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
236
+ "normalization": "DOM-native result"
237
+ },
238
+ {
239
+ "file": "runtime/arcane/components/directory-picker.html",
240
+ "name": "directory-picker.html",
241
+ "purpose": "Presents the provider-owned OS directory chooser with change/cancel/error states.",
242
+ "methods": [
243
+ "configure()",
244
+ "focus()",
245
+ "select()"
246
+ ],
247
+ "events": [
248
+ "directory-picker-ready",
249
+ "directory-picker-change",
250
+ "directory-picker-cancel",
251
+ "directory-picker-error"
252
+ ],
253
+ "slots": [],
254
+ "dependencies": [
255
+ "DirectoryPicker.js"
256
+ ],
257
+ "availability": "Browser and supported native WebViews",
258
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
259
+ "normalization": "Strict normalized native selection/error"
260
+ },
261
+ {
262
+ "file": "runtime/arcane/components/document-inspector.html",
263
+ "name": "document-inspector.html",
264
+ "purpose": "Inspects PDF, text, or source documents and records review state.",
265
+ "methods": [
266
+ "loadDocument()",
267
+ "selectView()",
268
+ "markSaved()"
269
+ ],
270
+ "events": [
271
+ "document-inspector-ready",
272
+ "document-review-change"
273
+ ],
274
+ "slots": [],
275
+ "dependencies": [
276
+ "MD.js"
277
+ ],
278
+ "availability": "Browser and supported native WebViews",
279
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
280
+ "normalization": "Document state normalized; browser document APIs mixed"
281
+ },
282
+ {
283
+ "file": "runtime/arcane/components/file-drop.html",
284
+ "name": "file-drop.html",
285
+ "purpose": "Acquires files by drag/drop or picker and presents busy, progress, error, and cleared state.",
286
+ "methods": [
287
+ "configure()",
288
+ "openPicker()",
289
+ "clear()",
290
+ "setBusy()",
291
+ "setError()",
292
+ "setProgress()"
293
+ ],
294
+ "events": [
295
+ "file-drop-ready",
296
+ "file-drop-selected",
297
+ "file-drop-progress",
298
+ "file-drop-state",
299
+ "file-drop-error"
300
+ ],
301
+ "slots": [],
302
+ "dependencies": [],
303
+ "availability": "Browser and supported native WebViews",
304
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
305
+ "normalization": "State normalized; browser File/drop errors mixed"
306
+ },
307
+ {
308
+ "file": "runtime/arcane/components/file-inspector.html",
309
+ "name": "file-inspector.html",
310
+ "purpose": "Displays file metadata, preview, busy/error state, and caller-defined actions.",
311
+ "methods": [
312
+ "configure()",
313
+ "show()",
314
+ "clear()",
315
+ "setActions()",
316
+ "setBusy()",
317
+ "setError()",
318
+ "setPreview()"
319
+ ],
320
+ "events": [
321
+ "file-inspector-ready",
322
+ "file-inspector-action",
323
+ "file-inspector-change",
324
+ "file-inspector-cleared",
325
+ "file-inspector-error"
326
+ ],
327
+ "slots": [
328
+ "title",
329
+ "preview",
330
+ "metadata",
331
+ "actions"
332
+ ],
333
+ "dependencies": [],
334
+ "availability": "Browser and supported native WebViews",
335
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
336
+ "normalization": "State normalized; preview/provider behavior mixed"
337
+ },
338
+ {
339
+ "file": "runtime/arcane/components/file-manager.html",
340
+ "name": "file-manager.html",
341
+ "purpose": "Browses, filters, selects, opens, and acts on app-scoped files.",
342
+ "methods": [
343
+ "setProvider()",
344
+ "loadAll()",
345
+ "setFilter()",
346
+ "select()",
347
+ "clearSelection()"
348
+ ],
349
+ "events": [
350
+ "file-manager-ready",
351
+ "file-manager-select",
352
+ "file-manager-open",
353
+ "file-manager-action"
354
+ ],
355
+ "slots": [],
356
+ "dependencies": [
357
+ "DBOPFS.js",
358
+ "File.js",
359
+ "WaitForComponent.js"
360
+ ],
361
+ "availability": "Browser and supported native WebViews",
362
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
363
+ "normalization": "Selection/filter state normalized; storage/provider behavior mixed"
364
+ },
365
+ {
366
+ "file": "runtime/arcane/components/header.html",
367
+ "name": "header.html",
368
+ "purpose": "Legacy title bar with history, reload, online marker, presentation labels, and 988 link.",
369
+ "methods": [],
370
+ "events": [],
371
+ "slots": [],
372
+ "dependencies": [],
373
+ "availability": "Browser and supported native WebViews",
374
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
375
+ "normalization": "Browser/platform-native behavior; no component-ready contract"
376
+ },
377
+ {
378
+ "file": "runtime/arcane/components/integration-settings.html",
379
+ "name": "integration-settings.html",
380
+ "purpose": "Edits non-secret communication service configuration and service actions.",
381
+ "methods": [
382
+ "configure()",
383
+ "getValues()",
384
+ "setStatus()"
385
+ ],
386
+ "events": [
387
+ "integration-settings-ready",
388
+ "integration-settings-save",
389
+ "integration-settings-close",
390
+ "integration-action"
391
+ ],
392
+ "slots": [],
393
+ "dependencies": [],
394
+ "availability": "Browser and supported native WebViews",
395
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
396
+ "normalization": "Normalized non-secret values"
397
+ },
398
+ {
399
+ "file": "runtime/arcane/components/local-ai-status.html",
400
+ "name": "local-ai-status.html",
401
+ "purpose": "Presents local-AI standby, failure, recovery, guidance, retry, and dismissal states.",
402
+ "methods": [
403
+ "configure()",
404
+ "begin()",
405
+ "present(); hidden property"
406
+ ],
407
+ "events": [
408
+ "local-ai-status-ready",
409
+ "local-ai-status-dismissed",
410
+ "local-ai-retry"
411
+ ],
412
+ "slots": [],
413
+ "dependencies": [
414
+ "LocalAIReadiness.js"
415
+ ],
416
+ "availability": "Browser and supported native WebViews",
417
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
418
+ "normalization": "Fully normalized LocalAIReadiness report"
419
+ },
420
+ {
421
+ "file": "runtime/arcane/components/markdown-document.html",
422
+ "name": "markdown-document.html",
423
+ "purpose": "Safely renders and navigates a Markdown document with focusable fragments.",
424
+ "methods": [
425
+ "configure()",
426
+ "load()",
427
+ "render()",
428
+ "clear()",
429
+ "fail()",
430
+ "focus()",
431
+ "focusFragment()"
432
+ ],
433
+ "events": [
434
+ "markdown-document-ready",
435
+ "markdown-document-state",
436
+ "markdown-document-navigate"
437
+ ],
438
+ "slots": [],
439
+ "dependencies": [
440
+ "MD.js"
441
+ ],
442
+ "availability": "Browser and supported native WebViews",
443
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
444
+ "normalization": "State/sanitized output normalized; Marked/DOM failures mixed"
445
+ },
446
+ {
447
+ "file": "runtime/arcane/components/markdown-editor.html",
448
+ "name": "markdown-editor.html",
449
+ "purpose": "Configurable Markdown authoring, toolbar, preview, title, and save surface.",
450
+ "methods": [
451
+ "configure()",
452
+ "focus()",
453
+ "clear()",
454
+ "saveEntry()"
455
+ ],
456
+ "events": [
457
+ "markdown-editor-ready",
458
+ "markdown-editor-change",
459
+ "markdown-editor-saved"
460
+ ],
461
+ "slots": [],
462
+ "dependencies": [
463
+ "MD.js",
464
+ "ComponentContracts.js"
465
+ ],
466
+ "availability": "Browser and supported native WebViews",
467
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
468
+ "normalization": "Editor values normalized; injected save result mixed"
469
+ },
470
+ {
471
+ "file": "runtime/arcane/components/media-embed.html",
472
+ "name": "media-embed.html",
473
+ "purpose": "Loads a validated YouTube video or playlist embed and exposes external-platform action.",
474
+ "methods": [
475
+ "configure()",
476
+ "load()"
477
+ ],
478
+ "events": [
479
+ "media-embed-ready",
480
+ "media-load",
481
+ "media-error",
482
+ "media-open-platform"
483
+ ],
484
+ "slots": [],
485
+ "dependencies": [
486
+ "YouTubeMedia.js"
487
+ ],
488
+ "availability": "Browser and supported native WebViews",
489
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
490
+ "normalization": "URL/error normalized; iframe/platform behavior native"
491
+ },
492
+ {
493
+ "file": "runtime/arcane/components/modal.html",
494
+ "name": "modal.html",
495
+ "purpose": "Generic modal with population, open/close, actions, and sequential task execution.",
496
+ "methods": [
497
+ "populate()",
498
+ "open()",
499
+ "close()",
500
+ "runTasks()"
501
+ ],
502
+ "events": [
503
+ "modal-ready",
504
+ "modal-opened",
505
+ "modal-closed",
506
+ "modal-action"
507
+ ],
508
+ "slots": [
509
+ "header",
510
+ "body",
511
+ "footer"
512
+ ],
513
+ "dependencies": [],
514
+ "availability": "Browser and supported native WebViews",
515
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
516
+ "normalization": "Modal state normalized; injected task results mixed"
517
+ },
518
+ {
519
+ "file": "runtime/arcane/components/output-panel.html",
520
+ "name": "output-panel.html",
521
+ "purpose": "Presents status, output, body, coverage, actions, pending, error, and cleared states.",
522
+ "methods": [
523
+ "configure()",
524
+ "setOutput()",
525
+ "setBody()",
526
+ "setCoverage()",
527
+ "setActions()",
528
+ "setPending()",
529
+ "setStatus()",
530
+ "setError()",
531
+ "clear()"
532
+ ],
533
+ "events": [
534
+ "output-panel-ready",
535
+ "output-panel-state",
536
+ "output-panel-change",
537
+ "output-panel-action",
538
+ "output-panel-error",
539
+ "output-panel-cleared"
540
+ ],
541
+ "slots": [
542
+ "title",
543
+ "header-actions",
544
+ "body",
545
+ "coverage",
546
+ "actions"
547
+ ],
548
+ "dependencies": [],
549
+ "availability": "Browser and supported native WebViews",
550
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
551
+ "normalization": "DOM-normalized"
552
+ },
553
+ {
554
+ "file": "runtime/arcane/components/preferences-form.html",
555
+ "name": "preferences-form.html",
556
+ "purpose": "Builds a schema-driven preferences form with submit, reset, busy, and status behavior.",
557
+ "methods": [
558
+ "configure()",
559
+ "getValues()",
560
+ "setValues()",
561
+ "setBusy()",
562
+ "setStatus()"
563
+ ],
564
+ "events": [
565
+ "preferences-form-ready",
566
+ "preferences-change",
567
+ "preferences-submit",
568
+ "preferences-reset"
569
+ ],
570
+ "slots": [],
571
+ "dependencies": [],
572
+ "availability": "Browser and supported native WebViews",
573
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
574
+ "normalization": "Normalized form values"
575
+ },
576
+ {
577
+ "file": "runtime/arcane/components/record-timeline.html",
578
+ "name": "record-timeline.html",
579
+ "purpose": "Displays chronological records/evidence and emits open actions.",
580
+ "methods": [
581
+ "setItems()",
582
+ "populate()"
583
+ ],
584
+ "events": [
585
+ "record-timeline-ready",
586
+ "record-timeline-open"
587
+ ],
588
+ "slots": [],
589
+ "dependencies": [],
590
+ "availability": "Browser and supported native WebViews",
591
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
592
+ "normalization": "DOM-normalized"
593
+ },
594
+ {
595
+ "file": "runtime/arcane/components/relationship-board.html",
596
+ "name": "relationship-board.html",
597
+ "purpose": "Displays normalized relationship nodes/edges in graph and list forms.",
598
+ "methods": [
599
+ "setGraph()",
600
+ "populate()"
601
+ ],
602
+ "events": [
603
+ "relationship-board-ready",
604
+ "relationship-node-open",
605
+ "relationship-edge-open"
606
+ ],
607
+ "slots": [],
608
+ "dependencies": [],
609
+ "availability": "Browser and supported native WebViews",
610
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
611
+ "normalization": "DOM-normalized"
612
+ },
613
+ {
614
+ "file": "runtime/arcane/components/screen-capture.html",
615
+ "name": "screen-capture.html",
616
+ "purpose": "Presents image, video, or GIF display-capture workflow.",
617
+ "methods": [
618
+ "capture()"
619
+ ],
620
+ "events": [
621
+ "screen-capture-ready",
622
+ "screen-capture-result"
623
+ ],
624
+ "slots": [],
625
+ "dependencies": [
626
+ "ScreenCapture.js"
627
+ ],
628
+ "availability": "Browser and supported native WebViews",
629
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
630
+ "normalization": "State/result normalized; media permission/codec failures mixed"
631
+ },
632
+ {
633
+ "file": "runtime/arcane/components/source-code-viewer.html",
634
+ "name": "source-code-viewer.html",
635
+ "purpose": "Renders line-addressable source code with load, error, focus, and state behavior.",
636
+ "methods": [
637
+ "configure()",
638
+ "load()",
639
+ "render()",
640
+ "clear()",
641
+ "fail()",
642
+ "focus()",
643
+ "focusLine()"
644
+ ],
645
+ "events": [
646
+ "source-code-viewer-ready",
647
+ "source-code-viewer-state"
648
+ ],
649
+ "slots": [],
650
+ "dependencies": [],
651
+ "availability": "Browser and supported native WebViews",
652
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
653
+ "normalization": "Normalized source/state"
654
+ },
655
+ {
656
+ "file": "runtime/arcane/components/source-explanation.html",
657
+ "name": "source-explanation.html",
658
+ "purpose": "Presents an evidence finding, source selection, explanation, and save state.",
659
+ "methods": [
660
+ "showFinding()",
661
+ "populate()",
662
+ "selectSource()",
663
+ "markSaved()"
664
+ ],
665
+ "events": [
666
+ "source-explanation-ready",
667
+ "source-explanation-save",
668
+ "source-explanation-source-selected"
669
+ ],
670
+ "slots": [],
671
+ "dependencies": [],
672
+ "availability": "Browser and supported native WebViews",
673
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
674
+ "normalization": "DOM-normalized"
675
+ },
676
+ {
677
+ "file": "runtime/arcane/components/speech.html",
678
+ "name": "speech.html",
679
+ "purpose": "Coordinates speech controls, transcription completion, mute state, and microphone availability.",
680
+ "methods": [
681
+ "configure()",
682
+ "setAvailability()",
683
+ "setMuted(); availability",
684
+ "muted",
685
+ "initialMuted",
686
+ "componentReady properties"
687
+ ],
688
+ "events": [
689
+ "speech-ready",
690
+ "speech-transcription-complete",
691
+ "speech-microphone-unavailable"
692
+ ],
693
+ "slots": [],
694
+ "dependencies": [
695
+ "AI.js",
696
+ "DBLS.js"
697
+ ],
698
+ "availability": "Browser and supported native WebViews",
699
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
700
+ "normalization": "UI state normalized; AI/media behavior mixed"
701
+ },
702
+ {
703
+ "file": "runtime/arcane/components/summary-strip.html",
704
+ "name": "summary-strip.html",
705
+ "purpose": "Displays compact selectable KPI or summary items.",
706
+ "methods": [
707
+ "configure()",
708
+ "setItems()",
709
+ "updateItem()",
710
+ "clear()"
711
+ ],
712
+ "events": [
713
+ "summary-strip-ready",
714
+ "summary-strip-change",
715
+ "summary-strip-select"
716
+ ],
717
+ "slots": [],
718
+ "dependencies": [],
719
+ "availability": "Browser and supported native WebViews",
720
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
721
+ "normalization": "DOM-normalized"
722
+ },
723
+ {
724
+ "file": "runtime/arcane/components/table.html",
725
+ "name": "table.html",
726
+ "purpose": "Builds and updates a simple header/body table.",
727
+ "methods": [
728
+ "buildHeader()",
729
+ "buildTable()"
730
+ ],
731
+ "events": [
732
+ "table-ready",
733
+ "header-update",
734
+ "body-update"
735
+ ],
736
+ "slots": [],
737
+ "dependencies": [],
738
+ "availability": "Browser and supported native WebViews",
739
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
740
+ "normalization": "DOM-normalized"
741
+ },
742
+ {
743
+ "file": "runtime/arcane/components/task-progress.html",
744
+ "name": "task-progress.html",
745
+ "purpose": "Runs and displays a task list with started/change/complete/error state.",
746
+ "methods": [
747
+ "configure()",
748
+ "setTasks()",
749
+ "updateTask()",
750
+ "runTasks()",
751
+ "clear()"
752
+ ],
753
+ "events": [
754
+ "task-progress-ready",
755
+ "task-progress-started",
756
+ "task-progress-change",
757
+ "task-progress-complete",
758
+ "task-progress-error"
759
+ ],
760
+ "slots": [],
761
+ "dependencies": [],
762
+ "availability": "Browser and supported native WebViews",
763
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
764
+ "normalization": "Task state normalized; injected task results mixed"
765
+ },
766
+ {
767
+ "file": "runtime/arcane/components/terminal-workspace.html",
768
+ "name": "terminal-workspace.html",
769
+ "purpose": "Presents multiple terminal sessions, output, active selection, theme, and terminal actions.",
770
+ "methods": [
771
+ "configure()",
772
+ "addSession()",
773
+ "removeSession()",
774
+ "activateSession()",
775
+ "append()",
776
+ "clear()",
777
+ "setState()",
778
+ "setTheme()",
779
+ "focus()"
780
+ ],
781
+ "events": [
782
+ "terminal-workspace-ready",
783
+ "terminal-submit",
784
+ "terminal-interrupt",
785
+ "terminal-clear",
786
+ "terminal-session-new",
787
+ "terminal-session-close",
788
+ "terminal-session-select",
789
+ "terminal-settings"
790
+ ],
791
+ "slots": [],
792
+ "dependencies": [
793
+ "AnsiText.js"
794
+ ],
795
+ "availability": "Browser and supported native WebViews",
796
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
797
+ "normalization": "UI/session state normalized; native command results supplied externally"
798
+ },
799
+ {
800
+ "file": "runtime/arcane/components/theme-editor.html",
801
+ "name": "theme-editor.html",
802
+ "purpose": "Edits, previews, saves, and resets semantic custom theme tokens.",
803
+ "methods": [
804
+ "configure()",
805
+ "getTheme()",
806
+ "setTheme()",
807
+ "setBusy()",
808
+ "setStatus()"
809
+ ],
810
+ "events": [
811
+ "theme-editor-ready",
812
+ "theme-preview",
813
+ "theme-save",
814
+ "theme-reset"
815
+ ],
816
+ "slots": [],
817
+ "dependencies": [
818
+ "Theme.js"
819
+ ],
820
+ "availability": "Browser and supported native WebViews",
821
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
822
+ "normalization": "Fully normalized Theme values"
823
+ },
824
+ {
825
+ "file": "runtime/arcane/components/theme-switcher.html",
826
+ "name": "theme-switcher.html",
827
+ "purpose": "Selects and refreshes system, light, dark, or custom theme mode.",
828
+ "methods": [
829
+ "setMode()",
830
+ "refresh()"
831
+ ],
832
+ "events": [],
833
+ "slots": [],
834
+ "dependencies": [
835
+ "ThemeManager.js"
836
+ ],
837
+ "availability": "Browser and supported native WebViews",
838
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
839
+ "normalization": "Preference/native appearance behavior mixed; no component-ready contract"
840
+ },
841
+ {
842
+ "file": "runtime/arcane/components/unified-inbox.html",
843
+ "name": "unified-inbox.html",
844
+ "purpose": "Displays provider-neutral communication threads with active/loading state.",
845
+ "methods": [
846
+ "configure()",
847
+ "setThreads()",
848
+ "setActive()",
849
+ "setLoading()"
850
+ ],
851
+ "events": [
852
+ "unified-inbox-ready",
853
+ "inbox-refresh",
854
+ "thread-select"
855
+ ],
856
+ "slots": [],
857
+ "dependencies": [],
858
+ "availability": "Browser and supported native WebViews",
859
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
860
+ "normalization": "DOM-normalized"
861
+ },
862
+ {
863
+ "file": "runtime/arcane/components/voice-transcription.html",
864
+ "name": "voice-transcription.html",
865
+ "purpose": "Records segmented microphone audio, transcribes, persists, and completes a combined transcript.",
866
+ "methods": [
867
+ "configure()",
868
+ "startRecording()",
869
+ "stopRecording()",
870
+ "save()",
871
+ "completeTranscription()/complete()",
872
+ "clear()",
873
+ "reset()",
874
+ "destroy()"
875
+ ],
876
+ "events": [
877
+ "voice-transcription-ready",
878
+ "voice-transcription-state",
879
+ "voice-transcription-segment",
880
+ "voice-transcription-change",
881
+ "voice-transcription-complete",
882
+ "speech-transcription-complete"
883
+ ],
884
+ "slots": [],
885
+ "dependencies": [
886
+ "MD.js",
887
+ "ComponentContracts.js",
888
+ "AI.js"
889
+ ],
890
+ "availability": "Browser and supported native WebViews",
891
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
892
+ "normalization": "State/text normalized; media/provider behavior mixed"
893
+ },
894
+ {
895
+ "file": "runtime/arcane/components/weather-widget.html",
896
+ "name": "weather-widget.html",
897
+ "purpose": "Displays normalized current and daily weather with refresh intent.",
898
+ "methods": [
899
+ "setWeather()",
900
+ "clear()"
901
+ ],
902
+ "events": [
903
+ "weather-widget-ready",
904
+ "weather-refresh"
905
+ ],
906
+ "slots": [],
907
+ "dependencies": [],
908
+ "availability": "Browser and supported native WebViews",
909
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
910
+ "normalization": "Display normalized; provider supplied externally"
911
+ },
912
+ {
913
+ "file": "runtime/arcane/components/web-navigator.html",
914
+ "name": "web-navigator.html",
915
+ "purpose": "Guards embedded/external navigation and surfaces allow/block/open intents.",
916
+ "methods": [
917
+ "configure()",
918
+ "navigate()",
919
+ "currentUrl()"
920
+ ],
921
+ "events": [
922
+ "web-navigator-ready",
923
+ "web-navigate",
924
+ "web-navigation-blocked",
925
+ "web-open-external"
926
+ ],
927
+ "slots": [],
928
+ "dependencies": [],
929
+ "availability": "Browser and supported native WebViews",
930
+ "transport": "HTMLImport + DOM; injected Arcane/provider modules where listed",
931
+ "normalization": "Navigation intent/decision normalized; browser navigation result platform-native"
932
+ }
933
+ ]
934
+ }