@truto/truto-jsonata 1.0.22 → 1.0.24
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 +51 -2
- package/dist/main.cjs +491 -454
- package/dist/main.cjs.map +1 -1
- package/dist/module.js +495 -458
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -2100,7 +2100,7 @@ expression.evaluate({}).then(result => { console.log(result); });
|
|
|
2100
2100
|
</details>
|
|
2101
2101
|
|
|
2102
2102
|
<details>
|
|
2103
|
-
<summary>base64encode(input)</summary>
|
|
2103
|
+
<summary>base64encode(input, urlSafe = false)</summary>
|
|
2104
2104
|
|
|
2105
2105
|
Encodes the input data in Base64.
|
|
2106
2106
|
|
|
@@ -2117,7 +2117,7 @@ expression.evaluate({}).then(result => { console.log(result); });
|
|
|
2117
2117
|
</details>
|
|
2118
2118
|
|
|
2119
2119
|
<details>
|
|
2120
|
-
<summary>base64decode(base64String)</summary>
|
|
2120
|
+
<summary>base64decode(base64String, urlSafe = false)</summary>
|
|
2121
2121
|
|
|
2122
2122
|
Decodes a Base64-encoded string.
|
|
2123
2123
|
|
|
@@ -2133,6 +2133,55 @@ expression.evaluate({}).then(result => { console.log(result); });
|
|
|
2133
2133
|
|
|
2134
2134
|
</details>
|
|
2135
2135
|
|
|
2136
|
+
<details>
|
|
2137
|
+
<summary>base64ToBlob(base64String, options = {})</summary>
|
|
2138
|
+
|
|
2139
|
+
Converts a Base64-encoded string to a Blob object.
|
|
2140
|
+
|
|
2141
|
+
**Parameters:**
|
|
2142
|
+
|
|
2143
|
+
- **base64String**: The Base64 string to convert. Can include data URI prefixes (e.g., `data:image/png;base64,iVBORw0...`)
|
|
2144
|
+
- **options** _(Optional)_: An object containing:
|
|
2145
|
+
- **mimeType**: The MIME type for the resulting Blob (default: `'application/octet-stream'`)
|
|
2146
|
+
- **urlSafe**: Whether to handle URL-safe Base64 encoding (default: `false`)
|
|
2147
|
+
|
|
2148
|
+
**Features:**
|
|
2149
|
+
|
|
2150
|
+
- Handles data URI format automatically
|
|
2151
|
+
- Supports URL-safe Base64 encoding
|
|
2152
|
+
- Automatic padding correction
|
|
2153
|
+
- Comprehensive error handling for invalid Base64 strings
|
|
2154
|
+
- MIME type detection from data URI or custom specification
|
|
2155
|
+
|
|
2156
|
+
**Example:**
|
|
2157
|
+
|
|
2158
|
+
```javascript
|
|
2159
|
+
import trutoJsonata from '@truto/truto-jsonata';
|
|
2160
|
+
|
|
2161
|
+
// Basic usage
|
|
2162
|
+
const expression1 = trutoJsonata("$base64ToBlob('SGVsbG8gd29ybGQ=', { mimeType: 'text/plain' })");
|
|
2163
|
+
expression1.evaluate({}).then(result => {
|
|
2164
|
+
console.log(result);
|
|
2165
|
+
// Output: Blob object with type 'text/plain' and size 11
|
|
2166
|
+
});
|
|
2167
|
+
|
|
2168
|
+
// Data URI format
|
|
2169
|
+
const expression2 = trutoJsonata("$base64ToBlob('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PchI7wAAAABJRU5ErkJggg==')");
|
|
2170
|
+
expression2.evaluate({}).then(result => {
|
|
2171
|
+
console.log(result);
|
|
2172
|
+
// Output: Blob object with type 'image/png' (auto-detected from data URI)
|
|
2173
|
+
});
|
|
2174
|
+
|
|
2175
|
+
// URL-safe Base64
|
|
2176
|
+
const expression3 = trutoJsonata("$base64ToBlob('aHR0cHM6Ly9leGFtcGxlLmNvbS8_cXVlcnk9YmFzZTY0', { urlSafe: true })");
|
|
2177
|
+
expression3.evaluate({}).then(result => {
|
|
2178
|
+
console.log(result);
|
|
2179
|
+
// Output: Blob object containing the decoded data
|
|
2180
|
+
});
|
|
2181
|
+
```
|
|
2182
|
+
|
|
2183
|
+
</details>
|
|
2184
|
+
|
|
2136
2185
|
|
|
2137
2186
|
|
|
2138
2187
|
<details>
|