@pb33f/cowboy-components 0.7.4 → 0.7.6

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 (53) hide show
  1. package/dist/components/auth/login-button.d.ts +2 -0
  2. package/dist/components/auth/login-button.js +15 -3
  3. package/dist/components/auth/login-panel.js +1 -1
  4. package/dist/components/auth/oauth-login.d.ts +1 -0
  5. package/dist/components/auth/oauth-login.js +11 -5
  6. package/dist/components/editor/editor-breadcrumb.css.js +1 -1
  7. package/dist/components/model-renderer/rendered-node.d.ts +2 -0
  8. package/dist/components/model-renderer/rendered-node.js +18 -0
  9. package/dist/components/model-renderer/responses.d.ts +11 -0
  10. package/dist/components/model-renderer/responses.js +46 -0
  11. package/dist/components/model-tree/tree.js +1 -1
  12. package/dist/components/rodeo/rodeo.js +1 -1
  13. package/dist/components/the-doctor/the-doctor.css.js +1 -1
  14. package/dist/components/the-doctor/the-doctor.d.ts +112 -120
  15. package/dist/components/the-doctor/the-doctor.js +134 -1735
  16. package/dist/components/the-doctor/upload-archive.d.ts +1 -0
  17. package/dist/components/the-doctor/upload-archive.js +36 -13
  18. package/dist/controllers/auth-controller.d.ts +25 -0
  19. package/dist/controllers/auth-controller.js +154 -0
  20. package/dist/controllers/broker-controller.d.ts +22 -0
  21. package/dist/controllers/broker-controller.js +107 -0
  22. package/dist/controllers/diagnostic-controller.d.ts +6 -0
  23. package/dist/controllers/diagnostic-controller.js +262 -0
  24. package/dist/controllers/docs-controller.d.ts +8 -0
  25. package/dist/controllers/docs-controller.js +143 -0
  26. package/dist/controllers/model-controller.d.ts +8 -0
  27. package/dist/controllers/model-controller.js +87 -0
  28. package/dist/controllers/node-clicker-controller.d.ts +11 -0
  29. package/dist/controllers/node-clicker-controller.js +362 -0
  30. package/dist/controllers/problem-controller.d.ts +7 -0
  31. package/dist/controllers/problem-controller.js +46 -0
  32. package/dist/controllers/rolodex-controller.d.ts +10 -0
  33. package/dist/controllers/rolodex-controller.js +126 -0
  34. package/dist/controllers/rule-controller.d.ts +19 -0
  35. package/dist/controllers/rule-controller.js +264 -0
  36. package/dist/controllers/spec-controller.d.ts +8 -0
  37. package/dist/controllers/spec-controller.js +78 -0
  38. package/dist/controllers/state-controller.d.ts +9 -0
  39. package/dist/controllers/state-controller.js +279 -0
  40. package/dist/cowboy-components.umd.cjs +1152 -1121
  41. package/dist/css/shared.css.js +5 -0
  42. package/dist/events/doctor.d.ts +10 -0
  43. package/dist/events/doctor.js +2 -0
  44. package/dist/model/api-response.d.ts +7 -0
  45. package/dist/model/api-response.js +2 -0
  46. package/dist/services/auth-service.d.ts +1 -0
  47. package/dist/services/auth-service.js +28 -0
  48. package/dist/services/linting-service.js +11 -2
  49. package/dist/services/model-service.d.ts +2 -1
  50. package/dist/services/model-service.js +31 -5
  51. package/package.json +1 -1
  52. package/dist/controllers/auth.d.ts +0 -20
  53. package/dist/controllers/auth.js +0 -101
