dphelper 4.3.1 → 4.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +31 -30
- package/SECURITY.md +26 -26
- package/index.cjs +11 -11
- package/index.js +11 -11
- package/modules/ai.cjs +7 -0
- package/modules/ai.d.ts +14 -0
- package/modules/ai.js +7 -0
- package/modules/anchor.cjs +4 -0
- package/modules/anchor.d.ts +9 -0
- package/modules/anchor.js +4 -0
- package/modules/array.cjs +1 -0
- package/modules/array.d.ts +24 -0
- package/modules/array.js +1 -0
- package/modules/audio.cjs +1 -0
- package/modules/audio.d.ts +13 -0
- package/modules/audio.js +1 -0
- package/modules/avoid.cjs +1 -0
- package/modules/avoid.d.ts +5 -0
- package/modules/avoid.js +1 -0
- package/modules/biometric.cjs +2 -0
- package/modules/biometric.d.ts +17 -0
- package/modules/biometric.js +2 -0
- package/modules/browser.cjs +37 -0
- package/modules/browser.d.ts +13 -0
- package/modules/browser.js +37 -0
- package/modules/check.cjs +1 -0
- package/modules/check.d.ts +7 -0
- package/modules/check.js +1 -0
- package/modules/color.cjs +1 -0
- package/modules/color.d.ts +9 -0
- package/modules/color.js +1 -0
- package/modules/compress.cjs +1 -0
- package/modules/compress.d.ts +16 -0
- package/modules/compress.js +1 -0
- package/modules/cookie.cjs +1 -0
- package/modules/cookie.d.ts +15 -0
- package/modules/cookie.js +1 -0
- package/modules/coords.cjs +8 -0
- package/modules/coords.d.ts +11 -0
- package/modules/coords.js +8 -0
- package/modules/credits.cjs +1 -0
- package/modules/credits.d.ts +14 -0
- package/modules/credits.js +1 -0
- package/modules/date.cjs +12 -0
- package/modules/date.d.ts +28 -0
- package/modules/date.js +12 -0
- package/modules/disable.cjs +1 -0
- package/modules/disable.d.ts +11 -0
- package/modules/disable.js +1 -0
- package/modules/dispatch.cjs +1 -0
- package/modules/dispatch.d.ts +7 -0
- package/modules/dispatch.js +1 -0
- package/modules/elements.cjs +1 -0
- package/modules/elements.d.ts +6 -0
- package/modules/elements.js +1 -0
- package/modules/events.cjs +1 -0
- package/modules/events.d.ts +9 -0
- package/modules/events.js +1 -0
- package/modules/fetch.cjs +2 -0
- package/modules/fetch.d.ts +18 -0
- package/modules/fetch.js +2 -0
- package/modules/form.cjs +1 -0
- package/modules/form.d.ts +16 -0
- package/modules/form.js +1 -0
- package/modules/format.cjs +1 -0
- package/modules/format.d.ts +6 -0
- package/modules/format.js +1 -0
- package/modules/i18n.cjs +1 -0
- package/modules/i18n.d.ts +14 -0
- package/modules/i18n.js +1 -0
- package/modules/image.cjs +1 -0
- package/modules/image.d.ts +16 -0
- package/modules/image.js +1 -0
- package/modules/json.cjs +3 -0
- package/modules/json.d.ts +11 -0
- package/modules/json.js +3 -0
- package/modules/load.cjs +1 -0
- package/modules/load.d.ts +11 -0
- package/modules/load.js +1 -0
- package/modules/logging.cjs +1 -0
- package/modules/logging.d.ts +11 -0
- package/modules/logging.js +1 -0
- package/modules/math.cjs +1 -0
- package/modules/math.d.ts +16 -0
- package/modules/math.js +1 -0
- package/modules/memory.cjs +1 -0
- package/modules/memory.d.ts +6 -0
- package/modules/memory.js +1 -0
- package/modules/navigation.cjs +2 -0
- package/modules/navigation.d.ts +7 -0
- package/modules/navigation.js +2 -0
- package/modules/net.cjs +1 -0
- package/modules/net.d.ts +13 -0
- package/modules/net.js +1 -0
- package/modules/objects.cjs +4 -0
- package/modules/objects.d.ts +18 -0
- package/modules/objects.js +4 -0
- package/modules/path.cjs +1 -0
- package/modules/path.d.ts +7 -0
- package/modules/path.js +1 -0
- package/modules/promise.cjs +1 -0
- package/modules/promise.d.ts +6 -0
- package/modules/promise.js +1 -0
- package/modules/sanitize.cjs +2 -0
- package/modules/sanitize.d.ts +5 -0
- package/modules/sanitize.js +2 -0
- package/modules/screen.cjs +1 -0
- package/modules/screen.d.ts +14 -0
- package/modules/screen.js +1 -0
- package/modules/scrollbar.cjs +65 -0
- package/modules/scrollbar.d.ts +12 -0
- package/modules/scrollbar.js +65 -0
- package/modules/security.cjs +1 -0
- package/modules/security.d.ts +18 -0
- package/modules/security.js +1 -0
- package/modules/shortcut.cjs +1 -0
- package/modules/shortcut.d.ts +5 -0
- package/modules/shortcut.js +1 -0
- package/modules/socket.cjs +2 -0
- package/modules/socket.d.ts +16 -0
- package/modules/socket.js +2 -0
- package/modules/sse.cjs +2 -0
- package/modules/sse.d.ts +11 -0
- package/modules/sse.js +2 -0
- package/modules/svg.cjs +2 -0
- package/modules/svg.d.ts +15 -0
- package/modules/svg.js +2 -0
- package/modules/sync.cjs +1 -0
- package/modules/sync.d.ts +16 -0
- package/modules/sync.js +1 -0
- package/modules/system.cjs +1 -0
- package/modules/system.d.ts +5 -0
- package/modules/system.js +1 -0
- package/modules/text.cjs +15 -0
- package/modules/text.d.ts +15 -0
- package/modules/text.js +15 -0
- package/modules/timer.cjs +1 -0
- package/modules/timer.d.ts +6 -0
- package/modules/timer.js +1 -0
- package/modules/tools.cjs +1 -0
- package/modules/tools.d.ts +8 -0
- package/modules/tools.js +1 -0
- package/modules/translators.cjs +1 -0
- package/modules/translators.d.ts +5 -0
- package/modules/translators.js +1 -0
- package/modules/triggers.cjs +1 -0
- package/modules/triggers.d.ts +46 -0
- package/modules/triggers.js +1 -0
- package/modules/types.cjs +1 -0
- package/modules/types.d.ts +8 -0
- package/modules/types.js +1 -0
- package/modules/ui.cjs +6 -0
- package/modules/ui.d.ts +6 -0
- package/modules/ui.js +6 -0
- package/modules/window.cjs +7 -0
- package/modules/window.d.ts +12 -0
- package/modules/window.js +7 -0
- package/modules/worker.cjs +2 -0
- package/modules/worker.d.ts +19 -0
- package/modules/worker.js +2 -0
- package/package.json +277 -4
- package/sbom.json +48 -0
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|

