@memberjunction/core-actions 6.2.0-edge.0 → 6.2.0-edge.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config.d.ts +6 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +16 -4
- package/dist/config.js.map +1 -1
- package/dist/custom/ai/base-find-actions.action.js +6 -6
- package/dist/custom/ai/base-find-agents.action.js +6 -6
- package/dist/custom/ai/find-candidate-agents.action.js +2 -2
- package/dist/custom/ai/semantic-entity-search.helper.d.ts +6 -0
- package/dist/custom/ai/semantic-entity-search.helper.d.ts.map +1 -1
- package/dist/custom/ai/semantic-entity-search.helper.js +16 -4
- package/dist/custom/ai/semantic-entity-search.helper.js.map +1 -1
- package/dist/custom/data/search-query-catalog.action.js +2 -2
- package/dist/custom/integration/api-rate-limiter.action.d.ts +4 -0
- package/dist/custom/integration/api-rate-limiter.action.d.ts.map +1 -1
- package/dist/custom/integration/api-rate-limiter.action.js +10 -2
- package/dist/custom/integration/api-rate-limiter.action.js.map +1 -1
- package/dist/custom/integration/gamma-generate-presentation.action.js +2 -2
- package/dist/custom/integration/integration-action-executor.d.ts +22 -22
- package/dist/custom/integration/integration-action-executor.js +83 -83
- package/dist/custom/interactive-forms/_shared.d.ts +69 -0
- package/dist/custom/interactive-forms/_shared.d.ts.map +1 -1
- package/dist/custom/interactive-forms/_shared.js +118 -38
- package/dist/custom/interactive-forms/_shared.js.map +1 -1
- package/dist/custom/interactive-forms/activate-interactive-form-version.action.js +25 -25
- package/dist/custom/interactive-forms/create-interactive-form.action.js +22 -22
- package/dist/custom/interactive-forms/modify-interactive-form.action.js +35 -35
- package/dist/custom/interactive-forms/revert-interactive-form.action.js +32 -32
- package/dist/custom/lists/_action-helpers.d.ts +10 -0
- package/dist/custom/lists/_action-helpers.d.ts.map +1 -1
- package/dist/custom/lists/_action-helpers.js +26 -6
- package/dist/custom/lists/_action-helpers.js.map +1 -1
- package/dist/custom/lists/add-view-results-to-list.action.js +8 -8
- package/dist/custom/lists/bulk-update-list-item-status.action.js +8 -8
- package/dist/custom/lists/compose-lists.action.js +14 -14
- package/dist/custom/lists/invite-to-list.action.js +10 -10
- package/dist/custom/lists/materialize-list-from-view.action.js +13 -13
- package/dist/custom/lists/move-list-members.action.js +12 -12
- package/dist/custom/lists/refresh-list-from-source.action.js +8 -8
- package/dist/custom/lists/resolve-audience.action.js +7 -7
- package/dist/custom/lists/revoke-list-invitation.action.js +3 -3
- package/dist/custom/lists/share-list.action.js +8 -8
- package/dist/custom/lists/unshare-list.action.js +3 -3
- package/dist/custom/utilities/address-services.action.js +2 -2
- package/dist/custom/utilities/artifact-builder-service.d.ts +16 -16
- package/dist/custom/utilities/artifact-builder-service.js +39 -39
- package/dist/custom/utilities/artifact-builder-service.js.map +1 -1
- package/dist/custom/utilities/docx-renderer.d.ts +17 -11
- package/dist/custom/utilities/docx-renderer.d.ts.map +1 -1
- package/dist/custom/utilities/docx-renderer.js +60 -48
- package/dist/custom/utilities/docx-renderer.js.map +1 -1
- package/dist/custom/utilities/json-param-helper.d.ts +6 -0
- package/dist/custom/utilities/json-param-helper.d.ts.map +1 -1
- package/dist/custom/utilities/json-param-helper.js +16 -4
- package/dist/custom/utilities/json-param-helper.js.map +1 -1
- package/dist/custom/utilities/pdf-renderer.d.ts +13 -7
- package/dist/custom/utilities/pdf-renderer.d.ts.map +1 -1
- package/dist/custom/utilities/pdf-renderer.js +27 -15
- package/dist/custom/utilities/pdf-renderer.js.map +1 -1
- package/dist/custom/utilities/xlsx-renderer.d.ts +19 -11
- package/dist/custom/utilities/xlsx-renderer.d.ts.map +1 -1
- package/dist/custom/utilities/xlsx-renderer.js +55 -39
- package/dist/custom/utilities/xlsx-renderer.js.map +1 -1
- package/dist/custom/visualization/create-svg-chart.action.js +23 -23
- package/dist/custom/visualization/create-svg-diagram.action.js +10 -10
- package/dist/custom/visualization/create-svg-infographic.action.js +4 -4
- package/dist/custom/visualization/create-svg-network.action.js +12 -12
- package/dist/custom/visualization/create-svg-sketch-diagram.action.js +10 -10
- package/dist/custom/visualization/create-svg-word-cloud.action.js +11 -11
- package/dist/custom/visualization/shared/svg-theming.d.ts +17 -0
- package/dist/custom/visualization/shared/svg-theming.d.ts.map +1 -1
- package/dist/custom/visualization/shared/svg-theming.js +34 -10
- package/dist/custom/visualization/shared/svg-theming.js.map +1 -1
- package/dist/custom/visualization/shared/svg-utils.d.ts +39 -0
- package/dist/custom/visualization/shared/svg-utils.d.ts.map +1 -1
- package/dist/custom/visualization/shared/svg-utils.js +81 -17
- package/dist/custom/visualization/shared/svg-utils.js.map +1 -1
- package/dist/custom/web/duckduckgo-rate-limiter.d.ts +17 -1
- package/dist/custom/web/duckduckgo-rate-limiter.d.ts.map +1 -1
- package/dist/custom/web/duckduckgo-rate-limiter.js +26 -6
- package/dist/custom/web/duckduckgo-rate-limiter.js.map +1 -1
- package/dist/custom/web/google-custom-search.action.js +2 -2
- package/dist/custom/web/rss-feed-parsing.d.ts +19 -0
- package/dist/custom/web/rss-feed-parsing.d.ts.map +1 -1
- package/dist/custom/web/rss-feed-parsing.js +45 -13
- package/dist/custom/web/rss-feed-parsing.js.map +1 -1
- package/dist/custom/web/rss-feed-read.action.js +5 -5
- package/dist/custom/web/tavily-search.action.js +2 -2
- package/package.json +40 -40
|
@@ -18,6 +18,8 @@ export declare class SVGUtils {
|
|
|
18
18
|
* @param idPrefix - Optional ID prefix for the root SVG element
|
|
19
19
|
* @returns JSDOM Document containing the SVG
|
|
20
20
|
*/
|
|
21
|
+
static CreateSVG(width: number, height: number, idPrefix?: string): Document;
|
|
22
|
+
/** @deprecated Use {@link CreateSVG}. */
|
|
21
23
|
static createSVG(width: number, height: number, idPrefix?: string): Document;
|
|
22
24
|
/**
|
|
23
25
|
* Sanitizes text content to prevent XSS attacks
|
|
@@ -25,6 +27,8 @@ export declare class SVGUtils {
|
|
|
25
27
|
* @param text - Raw text content
|
|
26
28
|
* @returns HTML-safe text
|
|
27
29
|
*/
|
|
30
|
+
static SanitizeText(text: string): string;
|
|
31
|
+
/** @deprecated Use {@link SanitizeText}. */
|
|
28
32
|
static sanitizeText(text: string): string;
|
|
29
33
|
/**
|
|
30
34
|
* Sanitizes SVG string to remove potentially malicious content
|
|
@@ -36,6 +40,8 @@ export declare class SVGUtils {
|
|
|
36
40
|
* @param svgString - Raw SVG XML string
|
|
37
41
|
* @returns Sanitized SVG string
|
|
38
42
|
*/
|
|
43
|
+
static SanitizeSVG(svgString: string): string;
|
|
44
|
+
/** @deprecated Use {@link SanitizeSVG}. */
|
|
39
45
|
static sanitizeSVG(svgString: string): string;
|
|
40
46
|
/**
|
|
41
47
|
* Generates a unique ID with prefix and timestamp
|
|
@@ -44,6 +50,8 @@ export declare class SVGUtils {
|
|
|
44
50
|
* @param index - Index or identifier
|
|
45
51
|
* @returns Unique ID string
|
|
46
52
|
*/
|
|
53
|
+
static GenerateId(prefix: string, index: number | string): string;
|
|
54
|
+
/** @deprecated Use {@link GenerateId}. */
|
|
47
55
|
static generateId(prefix: string, index: number | string): string;
|
|
48
56
|
/**
|
|
49
57
|
* Adds accessibility elements to SVG root
|
|
@@ -51,6 +59,8 @@ export declare class SVGUtils {
|
|
|
51
59
|
* @param svg - SVG element to enhance
|
|
52
60
|
* @param a11y - Accessibility configuration
|
|
53
61
|
*/
|
|
62
|
+
static AddA11y(svg: SVGElement, a11y: Accessibility): void;
|
|
63
|
+
/** @deprecated Use {@link AddA11y}. */
|
|
54
64
|
static addA11y(svg: SVGElement, a11y: Accessibility): void;
|
|
55
65
|
/**
|
|
56
66
|
* Injects inline CSS styles into SVG
|
|
@@ -58,6 +68,8 @@ export declare class SVGUtils {
|
|
|
58
68
|
* @param svg - SVG element
|
|
59
69
|
* @param css - CSS string to inject
|
|
60
70
|
*/
|
|
71
|
+
static AddStyles(svg: SVGElement, css: string): void;
|
|
72
|
+
/** @deprecated Use {@link AddStyles}. */
|
|
61
73
|
static addStyles(svg: SVGElement, css: string): void;
|
|
62
74
|
/**
|
|
63
75
|
* Calculates viewBox with padding applied
|
|
@@ -65,6 +77,15 @@ export declare class SVGUtils {
|
|
|
65
77
|
* @param viewBox - ViewBox configuration
|
|
66
78
|
* @returns Padding-adjusted dimensions and offsets
|
|
67
79
|
*/
|
|
80
|
+
static CalculateViewBox(viewBox: ViewBox): {
|
|
81
|
+
x: number;
|
|
82
|
+
y: number;
|
|
83
|
+
width: number;
|
|
84
|
+
height: number;
|
|
85
|
+
contentWidth: number;
|
|
86
|
+
contentHeight: number;
|
|
87
|
+
};
|
|
88
|
+
/** @deprecated Use {@link CalculateViewBox}. */
|
|
68
89
|
static calculateViewBox(viewBox: ViewBox): {
|
|
69
90
|
x: number;
|
|
70
91
|
y: number;
|
|
@@ -79,6 +100,8 @@ export declare class SVGUtils {
|
|
|
79
100
|
* @param svg - SVG element
|
|
80
101
|
* @returns The defs element (existing or newly created)
|
|
81
102
|
*/
|
|
103
|
+
static GetOrCreateDefs(svg: SVGElement): SVGDefsElement;
|
|
104
|
+
/** @deprecated Use {@link GetOrCreateDefs}. */
|
|
82
105
|
static getOrCreateDefs(svg: SVGElement): SVGDefsElement;
|
|
83
106
|
/**
|
|
84
107
|
* Adds an arrowhead marker definition to SVG
|
|
@@ -88,6 +111,8 @@ export declare class SVGUtils {
|
|
|
88
111
|
* @param color - Arrow color
|
|
89
112
|
* @returns Marker ID for use in marker-end attribute
|
|
90
113
|
*/
|
|
114
|
+
static AddArrowMarker(svg: SVGElement, id: string, color?: string): string;
|
|
115
|
+
/** @deprecated Use {@link AddArrowMarker}. */
|
|
91
116
|
static addArrowMarker(svg: SVGElement, id: string, color?: string): string;
|
|
92
117
|
/**
|
|
93
118
|
* Creates a seeded pseudo-random number generator
|
|
@@ -96,6 +121,8 @@ export declare class SVGUtils {
|
|
|
96
121
|
* @param seed - Random seed
|
|
97
122
|
* @returns Function that returns random numbers between 0 and 1
|
|
98
123
|
*/
|
|
124
|
+
static SeededRandom(seed: number): () => number;
|
|
125
|
+
/** @deprecated Use {@link SeededRandom}. */
|
|
99
126
|
static seededRandom(seed: number): () => number;
|
|
100
127
|
/**
|
|
101
128
|
* Wraps text to fit within a specified width
|
|
@@ -104,6 +131,8 @@ export declare class SVGUtils {
|
|
|
104
131
|
* @param maxWidth - Maximum width in characters (approximate)
|
|
105
132
|
* @returns Array of text lines
|
|
106
133
|
*/
|
|
134
|
+
static WrapText(text: string, maxWidth: number): string[];
|
|
135
|
+
/** @deprecated Use {@link WrapText}. */
|
|
107
136
|
static wrapText(text: string, maxWidth: number): string[];
|
|
108
137
|
/**
|
|
109
138
|
* Calculates text width (approximate based on character count and font size)
|
|
@@ -113,6 +142,8 @@ export declare class SVGUtils {
|
|
|
113
142
|
* @param fontSize - Font size in pixels
|
|
114
143
|
* @returns Estimated width in pixels
|
|
115
144
|
*/
|
|
145
|
+
static EstimateTextWidth(text: string, fontSize?: number): number;
|
|
146
|
+
/** @deprecated Use {@link EstimateTextWidth}. */
|
|
116
147
|
static estimateTextWidth(text: string, fontSize?: number): number;
|
|
117
148
|
/**
|
|
118
149
|
* Creates a rounded rectangle path
|
|
@@ -124,6 +155,8 @@ export declare class SVGUtils {
|
|
|
124
155
|
* @param radius - Corner radius
|
|
125
156
|
* @returns SVG path data string
|
|
126
157
|
*/
|
|
158
|
+
static RoundedRectPath(x: number, y: number, width: number, height: number, radius: number): string;
|
|
159
|
+
/** @deprecated Use {@link RoundedRectPath}. */
|
|
127
160
|
static roundedRectPath(x: number, y: number, width: number, height: number, radius: number): string;
|
|
128
161
|
/**
|
|
129
162
|
* Wraps SVG string in a scrollable HTML container
|
|
@@ -136,6 +169,8 @@ export declare class SVGUtils {
|
|
|
136
169
|
* @param borderColor - Border color (default: #ddd)
|
|
137
170
|
* @returns HTML string with SVG wrapped in scrollable div
|
|
138
171
|
*/
|
|
172
|
+
static WrapWithScrollContainer(svgString: string, maxWidth?: number, maxHeight?: number, showBorder?: boolean, borderColor?: string): string;
|
|
173
|
+
/** @deprecated Use {@link WrapWithScrollContainer}. */
|
|
139
174
|
static wrapWithScrollContainer(svgString: string, maxWidth?: number, maxHeight?: number, showBorder?: boolean, borderColor?: string): string;
|
|
140
175
|
/**
|
|
141
176
|
* Generates self-contained pan/zoom script for SVG
|
|
@@ -147,6 +182,8 @@ export declare class SVGUtils {
|
|
|
147
182
|
* @param showControls - Show zoom in/out/reset buttons (default: false)
|
|
148
183
|
* @returns Script tag with pan/zoom implementation
|
|
149
184
|
*/
|
|
185
|
+
static GeneratePanZoomScript(containerId?: string, minScale?: number, maxScale?: number, showControls?: boolean): string;
|
|
186
|
+
/** @deprecated Use {@link GeneratePanZoomScript}. */
|
|
150
187
|
static generatePanZoomScript(containerId?: string, minScale?: number, maxScale?: number, showControls?: boolean): string;
|
|
151
188
|
/**
|
|
152
189
|
* Generates zoom control buttons script
|
|
@@ -161,6 +198,8 @@ export declare class SVGUtils {
|
|
|
161
198
|
* @param doc - Document to create elements in
|
|
162
199
|
* @returns Script tag with tooltip implementation
|
|
163
200
|
*/
|
|
201
|
+
static AddTooltipSupport(svg: SVGElement, doc: Document): void;
|
|
202
|
+
/** @deprecated Use {@link AddTooltipSupport}. */
|
|
164
203
|
static addTooltipSupport(svg: SVGElement, doc: Document): void;
|
|
165
204
|
}
|
|
166
205
|
//# sourceMappingURL=svg-utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svg-utils.d.ts","sourceRoot":"","sources":["../../../../src/custom/visualization/shared/svg-utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,OAAO,EAAE,aAAa,EAAW,MAAM,aAAa,CAAC;AAE9D;;GAEG;AACH,qBAAa,QAAQ;IACjB;;;;;;;OAOG;IACH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ;IAU5E;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IASzC;;;;;;;;;OASG;IACH,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAmB7C;;;;;;OAMG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM;IAIjE;;;;;OAKG;IACH,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI;IAgC1D;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAmBpD;;;;;OAKG;IACH,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG;QACvC,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;KACzB;IA2BD;;;;;OAKG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,UAAU,GAAG,cAAc;IASvD;;;;;;;OAOG;IACH,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,MAAe,GAAG,MAAM;IA6BlF;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,MAAM;IAQ/C;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE;IAmBzD;;;;;;;OAOG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAW,GAAG,MAAM;IAKrE;;;;;;;;;OASG;IACH,MAAM,CAAC,eAAe,CAClB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACf,MAAM;IAgBT;;;;;;;;;;OAUG;IACH,MAAM,CAAC,uBAAuB,CAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,MAAa,EACvB,SAAS,GAAE,MAAY,EACvB,UAAU,GAAE,OAAc,EAC1B,WAAW,GAAE,MAAe,GAC7B,MAAM;IAKT;;;;;;;;;OASG;IACH,MAAM,CAAC,qBAAqB,CACxB,WAAW,GAAE,MAA6B,EAC1C,QAAQ,GAAE,MAAY,EACtB,QAAQ,GAAE,MAAU,EACpB,YAAY,GAAE,OAAe,GAC9B,MAAM;IAmGT;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;IA4DzC;;;;;;;OAOG;IACH,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"svg-utils.d.ts","sourceRoot":"","sources":["../../../../src/custom/visualization/shared/svg-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ export class SVGUtils {
|
|
|
18
18
|
* @param idPrefix - Optional ID prefix for the root SVG element
|
|
19
19
|
* @returns JSDOM Document containing the SVG
|
|
20
20
|
*/
|
|
21
|
-
static
|
|
21
|
+
static CreateSVG(width, height, idPrefix) {
|
|
22
22
|
const svgId = idPrefix ? ` id="${idPrefix}-root"` : '';
|
|
23
23
|
const dom = new JSDOM(`<svg xmlns="http://www.w3.org/2000/svg"
|
|
24
24
|
width="${width}"
|
|
@@ -27,13 +27,17 @@ export class SVGUtils {
|
|
|
27
27
|
></svg>`);
|
|
28
28
|
return dom.window.document;
|
|
29
29
|
}
|
|
30
|
+
/** @deprecated Use {@link CreateSVG}. */
|
|
31
|
+
static createSVG(width, height, idPrefix) {
|
|
32
|
+
return this.CreateSVG(width, height, idPrefix);
|
|
33
|
+
}
|
|
30
34
|
/**
|
|
31
35
|
* Sanitizes text content to prevent XSS attacks
|
|
32
36
|
*
|
|
33
37
|
* @param text - Raw text content
|
|
34
38
|
* @returns HTML-safe text
|
|
35
39
|
*/
|
|
36
|
-
static
|
|
40
|
+
static SanitizeText(text) {
|
|
37
41
|
return text
|
|
38
42
|
.replace(/&/g, '&')
|
|
39
43
|
.replace(/</g, '<')
|
|
@@ -41,6 +45,10 @@ export class SVGUtils {
|
|
|
41
45
|
.replace(/"/g, '"')
|
|
42
46
|
.replace(/'/g, ''');
|
|
43
47
|
}
|
|
48
|
+
/** @deprecated Use {@link SanitizeText}. */
|
|
49
|
+
static sanitizeText(text) {
|
|
50
|
+
return this.SanitizeText(text);
|
|
51
|
+
}
|
|
44
52
|
/**
|
|
45
53
|
* Sanitizes SVG string to remove potentially malicious content
|
|
46
54
|
* - Removes event handlers (on*)
|
|
@@ -51,7 +59,7 @@ export class SVGUtils {
|
|
|
51
59
|
* @param svgString - Raw SVG XML string
|
|
52
60
|
* @returns Sanitized SVG string
|
|
53
61
|
*/
|
|
54
|
-
static
|
|
62
|
+
static SanitizeSVG(svgString) {
|
|
55
63
|
let sanitized = svgString;
|
|
56
64
|
// Remove event handlers
|
|
57
65
|
sanitized = sanitized.replace(/\son\w+="[^"]*"/gi, '');
|
|
@@ -64,6 +72,10 @@ export class SVGUtils {
|
|
|
64
72
|
sanitized = sanitized.replace(/<script[\s\S]*?<\/script>/gi, '');
|
|
65
73
|
return sanitized;
|
|
66
74
|
}
|
|
75
|
+
/** @deprecated Use {@link SanitizeSVG}. */
|
|
76
|
+
static sanitizeSVG(svgString) {
|
|
77
|
+
return this.SanitizeSVG(svgString);
|
|
78
|
+
}
|
|
67
79
|
/**
|
|
68
80
|
* Generates a unique ID with prefix and timestamp
|
|
69
81
|
*
|
|
@@ -71,16 +83,20 @@ export class SVGUtils {
|
|
|
71
83
|
* @param index - Index or identifier
|
|
72
84
|
* @returns Unique ID string
|
|
73
85
|
*/
|
|
74
|
-
static
|
|
86
|
+
static GenerateId(prefix, index) {
|
|
75
87
|
return `${prefix}-${index}-${Date.now()}`;
|
|
76
88
|
}
|
|
89
|
+
/** @deprecated Use {@link GenerateId}. */
|
|
90
|
+
static generateId(prefix, index) {
|
|
91
|
+
return this.GenerateId(prefix, index);
|
|
92
|
+
}
|
|
77
93
|
/**
|
|
78
94
|
* Adds accessibility elements to SVG root
|
|
79
95
|
*
|
|
80
96
|
* @param svg - SVG element to enhance
|
|
81
97
|
* @param a11y - Accessibility configuration
|
|
82
98
|
*/
|
|
83
|
-
static
|
|
99
|
+
static AddA11y(svg, a11y) {
|
|
84
100
|
if (!a11y)
|
|
85
101
|
return;
|
|
86
102
|
const doc = svg.ownerDocument;
|
|
@@ -109,13 +125,17 @@ export class SVGUtils {
|
|
|
109
125
|
svg.setAttribute('role', a11y.ariaRole);
|
|
110
126
|
}
|
|
111
127
|
}
|
|
128
|
+
/** @deprecated Use {@link AddA11y}. */
|
|
129
|
+
static addA11y(svg, a11y) {
|
|
130
|
+
return this.AddA11y(svg, a11y);
|
|
131
|
+
}
|
|
112
132
|
/**
|
|
113
133
|
* Injects inline CSS styles into SVG
|
|
114
134
|
*
|
|
115
135
|
* @param svg - SVG element
|
|
116
136
|
* @param css - CSS string to inject
|
|
117
137
|
*/
|
|
118
|
-
static
|
|
138
|
+
static AddStyles(svg, css) {
|
|
119
139
|
const doc = svg.ownerDocument;
|
|
120
140
|
const ns = svg.namespaceURI;
|
|
121
141
|
const style = doc.createElementNS(ns, 'style');
|
|
@@ -129,13 +149,17 @@ export class SVGUtils {
|
|
|
129
149
|
svg.insertBefore(style, svg.firstChild);
|
|
130
150
|
}
|
|
131
151
|
}
|
|
152
|
+
/** @deprecated Use {@link AddStyles}. */
|
|
153
|
+
static addStyles(svg, css) {
|
|
154
|
+
return this.AddStyles(svg, css);
|
|
155
|
+
}
|
|
132
156
|
/**
|
|
133
157
|
* Calculates viewBox with padding applied
|
|
134
158
|
*
|
|
135
159
|
* @param viewBox - ViewBox configuration
|
|
136
160
|
* @returns Padding-adjusted dimensions and offsets
|
|
137
161
|
*/
|
|
138
|
-
static
|
|
162
|
+
static CalculateViewBox(viewBox) {
|
|
139
163
|
let top = 0, right = 0, bottom = 0, left = 0;
|
|
140
164
|
if (viewBox.padding !== undefined) {
|
|
141
165
|
if (typeof viewBox.padding === 'number') {
|
|
@@ -157,13 +181,17 @@ export class SVGUtils {
|
|
|
157
181
|
contentHeight: viewBox.height - top - bottom,
|
|
158
182
|
};
|
|
159
183
|
}
|
|
184
|
+
/** @deprecated Use {@link CalculateViewBox}. */
|
|
185
|
+
static calculateViewBox(viewBox) {
|
|
186
|
+
return this.CalculateViewBox(viewBox);
|
|
187
|
+
}
|
|
160
188
|
/**
|
|
161
189
|
* Creates a <defs> element if it doesn't exist in SVG
|
|
162
190
|
*
|
|
163
191
|
* @param svg - SVG element
|
|
164
192
|
* @returns The defs element (existing or newly created)
|
|
165
193
|
*/
|
|
166
|
-
static
|
|
194
|
+
static GetOrCreateDefs(svg) {
|
|
167
195
|
let defs = svg.querySelector('defs');
|
|
168
196
|
if (!defs) {
|
|
169
197
|
defs = svg.ownerDocument.createElementNS(svg.namespaceURI, 'defs');
|
|
@@ -171,6 +199,10 @@ export class SVGUtils {
|
|
|
171
199
|
}
|
|
172
200
|
return defs;
|
|
173
201
|
}
|
|
202
|
+
/** @deprecated Use {@link GetOrCreateDefs}. */
|
|
203
|
+
static getOrCreateDefs(svg) {
|
|
204
|
+
return this.GetOrCreateDefs(svg);
|
|
205
|
+
}
|
|
174
206
|
/**
|
|
175
207
|
* Adds an arrowhead marker definition to SVG
|
|
176
208
|
*
|
|
@@ -179,8 +211,8 @@ export class SVGUtils {
|
|
|
179
211
|
* @param color - Arrow color
|
|
180
212
|
* @returns Marker ID for use in marker-end attribute
|
|
181
213
|
*/
|
|
182
|
-
static
|
|
183
|
-
const defs = this.
|
|
214
|
+
static AddArrowMarker(svg, id, color = '#000') {
|
|
215
|
+
const defs = this.GetOrCreateDefs(svg);
|
|
184
216
|
const doc = svg.ownerDocument;
|
|
185
217
|
const ns = svg.namespaceURI;
|
|
186
218
|
// Check if marker already exists
|
|
@@ -202,6 +234,10 @@ export class SVGUtils {
|
|
|
202
234
|
defs.appendChild(marker);
|
|
203
235
|
return `url(#${id})`;
|
|
204
236
|
}
|
|
237
|
+
/** @deprecated Use {@link AddArrowMarker}. */
|
|
238
|
+
static addArrowMarker(svg, id, color = '#000') {
|
|
239
|
+
return this.AddArrowMarker(svg, id, color);
|
|
240
|
+
}
|
|
205
241
|
/**
|
|
206
242
|
* Creates a seeded pseudo-random number generator
|
|
207
243
|
* Uses simple Linear Congruential Generator for deterministic output
|
|
@@ -209,13 +245,17 @@ export class SVGUtils {
|
|
|
209
245
|
* @param seed - Random seed
|
|
210
246
|
* @returns Function that returns random numbers between 0 and 1
|
|
211
247
|
*/
|
|
212
|
-
static
|
|
248
|
+
static SeededRandom(seed) {
|
|
213
249
|
let s = seed;
|
|
214
250
|
return function () {
|
|
215
251
|
s = (s * 9301 + 49297) % 233280;
|
|
216
252
|
return s / 233280;
|
|
217
253
|
};
|
|
218
254
|
}
|
|
255
|
+
/** @deprecated Use {@link SeededRandom}. */
|
|
256
|
+
static seededRandom(seed) {
|
|
257
|
+
return this.SeededRandom(seed);
|
|
258
|
+
}
|
|
219
259
|
/**
|
|
220
260
|
* Wraps text to fit within a specified width
|
|
221
261
|
*
|
|
@@ -223,7 +263,7 @@ export class SVGUtils {
|
|
|
223
263
|
* @param maxWidth - Maximum width in characters (approximate)
|
|
224
264
|
* @returns Array of text lines
|
|
225
265
|
*/
|
|
226
|
-
static
|
|
266
|
+
static WrapText(text, maxWidth) {
|
|
227
267
|
const words = text.split(/\s+/);
|
|
228
268
|
const lines = [];
|
|
229
269
|
let currentLine = '';
|
|
@@ -242,6 +282,10 @@ export class SVGUtils {
|
|
|
242
282
|
lines.push(currentLine);
|
|
243
283
|
return lines;
|
|
244
284
|
}
|
|
285
|
+
/** @deprecated Use {@link WrapText}. */
|
|
286
|
+
static wrapText(text, maxWidth) {
|
|
287
|
+
return this.WrapText(text, maxWidth);
|
|
288
|
+
}
|
|
245
289
|
/**
|
|
246
290
|
* Calculates text width (approximate based on character count and font size)
|
|
247
291
|
* More accurate measurement would require actual rendering
|
|
@@ -250,10 +294,14 @@ export class SVGUtils {
|
|
|
250
294
|
* @param fontSize - Font size in pixels
|
|
251
295
|
* @returns Estimated width in pixels
|
|
252
296
|
*/
|
|
253
|
-
static
|
|
297
|
+
static EstimateTextWidth(text, fontSize = 14) {
|
|
254
298
|
// Average character width is approximately 0.6 of font size
|
|
255
299
|
return text.length * fontSize * 0.6;
|
|
256
300
|
}
|
|
301
|
+
/** @deprecated Use {@link EstimateTextWidth}. */
|
|
302
|
+
static estimateTextWidth(text, fontSize = 14) {
|
|
303
|
+
return this.EstimateTextWidth(text, fontSize);
|
|
304
|
+
}
|
|
257
305
|
/**
|
|
258
306
|
* Creates a rounded rectangle path
|
|
259
307
|
*
|
|
@@ -264,7 +312,7 @@ export class SVGUtils {
|
|
|
264
312
|
* @param radius - Corner radius
|
|
265
313
|
* @returns SVG path data string
|
|
266
314
|
*/
|
|
267
|
-
static
|
|
315
|
+
static RoundedRectPath(x, y, width, height, radius) {
|
|
268
316
|
radius = Math.min(radius, width / 2, height / 2);
|
|
269
317
|
return `
|
|
270
318
|
M ${x + radius},${y}
|
|
@@ -279,6 +327,10 @@ export class SVGUtils {
|
|
|
279
327
|
Z
|
|
280
328
|
`.replace(/\s+/g, ' ').trim();
|
|
281
329
|
}
|
|
330
|
+
/** @deprecated Use {@link RoundedRectPath}. */
|
|
331
|
+
static roundedRectPath(x, y, width, height, radius) {
|
|
332
|
+
return this.RoundedRectPath(x, y, width, height, radius);
|
|
333
|
+
}
|
|
282
334
|
/**
|
|
283
335
|
* Wraps SVG string in a scrollable HTML container
|
|
284
336
|
* Useful for large visualizations that exceed viewport size
|
|
@@ -290,10 +342,14 @@ export class SVGUtils {
|
|
|
290
342
|
* @param borderColor - Border color (default: #ddd)
|
|
291
343
|
* @returns HTML string with SVG wrapped in scrollable div
|
|
292
344
|
*/
|
|
293
|
-
static
|
|
345
|
+
static WrapWithScrollContainer(svgString, maxWidth = 1200, maxHeight = 800, showBorder = true, borderColor = '#ddd') {
|
|
294
346
|
const borderStyle = showBorder ? `border: 1px solid ${borderColor};` : '';
|
|
295
347
|
return `<div style="max-width: ${maxWidth}px; max-height: ${maxHeight}px; overflow: auto; ${borderStyle} border-radius: 4px; background: white; box-shadow: 0 2px 4px rgba(0,0,0,0.1);">${svgString}</div>`;
|
|
296
348
|
}
|
|
349
|
+
/** @deprecated Use {@link WrapWithScrollContainer}. */
|
|
350
|
+
static wrapWithScrollContainer(svgString, maxWidth = 1200, maxHeight = 800, showBorder = true, borderColor = '#ddd') {
|
|
351
|
+
return this.WrapWithScrollContainer(svgString, maxWidth, maxHeight, showBorder, borderColor);
|
|
352
|
+
}
|
|
297
353
|
/**
|
|
298
354
|
* Generates self-contained pan/zoom script for SVG
|
|
299
355
|
* No external dependencies - fully embedded JavaScript
|
|
@@ -304,7 +360,7 @@ export class SVGUtils {
|
|
|
304
360
|
* @param showControls - Show zoom in/out/reset buttons (default: false)
|
|
305
361
|
* @returns Script tag with pan/zoom implementation
|
|
306
362
|
*/
|
|
307
|
-
static
|
|
363
|
+
static GeneratePanZoomScript(containerId = 'pan-zoom-container', minScale = 0.5, maxScale = 3, showControls = false) {
|
|
308
364
|
return `<script type="text/javascript"><![CDATA[
|
|
309
365
|
(function() {
|
|
310
366
|
const svg = document.currentScript.closest('svg');
|
|
@@ -402,6 +458,10 @@ export class SVGUtils {
|
|
|
402
458
|
})();
|
|
403
459
|
]]></script>`;
|
|
404
460
|
}
|
|
461
|
+
/** @deprecated Use {@link GeneratePanZoomScript}. */
|
|
462
|
+
static generatePanZoomScript(containerId = 'pan-zoom-container', minScale = 0.5, maxScale = 3, showControls = false) {
|
|
463
|
+
return this.GeneratePanZoomScript(containerId, minScale, maxScale, showControls);
|
|
464
|
+
}
|
|
405
465
|
/**
|
|
406
466
|
* Generates zoom control buttons script
|
|
407
467
|
* @returns Script code for zoom controls (internal use)
|
|
@@ -473,7 +533,7 @@ export class SVGUtils {
|
|
|
473
533
|
* @param doc - Document to create elements in
|
|
474
534
|
* @returns Script tag with tooltip implementation
|
|
475
535
|
*/
|
|
476
|
-
static
|
|
536
|
+
static AddTooltipSupport(svg, doc) {
|
|
477
537
|
const ns = svg.namespaceURI;
|
|
478
538
|
// Create tooltip text element
|
|
479
539
|
const tooltip = doc.createElementNS(ns, 'text');
|
|
@@ -547,5 +607,9 @@ export class SVGUtils {
|
|
|
547
607
|
`;
|
|
548
608
|
svg.appendChild(script);
|
|
549
609
|
}
|
|
610
|
+
/** @deprecated Use {@link AddTooltipSupport}. */
|
|
611
|
+
static addTooltipSupport(svg, doc) {
|
|
612
|
+
return this.AddTooltipSupport(svg, doc);
|
|
613
|
+
}
|
|
550
614
|
}
|
|
551
615
|
//# sourceMappingURL=svg-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svg-utils.js","sourceRoot":"","sources":["../../../../src/custom/visualization/shared/svg-utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"svg-utils.js","sourceRoot":"","sources":["../../../../src/custom/visualization/shared/svg-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ export interface RateLimitConfig {
|
|
|
8
8
|
export interface SearchRequest {
|
|
9
9
|
url: string;
|
|
10
10
|
options: RequestInit;
|
|
11
|
-
|
|
11
|
+
DisableQueueing?: boolean;
|
|
12
12
|
}
|
|
13
13
|
export interface SearchResponse {
|
|
14
14
|
response: Response;
|
|
@@ -58,10 +58,20 @@ export declare class DuckDuckGoRateLimiter {
|
|
|
58
58
|
/**
|
|
59
59
|
* Execute a search request through the rate limiter
|
|
60
60
|
*/
|
|
61
|
+
Search(request: SearchRequest): Promise<SearchResponse>;
|
|
62
|
+
/** @deprecated Use {@link Search}. */
|
|
61
63
|
search(request: SearchRequest): Promise<SearchResponse>;
|
|
62
64
|
/**
|
|
63
65
|
* Get current queue status
|
|
64
66
|
*/
|
|
67
|
+
GetStatus(): {
|
|
68
|
+
isQueueActive: boolean;
|
|
69
|
+
activeRequests: number;
|
|
70
|
+
queuedRequests: number;
|
|
71
|
+
totalProcessed: number;
|
|
72
|
+
lastRateLimitTime: number;
|
|
73
|
+
};
|
|
74
|
+
/** @deprecated Use {@link GetStatus}. */
|
|
65
75
|
getStatus(): {
|
|
66
76
|
isQueueActive: boolean;
|
|
67
77
|
activeRequests: number;
|
|
@@ -72,14 +82,20 @@ export declare class DuckDuckGoRateLimiter {
|
|
|
72
82
|
/**
|
|
73
83
|
* Force queue activation (for testing)
|
|
74
84
|
*/
|
|
85
|
+
ForceActivateQueue(): void;
|
|
86
|
+
/** @deprecated Use {@link ForceActivateQueue}. */
|
|
75
87
|
forceActivateQueue(): void;
|
|
76
88
|
/**
|
|
77
89
|
* Force queue deactivation (for testing)
|
|
78
90
|
*/
|
|
91
|
+
ForceDeactivateQueue(): void;
|
|
92
|
+
/** @deprecated Use {@link ForceDeactivateQueue}. */
|
|
79
93
|
forceDeactivateQueue(): void;
|
|
80
94
|
}
|
|
81
95
|
/**
|
|
82
96
|
* Get the singleton rate limiter instance
|
|
83
97
|
*/
|
|
98
|
+
export declare function GetDuckDuckGoRateLimiter(config?: Partial<RateLimitConfig>): DuckDuckGoRateLimiter;
|
|
99
|
+
/** @deprecated Use {@link GetDuckDuckGoRateLimiter}. */
|
|
84
100
|
export declare function getDuckDuckGoRateLimiter(config?: Partial<RateLimitConfig>): DuckDuckGoRateLimiter;
|
|
85
101
|
//# sourceMappingURL=duckduckgo-rate-limiter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duckduckgo-rate-limiter.d.ts","sourceRoot":"","sources":["../../../src/custom/web/duckduckgo-rate-limiter.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,WAAW,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,qBAAa,qBAAqB;IAC9B,OAAO,CAAC,aAAa,CAKhB;IAEL,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,cAAc,CAAK;IAE3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAMrB;IAEF,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAmB;gBAE5C,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAK7C;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;OAEG;YACW,oBAAoB;IAwBlC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAwCjC;;OAEG;IACH,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoB1B;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAgD7D;;OAEG;IACH,SAAS,IAAI;QACT,aAAa,EAAE,OAAO,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;KAC7B;IAUD;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAI1B;;OAEG;IACH,oBAAoB,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"duckduckgo-rate-limiter.d.ts","sourceRoot":"","sources":["../../../src/custom/web/duckduckgo-rate-limiter.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,WAAW,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,cAAc;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,qBAAa,qBAAqB;IAC9B,OAAO,CAAC,aAAa,CAKhB;IAEL,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,cAAc,CAAK;IAE3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAMrB;IAEF,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAmB;gBAE5C,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAK7C;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAavB;;OAEG;YACW,oBAAoB;IAwBlC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAwCjC;;OAEG;IACH,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoB1B;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAgD7D,sCAAsC;IAChC,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAI7D;;OAEG;IACH,SAAS,IAAI;QACT,aAAa,EAAE,OAAO,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;KAC7B;IAUD,yCAAyC;IACzC,SAAS,IAAI;QACT,aAAa,EAAE,OAAO,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;KAC7B;IAID;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAI1B,kDAAkD;IAClD,kBAAkB,IAAI,IAAI;IAI1B;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAQ5B,oDAAoD;IACpD,oBAAoB,IAAI,IAAI;CAG/B;AAKD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,qBAAqB,CAKjG;AAED,wDAAwD;AACxD,wBAAgB,wBAAwB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,qBAAqB,CAEjG"}
|
|
@@ -166,11 +166,11 @@ export class DuckDuckGoRateLimiter {
|
|
|
166
166
|
/**
|
|
167
167
|
* Execute a search request through the rate limiter
|
|
168
168
|
*/
|
|
169
|
-
async
|
|
169
|
+
async Search(request) {
|
|
170
170
|
const requestId = `REQ-${++this.requestCounter}`;
|
|
171
171
|
return new Promise((resolve, reject) => {
|
|
172
172
|
// If queueing is disabled and queue is active, fail immediately
|
|
173
|
-
if (request.
|
|
173
|
+
if (request.DisableQueueing && this.isQueueActive) {
|
|
174
174
|
console.log(` 🚫 Request ${requestId} rejected - rate limiting active and queueing disabled`);
|
|
175
175
|
reject(new Error('Rate limiting active and queueing is disabled'));
|
|
176
176
|
return;
|
|
@@ -208,10 +208,14 @@ export class DuckDuckGoRateLimiter {
|
|
|
208
208
|
}
|
|
209
209
|
});
|
|
210
210
|
}
|
|
211
|
+
/** @deprecated Use {@link Search}. */
|
|
212
|
+
async search(request) {
|
|
213
|
+
return this.Search(request);
|
|
214
|
+
}
|
|
211
215
|
/**
|
|
212
216
|
* Get current queue status
|
|
213
217
|
*/
|
|
214
|
-
|
|
218
|
+
GetStatus() {
|
|
215
219
|
return {
|
|
216
220
|
isQueueActive: this.isQueueActive,
|
|
217
221
|
activeRequests: this.activeRequests,
|
|
@@ -220,32 +224,48 @@ export class DuckDuckGoRateLimiter {
|
|
|
220
224
|
lastRateLimitTime: this.lastRateLimitTime
|
|
221
225
|
};
|
|
222
226
|
}
|
|
227
|
+
/** @deprecated Use {@link GetStatus}. */
|
|
228
|
+
getStatus() {
|
|
229
|
+
return this.GetStatus();
|
|
230
|
+
}
|
|
223
231
|
/**
|
|
224
232
|
* Force queue activation (for testing)
|
|
225
233
|
*/
|
|
226
|
-
|
|
234
|
+
ForceActivateQueue() {
|
|
227
235
|
this.activateQueue();
|
|
228
236
|
}
|
|
237
|
+
/** @deprecated Use {@link ForceActivateQueue}. */
|
|
238
|
+
forceActivateQueue() {
|
|
239
|
+
return this.ForceActivateQueue();
|
|
240
|
+
}
|
|
229
241
|
/**
|
|
230
242
|
* Force queue deactivation (for testing)
|
|
231
243
|
*/
|
|
232
|
-
|
|
244
|
+
ForceDeactivateQueue() {
|
|
233
245
|
this.isQueueActive = false;
|
|
234
246
|
if (this.resetQueueTimer) {
|
|
235
247
|
clearTimeout(this.resetQueueTimer);
|
|
236
248
|
this.resetQueueTimer = undefined;
|
|
237
249
|
}
|
|
238
250
|
}
|
|
251
|
+
/** @deprecated Use {@link ForceDeactivateQueue}. */
|
|
252
|
+
forceDeactivateQueue() {
|
|
253
|
+
return this.ForceDeactivateQueue();
|
|
254
|
+
}
|
|
239
255
|
}
|
|
240
256
|
// Singleton instance
|
|
241
257
|
let rateLimiterInstance = null;
|
|
242
258
|
/**
|
|
243
259
|
* Get the singleton rate limiter instance
|
|
244
260
|
*/
|
|
245
|
-
export function
|
|
261
|
+
export function GetDuckDuckGoRateLimiter(config) {
|
|
246
262
|
if (!rateLimiterInstance) {
|
|
247
263
|
rateLimiterInstance = new DuckDuckGoRateLimiter(config);
|
|
248
264
|
}
|
|
249
265
|
return rateLimiterInstance;
|
|
250
266
|
}
|
|
267
|
+
/** @deprecated Use {@link GetDuckDuckGoRateLimiter}. */
|
|
268
|
+
export function getDuckDuckGoRateLimiter(config) {
|
|
269
|
+
return GetDuckDuckGoRateLimiter(config);
|
|
270
|
+
}
|
|
251
271
|
//# sourceMappingURL=duckduckgo-rate-limiter.js.map
|