@@ -6,9 +6,11 @@ export declare class LoginButton extends LitElement {
6
6
  authDialog: SlDialog;
7
7
  title: string;
8
8
  buttonLabel: string;
9
+ redirectUrl: string;
9
10
  oauthLogin: OAuthLogin;
10
11
  private controller;
11
12
  constructor();
13
+ updated(): void;
12
14
  render(): import("lit-html").TemplateResult<1>;
13
15
  anonView(): import("lit-html").TemplateResult<1>;
14
16
  hide(): void;
@@ -6,7 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { html, LitElement } from "lit";
8
8
  import { customElement, property, query } from "lit/decorators.js";
9
- import { AuthController } from "../../controllers/auth";
9
+ import { AuthController } from "../../controllers/auth-controller";
10
10
  import buttonCss from "../../css/button.css";
11
11
  import modalCss from "../../css/modal.css";
12
12
  import loginButtonCss from "./login-button.css";
@@ -18,6 +18,12 @@ let LoginButton = class LoginButton extends LitElement {
18
18
  this.controller = new AuthController(this);
19
19
  this.title = 'authenticate';
20
20
  this.buttonLabel = 'Authenticate';
21
+ this.redirectUrl = '';
22
+ }
23
+ updated() {
24
+ if (this.oauthLogin) {
25
+ this.oauthLogin.redirectURL = this.redirectUrl;
26
+ }
21
27
  }
22
28
  render() {
23
29
  let out = this.anonView();
@@ -65,8 +71,11 @@ let LoginButton = class LoginButton extends LitElement {
65
71
  `;
66
72
  }
67
73
  logout() {
68
- this.dispatchEvent(new Event(LogoutRequested, {
69
- bubbles: true, composed: true
74
+ this.dispatchEvent(new CustomEvent(LogoutRequested, {
75
+ bubbles: true, composed: true,
76
+ detail: {
77
+ redirectURL: this.redirectUrl
78
+ }
70
79
  }));
71
80
  }
72
81
  openAuthModal() {
@@ -85,6 +94,9 @@ __decorate([
85
94
  __decorate([
86
95
  property()
87
96
  ], LoginButton.prototype, "buttonLabel", void 0);
97
+ __decorate([
98
+ property()
99
+ ], LoginButton.prototype, "redirectUrl", void 0);
88
100
  __decorate([
89
101
  query('pb33f-oauth-login')
90
102
  ], LoginButton.prototype, "oauthLogin", void 0);
@@ -6,7 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { html, LitElement } from "lit";
8
8
  import { customElement, property } from "lit/decorators.js";
9
- import { AuthController } from "../../controllers/auth";
9
+ import { AuthController } from "../../controllers/auth-controller";
10
10
  import loginButtonCss from "./login-button.css";
11
11
  let LoginPanel = class LoginPanel extends LitElement {
12
12
  constructor() {
@@ -6,6 +6,7 @@ export declare class OAuthLogin extends LitElement {
6
6
  static styles: import("lit").CSSResult[];
7
7
  title: string;
8
8
  instruction: string;
9
+ redirectURL: string;
9
10
  mintravel: number;
10
11
  maxtravel: number;
11
12
  spin: number;
@@ -22,17 +22,20 @@ let OAuthLogin = class OAuthLogin extends LitElement {
22
22
  this.animateBox = false;
23
23
  }
24
24
  githubLogin() {
25
- this.mintravel = 1000;
26
- this.maxtravel = 1500;
27
- this.spin = 150;
25
+ this.mintravel = 800;
26
+ this.maxtravel = 1200;
27
+ this.spin = 170;
28
28
  this.orbs = false;
29
29
  this.githubButton.style.animation = 'spinFade 1s ease-out forwards';
30
30
  this.githubButton.disabled = true;
31
31
  this.instruction = 'hold on, accessing the grid...';
32
32
  setTimeout(() => {
33
- this.dispatchEvent(new Event(AuthenticationGithubRequested, {
33
+ this.dispatchEvent(new CustomEvent(AuthenticationGithubRequested, {
34
34
  bubbles: true,
35
35
  composed: true,
36
+ detail: {
37
+ redirectURL: this.redirectURL
38
+ }
36
39
  }));
37
40
  }, 2000);
38
41
  }
@@ -59,7 +62,7 @@ let OAuthLogin = class OAuthLogin extends LitElement {
59
62
 
60
63
  </div>
61
64
 
62
- </div>
65
+ </div>
63
66
  </pb33f-electric-box>
64
67
  </div>`;
65
68
  }
@@ -71,6 +74,9 @@ __decorate([
71
74
  __decorate([
72
75
  property()
73
76
  ], OAuthLogin.prototype, "instruction", void 0);
77
+ __decorate([
78
+ property()
79
+ ], OAuthLogin.prototype, "redirectURL", void 0);
74
80
  __decorate([
75
81
  state()
76
82
  ], OAuthLogin.prototype, "mintravel", void 0);
@@ -7,7 +7,7 @@ export default css `
7
7
  width: 100%;
8
8
  bottom: 10px;
9
9
  font-size: 0.8rem;
10
- z-index: 102;
10
+ z-index: 9;
11
11
  }
12
12
 
13
13
  .sep {
@@ -19,6 +19,7 @@ import './license.js';
19
19
  import './info.js';
20
20
  import './tag.js';
21
21
  import './document.js';
22
+ import './responses.js';
22
23
  import '../model-icon/model-icon.js';
23
24
  import { TemplateResult } from "lit";
24
25
  import './rendered-property.js';
@@ -29,6 +30,7 @@ export declare class RenderedNodeComponent extends HasExamples {
29
30
  node: Node;
30
31
  renderProblems: boolean;
31
32
  render(): TemplateResult<1>;
33
+ renderLocation(): TemplateResult;
32
34
  renderPath(): TemplateResult;
33
35
  renderLabel(objectType: string): TemplateResult;
34
36
  }
@@ -25,6 +25,7 @@ import './license.js';
25
25
  import './info.js';
26
26
  import './tag.js';
27
27
  import './document.js';
28
+ import './responses.js';
28
29
  import '../model-icon/model-icon.js';
29
30
  import { customElement, property } from "lit/decorators.js";
30
31
  import { html } from "lit";
@@ -34,6 +35,7 @@ import sharedCss from "../../css/shared.css.js";
34
35
  import { HasExamples } from "./clickable-ref";
35
36
  import modelSharedCss from "./model-shared.css";
36
37
  import { NodeType } from "../../model/node_type";
38
+ import { IconSize } from "../model-icon/model-icon";
37
39
  let RenderedNodeComponent = class RenderedNodeComponent extends HasExamples {
38
40
  render() {
39
41
  if (!this.node) {
@@ -80,6 +82,10 @@ let RenderedNodeComponent = class RenderedNodeComponent extends HasExamples {
80
82
  this.renderProblems = true;
81
83
  renderedNode = html `<pb33f-rendered-response-node .response=${this.node.instance} .changes=${this.node.timeline} name="${this.node.label}"></pb33f-rendered-response-node>`;
82
84
  break;
85
+ case NodeType.RESPONSES:
86
+ this.renderProblems = true;
87
+ renderedNode = html `<pb33f-rendered-responses-node .responses=${this.node.instance} name="${this.node.label}"></pb33f-rendered-responses-node>`;
88
+ break;
83
89
  case NodeType.OPERATION:
84
90
  this.renderProblems = true;
85
91
  renderedNode = html `<pb33f-rendered-operation-node .operation=${this.node.instance} .changes=${this.node.timeline} name="${this.node.label}"></pb33f-rendered-operation-node>`;
@@ -159,6 +165,7 @@ let RenderedNodeComponent = class RenderedNodeComponent extends HasExamples {
159
165
  <h3>${this.renderLabel(this.node.label)}</h3>
160
166
  ${this.renderPath()}
161
167
  <hr/>
168
+ ${this.renderLocation()}
162
169
  <div class="rendered-node-container">
163
170
  ${renderedNode}
164
171
  ${vacuumResults}
@@ -166,6 +173,17 @@ let RenderedNodeComponent = class RenderedNodeComponent extends HasExamples {
166
173
  </div>
167
174
  `;
168
175
  }
176
+ renderLocation() {
177
+ if (this.node.origin && this.node.origin != "/root.yaml") {
178
+ return html `
179
+ <div class="origin-location">
180
+ <pb33f-model-icon size="${IconSize.small}" icon="${NodeType.ROLODEX_FILE}"></pb33f-model-icon>
181
+ Origin: <strong>${this.node.origin}</strong>
182
+ </div>
183
+ <hr/>`;
184
+ }
185
+ return html ``;
186
+ }
169
187
  renderPath() {
170
188
  if (this.node.type === NodeType.DOCUMENT) {
171
189
  return html ``;
@@ -0,0 +1,11 @@
1
+ import './response.js';
2
+ import { ClickableRef } from "./clickable-ref.js";
3
+ import { HasRef } from "../../model/schema.js";
4
+ export declare class RenderedResponsesNodeComponent extends ClickableRef {
5
+ static styles: never[];
6
+ responses: {
7
+ [key: string]: Response | HasRef;
8
+ };
9
+ name: string;
10
+ render(): import("lit-html").TemplateResult<1>;
11
+ }
@@ -0,0 +1,46 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import './response.js';
8
+ import { customElement, property } from "lit/decorators.js";
9
+ import { html } from "lit";
10
+ import { ClickableRef } from "./clickable-ref.js";
11
+ let RenderedResponsesNodeComponent = class RenderedResponsesNodeComponent extends ClickableRef {
12
+ render() {
13
+ // let references = html``
14
+ let responses = html ``;
15
+ if (this.responses) {
16
+ responses = html `
17
+ <div id="responses">
18
+ ${Object.keys(this.responses).map(key => {
19
+ return html `
20
+ <div class="margin-bottom" style="font-size: 0.8rem">
21
+ <div style="margin-bottom: 10px; font-size: 1rem">
22
+ <pb33f-rendered-response-node .response=${this.responses[key]}
23
+ name="${key}"></pb33f-rendered-response-node>
24
+ </div>
25
+ </div>`;
26
+ })}
27
+ </div>
28
+ `;
29
+ }
30
+ return html `
31
+ ${responses}
32
+ ${super.renderChanges()}
33
+ `;
34
+ }
35
+ };
36
+ RenderedResponsesNodeComponent.styles = [];
37
+ __decorate([
38
+ property()
39
+ ], RenderedResponsesNodeComponent.prototype, "responses", void 0);
40
+ __decorate([
41
+ property()
42
+ ], RenderedResponsesNodeComponent.prototype, "name", void 0);
43
+ RenderedResponsesNodeComponent = __decorate([
44
+ customElement('pb33f-rendered-responses-node')
45
+ ], RenderedResponsesNodeComponent);
46
+ export { RenderedResponsesNodeComponent };
@@ -124,7 +124,7 @@ let ModelTree = class ModelTree extends LitElement {
124
124
  let selected = null;
125
125
  for (let i = 0; i < treeItems?.length; i++) {
126
126
  const item = treeItems[i];
127
- item.selected = item.id === `model-${nodeId}`;
127
+ item.selected = (item.id === `model-${nodeId}` || item.dataset.hashid === `${nodeId}`);
128
128
  if (item.selected) {
129
129
  selected = item;
130
130
  item.expanded = true;
@@ -15,7 +15,7 @@ import './users.js';
15
15
  import { CreateBus } from "@pb33f/ranch";
16
16
  import { Command, DoctorServiceChannel, isBrokerResponse, QueuePrefix, TopicPrefix, RodeoServiceChannel, isPlatformEvent } from "../../model/channels.js";
17
17
  import { LintingService } from "../../services/linting-service.js";
18
- import { AuthController } from "../../controllers/auth.js";
18
+ import { AuthController } from "../../controllers/auth-controller";
19
19
  import { RodeoService } from "../../services/rodeo-service.js";
20
20
  import { RodeoRoundup } from "./roundup.js";
21
21
  import { PlatformEventType } from "../../model/platform-events.js";
@@ -32,7 +32,7 @@ export default css `
32
32
 
33
33
  .problems-data {
34
34
  height: min-content;
35
- max-height: calc(100vh - 50px);
35
+ max-height: calc(100vh - 75px);
36
36
  }
37
37
 
38
38
 
@@ -9,20 +9,51 @@ import '@shoelace-style/shoelace/dist/components/badge/badge.js';
9
9
  import '@shoelace-style/shoelace/dist/components/avatar/avatar.js';
10
10
  import { LitElement } from "lit";
11
11
  import { SpecEditor } from "../editor/editor.js";
12
- import { AddToastEvent, ArchiveURLRequestedEvent, DocumentReference, EditorUpdatedEvent, ExplorerEqualizerChangedEvent, LoadRenderedNodeIntoInspectorEvent, NodeClickedEvent, NodeReferenceEvent, ProblemRuleFilterChangedEvent, RuleClickedEvent, RulesetSavedEvent } from "../../events/doctor.js";
13
- import { ProblemDrawerEvent } from "../problem-list/details-drawer.js";
12
+ import { AddToastEvent, ArchiveURLRequestedEvent, ExplorerEqualizerChangedEvent, LoadRenderedNodeIntoInspectorEvent, NukeLogout } from "../../events/doctor.js";
13
+ import { ProblemDetailsDrawer } from "../problem-list/details-drawer.js";
14
+ import { Bag, BagManager } from "@pb33f/saddlebag";
15
+ import { ProblemList } from "../problem-list/problem-list.js";
14
16
  import { Problem } from "../../model/problem.js";
17
+ import { HowToFix } from "../../model/how_to_fix.js";
18
+ import { DoctorDocumentation } from "../../model/rule_documentation.js";
19
+ import { ProblemsOverview } from "../problems-overview/problems-overview.js";
15
20
  import { SlButton, SlDialog, SlIcon, SlInput, SlRadioGroup, SlSplitPanel, SlTab, SlTabGroup } from "@shoelace-style/shoelace";
21
+ import { ErrorBanner } from "../error-banner/error-banner.js";
22
+ import { DrDiagnostics } from "../../model/document-statistics.js";
23
+ import { StatusBar } from "./status-bar.js";
16
24
  import { PlatformError } from "../../model/errors.js";
25
+ import { FeedbackComponent } from "./feedback.js";
17
26
  import { AttentionBox } from "../attention-box/attention-box.js";
27
+ import { ActivitySpinner } from "./activity-spinner.js";
28
+ import { ManageRuleset } from "../manage-ruleset/manage-ruleset.js";
29
+ import { RenderMap, RuleConfig, RuleFunctionSchema, RuleSet } from "../../model/vacuum_rule.js";
30
+ import { ToastManager } from "../toast/toast-manager.js";
18
31
  import { Toast } from "../../model/toast.js";
19
32
  import SlIconButton from "@shoelace-style/shoelace/dist/components/icon-button/icon-button.js";
20
- import { Node, Reference } from "../../model/graph.js";
33
+ import { GraphResponse, Node, Reference } from "../../model/graph.js";
21
34
  import { ModelTree } from "../model-tree/tree.js";
22
35
  import { ExplorerComponent } from "../visualizer/explorer.js";
23
36
  import { RenderedNodeComponent } from "../model-renderer/rendered-node.js";
24
- import { BusCallback, CommandResponse } from "@pb33f/ranch";
37
+ import { Bus } from "@pb33f/ranch";
38
+ import { ReferenceMap, RolodexFiles, RolodexResponse, RolodexState } from "../../model/rolodex.js";
39
+ import { UploadArchiveComponent } from "./upload-archive.js";
40
+ import { NukeWorkspaceComponent } from "./nuke-workspace.js";
41
+ import { PanelState } from "../../model/panel-state.js";
42
+ import { CreditTicker } from "../credit-ticker/credit-ticker.js";
43
+ import { AuthController } from "../../controllers/auth-controller";
44
+ import { TimeVortex } from "../time-vortex/time-vortex.js";
45
+ import { DoctorSettings } from "./settings.js";
25
46
  import { DoctorConfiguration } from "../../model/settings.js";
47
+ import { NodeClickerController } from '../../controllers/node-clicker-controller.js';
48
+ import { BrokerController } from '../../controllers/broker-controller.js';
49
+ import { RolodexController } from '../../controllers/rolodex-controller.js';
50
+ import { SpecController } from '../../controllers/spec-controller.js';
51
+ import { RuleController } from '../../controllers/rule-controller.js';
52
+ import { ProblemController } from '../../controllers/problem-controller.js';
53
+ import { DocsController } from '../../controllers/docs-controller.js';
54
+ import { ModelController } from '../../controllers/model-controller.js';
55
+ import { DiagnosticController } from '../../controllers/diagnostic-controller.js';
56
+ import { StateController } from '../../controllers/state-controller.js';
26
57
  export declare const GraphBag = "pb33f-doctor-graph";
27
58
  export declare const PanelStateBag = "pb33f-doctor-panel-state";
28
59
  export declare const RolodexResponseBag = "pb33f-doctor-rolodex-response";
@@ -63,12 +94,10 @@ export declare class TheDoctor extends LitElement {
63
94
  problemsDataDiv: HTMLDivElement;
64
95
  urlInputButton: SlButton;
65
96
  urlInput: SlInput;
66
- private unavailable;
97
+ unavailable: boolean;
67
98
  urlOverlay: HTMLElement;
68
99
  urlProblem: HTMLElement;
69
100
  urlSpinner: HTMLDivElement;
70
- urlErrorCode: number;
71
- urlErrorMessage: string;
72
101
  doctorEndpoint: string;
73
102
  exportRulesetDialog: SlDialog;
74
103
  collapseButton: SlIconButton;
@@ -77,72 +106,83 @@ export declare class TheDoctor extends LitElement {
77
106
  splitPanelExplorer: SlSplitPanel;
78
107
  splitPanelRolodex: SlSplitPanel;
79
108
  splitPanelInspector: SlSplitPanel;
80
- private randomTicker;
81
- private rulesetPulse;
109
+ rulesetPulse: boolean;
82
110
  explorerVisible: boolean;
83
111
  minimapVisible: boolean;
84
112
  minimapIconVisible: boolean;
85
113
  explorerBooted: boolean;
86
114
  activeURL: string;
87
115
  rolodexNeedsReset: boolean;
88
- private autoDiagnose;
89
- private skipTimeline;
90
- private showDiagnosisButton;
116
+ autoDiagnose: boolean;
117
+ skipTimeline: boolean;
118
+ showDiagnosisButton: boolean;
91
119
  editor: SpecEditor;
120
+ urlErrorCode: number;
121
+ urlErrorMessage: string;
92
122
  rolodexRoot: Node;
93
123
  rolodexProblemMap: Map<string, Problem[]>;
94
- private readonly uploadArchive;
95
- private readonly nukeWorkspace;
96
- private readonly errorBanner;
97
- private bagManager;
124
+ readonly uploadArchive: UploadArchiveComponent;
125
+ readonly nukeWorkspace: NukeWorkspaceComponent;
126
+ readonly errorBanner: ErrorBanner;
127
+ bagManager: BagManager;
98
128
  rulesetEditor: SpecEditor;
99
- private docBag;
100
- private problemBag;
101
- private diagnosticBag;
102
- private defaultRulesetBag;
103
- private OWASPRulesetBag;
104
- private allRulesetBag;
105
- private customRulesetBag;
106
- private functionsBag;
107
- private functionSchemaBag;
108
- private ruleConfigBag;
109
- private howToFixBag;
110
- private rolodexResponseBag;
111
- private rolodexFilesBag;
112
- private rolodexStateBag;
113
- private referenceMapBag;
114
- private panelStateBag;
115
- private settingsBag;
116
- private docExpirationBag;
117
- private graphBag;
118
- private ruleDocsBag;
119
- private functionDocsBag;
120
- private sessionRulesetMapBag;
121
- private readonly problemsOverview;
122
- private readonly problemList;
123
- private readonly detailsDrawer;
124
- private readonly creditTicker;
125
- private ruleDocsWorker;
126
- private debounceTime;
127
- private debounceTimeRuleset;
128
- private bounceId;
129
- private problems;
130
- private readonly statusBar;
131
- private readonly feedback;
132
- private readonly activitySpinner;
133
- private readonly manageRuleset;
134
- private defaultRuleset;
135
- private OWASPRuleset;
136
- private allRuleset;
137
- private customRuleset;
138
- private functions;
139
- private readonly toastManager;
140
- private readonly settingsComponent;
141
- private editorMap;
142
- private selectedEditorTab;
143
- private sidebarClosed;
144
- private importDisabled;
145
- private currentVersion;
129
+ docBag: Bag<string> | undefined;
130
+ problemBag: Bag<Problem[]> | undefined;
131
+ diagnosticBag: Bag<DrDiagnostics> | undefined;
132
+ defaultRulesetBag: Bag<RuleSet> | undefined;
133
+ OWASPRulesetBag: Bag<RuleSet> | undefined;
134
+ allRulesetBag: Bag<RuleSet> | undefined;
135
+ customRulesetBag: Bag<RuleSet> | undefined;
136
+ functionsBag: Bag<string[]> | undefined;
137
+ functionSchemaBag: Bag<Map<string, RuleFunctionSchema>> | undefined;
138
+ ruleConfigBag: Bag<RuleConfig> | undefined;
139
+ howToFixBag: Bag<HowToFix> | undefined;
140
+ rolodexResponseBag: Bag<RolodexResponse> | undefined;
141
+ rolodexFilesBag: Bag<RolodexFiles> | undefined;
142
+ rolodexStateBag: Bag<RolodexState> | undefined;
143
+ referenceMapBag: Bag<ReferenceMap> | undefined;
144
+ panelStateBag: Bag<PanelState> | undefined;
145
+ settingsBag: Bag<DoctorConfiguration> | undefined;
146
+ docExpirationBag: Bag<string> | undefined;
147
+ graphBag: Bag<GraphResponse> | undefined;
148
+ ruleDocsBag: Bag<DoctorDocumentation> | undefined;
149
+ functionDocsBag: Bag<DoctorDocumentation> | undefined;
150
+ sessionRulesetMapBag: Bag<RenderMap> | undefined;
151
+ readonly problemsOverview: ProblemsOverview;
152
+ readonly problemList: ProblemList;
153
+ readonly detailsDrawer: ProblemDetailsDrawer;
154
+ readonly creditTicker: CreditTicker;
155
+ ruleDocsWorker: any;
156
+ debounceTime: number;
157
+ debounceTimeRuleset: number;
158
+ bounceId: number;
159
+ problems: Problem[];
160
+ readonly statusBar: StatusBar;
161
+ readonly feedback: FeedbackComponent;
162
+ readonly activitySpinner: ActivitySpinner;
163
+ readonly manageRuleset: ManageRuleset;
164
+ defaultRuleset: RuleSet;
165
+ OWASPRuleset: RuleSet;
166
+ allRuleset: RuleSet;
167
+ customRuleset: RuleSet;
168
+ functions: string[];
169
+ readonly toastManager: ToastManager;
170
+ readonly settingsComponent: DoctorSettings;
171
+ readonly nodeClickerController: NodeClickerController;
172
+ readonly rolodexController: RolodexController;
173
+ readonly brokerController: BrokerController;
174
+ readonly specController: SpecController;
175
+ readonly ruleController: RuleController;
176
+ readonly problemController: ProblemController;
177
+ readonly docsController: DocsController;
178
+ readonly modelController: ModelController;
179
+ readonly diagnosticController: DiagnosticController;
180
+ readonly stateController: StateController;
181
+ editorMap: Map<string, SpecEditor>;
182
+ selectedEditorTab: string;
183
+ sidebarClosed: boolean;
184
+ importDisabled: boolean;
185
+ firstRun: boolean;
146
186
  renderedNodeMap: Map<string, Node>;
147
187
  selectedNodeHashId: string;
148
188
  modelTree: ModelTree;
@@ -155,23 +195,12 @@ export declare class TheDoctor extends LitElement {
155
195
  filteredNodes: Map<string, Node>;
156
196
  renderedNode: RenderedNodeComponent;
157
197
  activeNode: Node;
158
- private readonly bus;
159
- private readonly specStreamChannel;
160
- private readonly creditStreamChannel;
161
- private readonly doctorServiceChannel;
162
- private specChannelSubscription;
163
- private doctorChannelSubscription;
164
- private creditChannelSubscription;
165
- private brokerConnectionId;
166
- private readonly busPort;
167
- private readonly busHost;
168
- private readonly busVersion;
169
- private readonly useTLS;
198
+ readonly bus: Bus;
170
199
  readonly nodeLimit: number;
171
- private pendingLine;
172
- private rolodexDividerPosition;
173
- private authController;
174
- private timeVortex;
200
+ pendingLine: number;
201
+ rolodexDividerPosition: number;
202
+ readonly authController: AuthController;
203
+ readonly timeVortex: TimeVortex;
175
204
  rolodexRootPath: string;
176
205
  rolodexRootHash: string;
177
206
  rolodexActivePath: string | undefined;
@@ -180,61 +209,23 @@ export declare class TheDoctor extends LitElement {
180
209
  openSettings(): void;
181
210
  settingsChanged(_: string, config: DoctorConfiguration | undefined): void;
182
211
  loadRenderedNodeIntoInspector(evt: CustomEvent<LoadRenderedNodeIntoInspectorEvent>): void;
183
- tickRandomly(): void;
184
- nukeWorkspaceHandler(): void;
212
+ nukeWorkspaceHandler(e?: CustomEvent<NukeLogout>): void;
185
213
  minimapToggled(): void;
186
214
  firstUpdated(): void;
187
- whoAmI(): void;
188
- protected connectToBroker(): void;
189
215
  addClickTrack(node: Node): void;
190
216
  addRefTrack(ref: string): void;
191
- doctorServiceHandler(): BusCallback<CommandResponse>;
192
- startTheDoctor(): void;
193
- specStreamHandler(): BusCallback<CommandResponse>;
194
- creditStreamHandler(): BusCallback<CommandResponse>;
195
- private _firstRun;
196
217
  filterTreeModel(event: CustomEvent<ExplorerEqualizerChangedEvent>): void;
197
- documentReferenceClicked(evt: CustomEvent<DocumentReference>): void;
198
- explorerReferenceClicked(evt: CustomEvent<NodeReferenceEvent>): void;
199
- rolodexTreeNodeClicked(evt: CustomEvent<NodeClickedEvent>): void;
200
- rolodexRootFileSelected(evt: CustomEvent<NodeClickedEvent>): void;
201
- modelTreeNodeClicked(evt: CustomEvent<NodeClickedEvent>): void;
202
- explorerNodeClicked(evt: CustomEvent<NodeClickedEvent>, replaceRenderedNode?: boolean): void;
203
218
  exportRuleset(): void;
204
219
  addToastEvent(event: CustomEvent<AddToastEvent>): void;
205
220
  sendToast(toast: Toast): void;
206
- ruleGroupClicked(event: CustomEvent<ProblemRuleFilterChangedEvent>): void;
207
- ruleDocsClicked(event: CustomEvent<ProblemDrawerEvent>): void;
208
- rulesetSaved(evt: CustomEvent<RulesetSavedEvent>): void;
209
- private buildRolodexResultMap;
210
- private fetchRefMap;
211
- private lintSpec;
212
221
  updateInspectorDivider(): void;
213
222
  updateExplorerDivider(): void;
214
223
  updateRolodexDivider(): void;
215
- private updateRefmapBag;
216
- private platformUnavailable;
217
- private specClicked;
218
- private problemClicked;
219
- private loadState;
220
- private extractGraph;
221
- private customRulesetEnabled;
222
- private fetchSessionRulesetAsYaml;
223
- private fetchFunctions;
224
- private fetchFunctionSchema;
225
- private fetchDefaultRuleset;
226
- private fetchOWASPRuleset;
227
- private fetchAllRuleset;
228
- private fetchDocs;
229
- fetchRulesetMap(): void;
230
- ruleClicked(evt: CustomEvent<RuleClickedEvent>): void;
224
+ updateRefmapBag(currentPath: string | undefined, result: Reference[]): void;
225
+ platformUnavailable(error: PlatformError | null): void;
231
226
  builtInRulesetSelected(): void;
232
- rulesetManuallyChanged(): void;
233
- specChanged(event: CustomEvent<EditorUpdatedEvent>): void;
234
227
  runDiagnostics(): void;
235
228
  boostrap(): void;
236
- exportJSON(): void;
237
- exportYAML(): void;
238
229
  confirmExport(): void;
239
230
  closeWelcome(): void;
240
231
  selectEditorTab(event: CustomEvent): void;
@@ -248,6 +239,7 @@ export declare class TheDoctor extends LitElement {
248
239
  showMinimapIcon(): void;
249
240
  closeExplorer(): void;
250
241
  render(): import("lit-html").TemplateResult<1>;
242
+ randomTicker(): string;
251
243
  fetchUrl(event: CustomEvent<ArchiveURLRequestedEvent>): void;
252
244
  hideUrlError(): void;
253
245
  showUrlError(e: PlatformError): void;