|
|
18
18
|

|
|
19
|
-
|
|
19
|
+
[](https://playwright.dev/)
|
|
20
20
|
|
|
21
21
|

|
|
22
22
|

|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
|
|
38
38
|
## About
|
|
39
39
|
|
|
40
|
-
**dphelper** is a powerful, zero-dependency utility library that brings together **
|
|
40
|
+
**dphelper** is a powerful, zero-dependency utility library that brings together **production-ready tools** for web developers, AI engineers, and DevTools creators.
|
|
41
41
|
|
|
42
42
|
Think of it as your **universal toolbox** - from DOM manipulation to cryptographic operations, from real-time WebSocket handling to AI-powered token optimization. No more juggling multiple packages. One import, infinite possibilities.
|
|
43
43
|
|
|
@@ -87,6 +87,34 @@ Import it precisely **once** in your entry point (e.g., `index.js`, `main.ts`, o
|
|
|
87
87
|
import "dphelper";
|
|
88
88
|
```
|
|
89
89
|
|
|
90
|
+
### Modular imports
|
|
91
|
+
|
|
92
|
+
For a smaller bundle or cleaner tree-shaking, import only the tool you need. Each modular entry point exposes the tool both as a **named export** and on the **global `dphelper`** object, so existing global-usage code keeps working unchanged.
|
|
93
|
+
|
|
94
|
+
```ts
|
|
95
|
+
import { sanitize } from "dphelper/sanitize"
|
|
96
|
+
import { format } from "dphelper/format"
|
|
97
|
+
import { fetch } from "dphelper/fetch"
|
|
98
|
+
import { security } from "dphelper/security"
|
|
99
|
+
|
|
100
|
+
sanitize.html("<strong>safe text</strong>")
|
|
101
|
+
format.currency(1234.56, "en-US", "USD")
|
|
102
|
+
await fetch.get("https://api.example.com")
|
|
103
|
+
security.ulid()
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
The same tool is also available on the global after import:
|
|
107
|
+
|
|
108
|
+
```ts
|
|
109
|
+
import "dphelper/format"
|
|
110
|
+
|
|
111
|
+
// Identical to the named export above
|
|
112
|
+
dphelper.format.currency(1234.56, "en-US", "USD")
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
> [!NOTE]
|
|
116
|
+
> Every tool under `tools/` is published as `dphelper/<tool>` (e.g. `dphelper/array`, `dphelper/i18n`, `dphelper/worker`). The full list is generated automatically from the `tools/` directory at build time, so adding a new tool creates its modular entry point with no extra configuration.
|
|
117
|
+
|
|
90
118
|
For plain HTML/CDN:
|
|
91
119
|
|
|
92
120
|
```html
|
|
@@ -95,7 +123,7 @@ For plain HTML/CDN:
|
|
|
95
123
|
<!-- Optional check -->
|
|
96
124
|
<script>
|
|
97
125
|
console.debug(dphelper.version); // latest version
|
|
98
|
-
console.
|
|
126
|
+
console.debug(dphelper.isBrowser); // true
|
|
99
127
|
</script>
|
|
100
128
|
```
|
|
101
129
|
|
|
@@ -148,33 +176,6 @@ dphelper.i18n.number(1234.56, 'de-DE', { style: 'currency', currency: 'EUR' });
|
|
|
148
176
|
// Relative time
|
|
149
177
|
dphelper.i18n.relativeTime(Date.now() - 3600000); // "1 hour ago"
|
|
150
178
|
```
|
|
151
|
-
|
|
152
|
-
---
|
|
153
|
-
|
|
154
|
-
## 🖼️ Image Module
|
|
155
|
-
|
|
156
|
-
```javascript
|
|
157
|
-
// Load image
|
|
158
|
-
const img = await dphelper.image.load('photo.jpg');
|
|
159
|
-
|
|
160
|
-
// Resize
|
|
161
|
-
const resized = dphelper.image.resize(img, 100, 100);
|
|
162
|
-
|
|
163
|
-
// Crop
|
|
164
|
-
const cropped = dphelper.image.crop(img, { x: 0, y: 0, width: 50, height: 50 });
|
|
165
|
-
|
|
166
|
-
// Apply filters
|
|
167
|
-
const filtered = dphelper.image.filter(img, { brightness: 1.2, sepia: 0.5 });
|
|
168
|
-
|
|
169
|
-
// Rotate/Flip
|
|
170
|
-
const rotated = dphelper.image.rotate(img, 90);
|
|
171
|
-
const flipped = dphelper.image.flip(img, 'horizontal');
|
|
172
|
-
|
|
173
|
-
// Grayscale/Blur
|
|
174
|
-
const gray = dphelper.image.grayscale(img);
|
|
175
|
-
const blurred = dphelper.image.blur(img, 5);
|
|
176
|
-
```
|
|
177
|
-
|
|
178
179
|
---
|
|
179
180
|
|
|
180
181
|
## 🗜️ Compression Module
|
package/SECURITY.md
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
# Security Policy
|
|
2
|
-
|
|
3
|
-
## Supported Versions
|
|
4
|
-
|
|
5
|
-
| Version | Supported |
|
|
6
|
-
| ------- | --------- |
|
|
7
|
-
| 3.9.x | ✅ |
|
|
8
|
-
| < 3.5 | ❌ |
|
|
9
|
-
|
|
10
|
-
## Security Standards
|
|
11
|
-
|
|
12
|
-
- **NIST SP 800-53:** 98% compliance
|
|
13
|
-
- **OWASP Top 10:** 100% compliance
|
|
14
|
-
- **Socket.dev:** 90%+ target
|
|
15
|
-
|
|
16
|
-
## Reporting a Vulnerability
|
|
17
|
-
|
|
18
|
-
Email: architecture@biglogic.ca
|
|
19
|
-
Response: Within 24 hours
|
|
20
|
-
|
|
21
|
-
## Security Features
|
|
22
|
-
|
|
23
|
-
- PBKDF2 310k iterations (OWASP 2023)
|
|
24
|
-
- AES-GCM 256-bit encryption
|
|
25
|
-
- TLS 1.2+ enforcement
|
|
26
|
-
- WebSocket wss:// only
|
|
1
|
+
# Security Policy
|
|
2
|
+
|
|
3
|
+
## Supported Versions
|
|
4
|
+
|
|
5
|
+
| Version | Supported |
|
|
6
|
+
| ------- | --------- |
|
|
7
|
+
| 3.9.x | ✅ |
|
|
8
|
+
| < 3.5 | ❌ |
|
|
9
|
+
|
|
10
|
+
## Security Standards
|
|
11
|
+
|
|
12
|
+
- **NIST SP 800-53:** 98% compliance
|
|
13
|
+
- **OWASP Top 10:** 100% compliance
|
|
14
|
+
- **Socket.dev:** 90%+ target
|
|
15
|
+
|
|
16
|
+
## Reporting a Vulnerability
|
|
17
|
+
|
|
18
|
+
Email: architecture@biglogic.ca
|
|
19
|
+
Response: Within 24 hours
|
|
20
|
+
|
|
21
|
+
## Security Features
|
|
22
|
+
|
|
23
|
+
- PBKDF2 310k iterations (OWASP 2023)
|
|
24
|
+
- AES-GCM 256-bit encryption
|
|
25
|
+
- TLS 1.2+ enforcement
|
|
26
|
+
- WebSocket wss:// only
|
|
27
27
|
- Input validation on all endpoints
|