ranuts 0.4.0-alpha.4 → 0.4.0-alpha.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.
- package/CLAUDE.md +1 -0
- package/README.md +5 -1
- package/README.zh-CN.md +17 -1
- package/dist/index.js +1 -1
- package/dist/src/utils/binary.d.ts +107 -0
- package/dist/src/utils/index.d.ts +2 -1
- package/dist/src/utils/index.js +1 -1
- package/dist/test/binary.test.d.ts +1 -0
- package/dist/umd/index.umd.cjs +1 -1
- package/dist/umd/utils/utils.umd.cjs +1 -1
- package/dist/{utils-CYrYCt5o.js → utils-BSvtPyGl.js} +1 -1
- package/docs/API.md +11 -2
- package/package.json +1 -1
package/CLAUDE.md
CHANGED
|
@@ -58,6 +58,7 @@ packages/ranuts/
|
|
|
58
58
|
│ │ ├── idb.ts # WebDB (declarative stores) + createHandoff (one-shot value handoff)
|
|
59
59
|
│ │ ├── worker.ts # WorkerClient — request/response over a Web Worker
|
|
60
60
|
│ │ ├── zip.ts # ZIP read/rewrite — crc32, inflateRaw, rewriteZip, createZip
|
|
61
|
+
│ │ ├── binary.ts # bytes ↔ base64 (chunked), gzip sniff/decompress, zip/HTML signature sniff, decodeTextBytes, saveFileToDisk
|
|
61
62
|
│ │ ├── async.ts # deferred / withTimeout / withTimeoutFallback / delay / createRaceGuard
|
|
62
63
|
│ │ ├── storage.ts # localStorage* + createStore (prefixed JSON view)
|
|
63
64
|
│ │ ├── segment.ts # offsets ↔ chunks, range→segment splitting (highlights)
|
package/README.md
CHANGED
|
@@ -10,6 +10,8 @@ Experimental utility library with commonly used functions and tools
|
|
|
10
10
|
<a href="https://github.com/chaxus/ran"><img src="https://img.badgesize.io/https:/unpkg.com/ranuts/dist/index.js?label=brotli&compression=brotli" alt="brotli"></a>
|
|
11
11
|
<a href="https://github.com/chaxus/ran"><img src="https://img.shields.io/badge/module%20formats-umd%2C%20esm-green.svg" alt="module formats: umd, esm"></a>
|
|
12
12
|
|
|
13
|
+
**English** | [中文](./README.zh-CN.md)
|
|
14
|
+
|
|
13
15
|
---
|
|
14
16
|
|
|
15
17
|
## ⚠️ Important Notice
|
|
@@ -53,9 +55,11 @@ Claude then uses it automatically (or invoke it as `/ranuts:ranuts`).
|
|
|
53
55
|
|
|
54
56
|
Import as required. You can select:
|
|
55
57
|
|
|
56
|
-
- `ranuts/utils` — DOM/BOM, string, object, number, colour, time, storage,
|
|
58
|
+
- `ranuts/utils` — DOM/BOM, string, object, number, colour, time, storage, binary/zip,
|
|
59
|
+
worker/IndexedDB, i18n helpers
|
|
57
60
|
- `ranuts/node` — HTTP server, router, ws, fs, streams, middleware (**Node only**)
|
|
58
61
|
- `ranuts/visual` — 2D rendering engine (Canvas / WebGL / WebGPU, **browser only**)
|
|
62
|
+
- `ranuts/sw` — cache strategies + the precache protocol's service-worker half (**service worker only**)
|
|
59
63
|
- `ranuts/vnode` — Snabbdom-style virtual DOM
|
|
60
64
|
- `ranuts/i18n` — the i18n engine on its own, without the rest of `utils`
|
|
61
65
|
|
package/README.zh-CN.md
CHANGED
|
@@ -36,13 +36,29 @@ npm install ranuts@latest --save
|
|
|
36
36
|
|
|
37
37
|
[一些常用的函数和工具](https://ran.chaxus.com/cn/src/ranuts/)
|
|
38
38
|
|
|
39
|
+
**面向 AI / 大模型:** 从 [CLAUDE.md](./CLAUDE.md)(入口点、运行时约束、代码约定)和
|
|
40
|
+
[docs/API.md](./docs/API.md)(自动生成的 API 参考,含每个导出符号的签名与说明,用
|
|
41
|
+
`npm run doc:api` 重新生成)开始。
|
|
42
|
+
|
|
43
|
+
也可以从 `ran` 插件市场安装现成的 **Claude Code skill**,它会把导入映射、`ranuts/utils`
|
|
44
|
+
清单、用法示例和代码约定交给助手,并指向包内附带的 API 参考:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
/plugin marketplace add chaxus/ran
|
|
48
|
+
/plugin install ranuts@ran
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
装好后 Claude 会自动使用(也可以手动调用 `/ranuts:ranuts`)。
|
|
52
|
+
|
|
39
53
|
## 使用方式
|
|
40
54
|
|
|
41
55
|
按需导入。您可以选择:
|
|
42
56
|
|
|
43
|
-
- `ranuts/utils` —— DOM/BOM
|
|
57
|
+
- `ranuts/utils` —— DOM/BOM、字符串、对象、数字、颜色、时间、存储、二进制/zip、
|
|
58
|
+
Worker/IndexedDB、i18n 等工具
|
|
44
59
|
- `ranuts/node` —— HTTP 服务、路由、ws、fs、流、中间件(**仅 Node**)
|
|
45
60
|
- `ranuts/visual` —— 2D 渲染引擎(Canvas / WebGL / WebGPU,**仅浏览器**)
|
|
61
|
+
- `ranuts/sw` —— 缓存策略 + 预缓存协议的 Service Worker 一侧(**仅 Service Worker**)
|
|
46
62
|
- `ranuts/vnode` —— Snabbdom 风格的虚拟 DOM
|
|
47
63
|
- `ranuts/i18n` —— 单独的 i18n 引擎,不牵入 `utils` 的其余部分
|
|
48
64
|
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as s}from"./enums-BAgbyGdH.js";import{$ as a,A as t,B as n,C as o,D as r,E as m,F as i,G as p,H as f,I as j,J as c,K as l,L as u,M as h,N as
|
|
1
|
+
import{i as s}from"./enums-BAgbyGdH.js";import{$ as a,A as t,B as n,C as o,D as r,E as m,F as i,G as p,H as f,I as j,J as c,K as l,L as u,M as h,N as x,O as b,P as d,Q as e,R as g,S as k,T as v,U as w,V as y,W as C,X as D,Y as E,Z as S,_ as T,a as _,at as z,b as A,c as B,d as F,et as H,f as I,g as L,h as M,i as N,it as O,j as P,k as R,l as U,m as V,n as q,nt as G,o as J,ot as K,p as Q,q as W,r as X,rt as Y,s as Z,st as $,t as ss,tt as as,u as ts,v as ns,w as os,x as rs,y as ms,z as is}from"./color-DPV7TsVU.js";import{$ as ps,$t as fs,A as js,At as cs,B as ls,Bt as us,C as hs,Cn as xs,Ct as bs,D as ds,Dn as es,Dt as gs,E as ks,En as vs,Et as ws,F as ys,Ft as Cs,G as Ds,Gt as Es,H as Ss,Ht as Ts,I as _s,It as zs,J as As,Jt as Bs,K as Fs,Kt as Hs,L as Is,Lt as Ls,M as Ms,Mt as Ns,N as Os,Nt as Ps,O as Rs,On as Us,Ot as Vs,P as qs,Pt as Gs,Q as Js,Qt as Ks,R as Qs,Rt as Ws,S as Xs,Sn as Ys,St as Zs,T as $s,Tn as sa,Tt as aa,U as ta,Ut as na,V as oa,Vt as ra,W as ma,Wt as ia,X as pa,Xt as fa,Y as ja,Yt as ca,Z as la,Zt as ua,_ as ha,_n as xa,_t as ba,a as da,an as ea,at as ga,b as ka,bn as va,bt as wa,c as ya,cn as Ca,ct as Da,d as Ea,dn as Sa,dt as Ta,en as _a,et as za,f as Aa,fn as Ba,ft as Fa,g as Ha,gn as Ia,gt as La,h as Ma,hn as Na,ht as Oa,i as Pa,in as Ra,it as Ua,j as Va,jt as qa,k as Ga,kn as Ja,kt as Ka,l as Qa,ln as Wa,lt as Xa,m as Ya,mn as Za,mt as $a,n as st,nn as at,nt as tt,o as nt,on as ot,ot as rt,p as mt,pn as it,pt,q as ft,qt as jt,r as ct,rn as lt,rt as ut,s as ht,sn as xt,st as bt,t as dt,tn as et,tt as gt,u as kt,un as vt,ut as wt,v as yt,vn as Ct,vt as Dt,w as Et,wn as St,wt as Tt,x as _t,xn as zt,xt as At,y as Bt,yn as Ft,yt as Ht,z as It,zt as Lt}from"./utils-BSvtPyGl.js";import{A as Mt,B as Nt,C as Ot,D as Pt,E as Rt,F as Ut,H as Vt,I as qt,L as Gt,M as Jt,N as Kt,P as Qt,R as Wt,S as Xt,T as Yt,U as Zt,V as $t,_ as sn,a as an,b as tn,c as nn,d as on,f as rn,g as mn,h as pn,i as fn,j as jn,k as cn,l as ln,m as un,n as hn,o as xn,p as bn,r as dn,s as en,t as gn,u as kn,v as vn,w as wn,x as yn,y as Cn,z as Dn}from"./i18n-Bq-f7htr.js";import{n as En,t as Sn}from"./chain-CTywmh_H.js";export{ga as ADOPTED_SHEET_MARKER,rt as ADOPTED_STYLE_MARKER,na as AudioRecorder,at as BRIDGE_MARKER,lt as BridgeManager,Sn as Chain,Ra as Client,ss as Color,q as ColorScheme,ea as DEFAULT_CHANNEL,Vs as EventManager,X as FMT,N as HEX_COLOR_REGEX,_ as Hsl,J as Hsla,gn as I18nCore,cn as MOBILE_MEDIA_QUERY,Za as Mathjs,l as MessageCodec,f as MimeType,nt as Monitor,ot as Platform,xt as PostMessageBridge,ct as QuestQueue,Z as RGBA_REGEX,B as RGB_REGEX,U as Rgb,ts as Rgba,s as SyncHook,us as TOTP,Et as TimeoutError,ut as WebDB,_s as WorkerClient,Ma as ZIP_DEFLATE,Ha as ZIP_STORED,Ca as acceptPortBridge,qa as addClassToElement,Na as addNumSym,bt as adoptSheetText,Da as adoptStyles,on as appendUrl,W as arrayBufferToString,Ns as autosizeTextarea,Qs as base64ToBytes,F as blendMultiply,I as blendOverlay,Q as blendScreen,Wa as bridgeManager,V as brightnessContrast,za as buildOffsets,It as bytesToBase64,c as checkEncoding,At as circ,Ia as clamp,E as clearBr,D as clearStr,ia as cloneDeep,M as componentToHex,Lt as compose,la as computePlacement,rn as connection,Xa as convertImageToBase64,L as cosinePalette,ha as crc32,En as create,kt as createData,Ps as createDocumentFragment,Ka as createDoubleTapDetector,Ua as createHandoff,hn as createI18n,Js as createLocalePath,bn as createObjectURL,vt as createPortBridge,$s as createRaceGuard,ra as createSignal,Ba as createSpeechRecognizer,en as createStore,yt as createZip,Zs as cubic,Mt as currentDevice,wt as cutRound,Ls as debounce,ls as decodeTextBytes,ks as deferred,ds as delay,fn as detectLanguage,un as durationHandler,pn as encodeUrl,Gs as escapeHtml,bs as expo,Oa as fanShapedByArc,oa as fetchMaybeGzip,Es as filterObj,xa as fit,qt as formatDate,Gt as formatDuration,Hs as formatJson,Wt as formatRelative,mn as getAllQueryString,La as getAngle,ba as getArcPointerByDeg,sn as getCookie,vn as getCookieByName,w as getExtensions,Cn as getFrame,Ta as getImage,Dt as getLinearGradient,S as getMatchingSentences,Fa as getMatrix,C as getMime,Ya as getPerformance,tn as getPixelRatio,e as getRandomString,Ea as getReportUrl,Pa as getStatus,Ht as getTangentByPointer,yn as getWindow,Ss as gunzipMaybe,Ws as handleConsole,cs as handleError,ya as handleFetchHook,Qa as handleXhrHook,T as hexToAlpha,ns as hexToHsb,ms as hexToHsv,A as hexToRgb,rs as hsbToHsl,k as hsbToRgb,o as hslToHsb,os as hslToHsv,v as hslToRgb,m as hsvToHsl,r as hsvToRgb,b as hue2rgb,Xt as imageRequest,gt as indexForOffset,Bt as inflateRaw,Ct as inverseLerp,jn as isClient,jt as isEqual,ta as isGzip,ma as isHtmlDocument,pt as isImageSize,Ot as isInIframe,Jt as isMobile,wn as isSafari,it as isSpeechRecognitionSupported,a as isString,js as isUrlCached,Kt as isWeiXin,Ds as isZipContainer,Ft as lerp,R as linearToSrgb,va as linearstep,dt as loadScript,nn as localStorageGetItem,ln as localStorageRemoveItem,kn as localStorageSetItem,t as luma,Qt as matchMediaQuery,zt as mathjs,H as md5,fs as memoize,Bs as merge,ca as mergeExports,an as navigatorLanguage,Va as networkAllowsDownload,Yt as networkSpeed,Ks as noop,_a as once,$a as opacity,Sa as openPortBridge,ps as paginateText,Ys as parseChineseNumber,xs as parseEnglishNumber,St as parseRomanNumber,Dn as parseVttCueTiming,Nt as parseVttTimestamp,sa as perToNum,$t as performanceTime,Ms as prefetchUrl,Os as prefetchUrls,qs as prefetchWhenIdle,Tt as quad,aa as quart,Rt as queryFlag,fa as querystring,ws as quint,P as randomColor,as as randomString,vs as range,ft as readFileAsArrayBuffer,As as readFileAsDataURL,ja as readFileAsText,pa as readFileAsUint8Array,ka as readZipEntries,_t as readZipEntry,es as remap,Cs as removeClassToElement,ua as replaceOld,Aa as report,Pt as requestUrlToBuffer,xn as resolveLocale,Xs as rewriteZip,h as rgbToHex,x as rgbToHsb,d as rgbToHsl,i as rgbToHsv,j as rgbaString,u as rgbaToHex,g as rgbaToRgb,wa as roundRectByArc,is as saturation,Fs as saveFileToDisk,st as scriptOnLoad,tt as segmentByRanges,Is as serveWorker,zs as setFontSize2html,p as setMime,mt as setReportUrl,gs as sine,et as singleFlight,Us as smoothstep,n as srgbToLinear,da as status,G as strParse,Ts as subscribers,ht as throttle,Vt as timeFormat,Zt as timestampToTime,Y as toFullWidth,O as toHalfWidth,z as toString,Ja as transformNumber,K as transformText,$ as truncate,dn as useI18n,y as vibrance,Ut as watchMediaQuery,ys as whenIdle,Rs as withTimeout,Ga as withTimeoutFallback,hs as zipHasEntry};
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Binary payload helpers: base64 without the call-stack trap, gzip that may or
|
|
3
|
+
* may not already be decoded, byte-signature sniffing, text decoding with an
|
|
4
|
+
* encoding fallback chain, and "save these bytes to disk".
|
|
5
|
+
*
|
|
6
|
+
* All of these were written (several times each) inside apps that move file
|
|
7
|
+
* bytes around — an Office editor, a converter, a downloader — before landing
|
|
8
|
+
* here.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @description: Encode bytes as base64 without blowing the call stack.
|
|
12
|
+
*
|
|
13
|
+
* `String.fromCharCode.apply(null, bytes)` is the usual one-liner and it throws
|
|
14
|
+
* `RangeError: Maximum call stack size exceeded` somewhere around a hundred
|
|
15
|
+
* thousand bytes — a limit real files pass routinely, so the naive version
|
|
16
|
+
* works in every test and fails on the first user document. Chunked here.
|
|
17
|
+
*
|
|
18
|
+
* @param {Uint8Array | ArrayBuffer} data
|
|
19
|
+
* @return {string} base64 (no data: prefix, no line breaks)
|
|
20
|
+
*/
|
|
21
|
+
export declare const bytesToBase64: (data: Uint8Array | ArrayBuffer) => string;
|
|
22
|
+
/**
|
|
23
|
+
* @description: Decode base64 into bytes. Accepts a bare payload or a full
|
|
24
|
+
* `data:` URL (the prefix is stripped), which is what `readFileAsDataURL` and
|
|
25
|
+
* canvas `toDataURL` hand you.
|
|
26
|
+
*
|
|
27
|
+
* @param {string} base64
|
|
28
|
+
* @return {Uint8Array}
|
|
29
|
+
*/
|
|
30
|
+
export declare const base64ToBytes: (base64: string) => Uint8Array<ArrayBuffer>;
|
|
31
|
+
/** @description: Whether the bytes start with the gzip magic number (1f 8b). */
|
|
32
|
+
export declare const isGzip: (bytes: Uint8Array) => boolean;
|
|
33
|
+
/**
|
|
34
|
+
* @description: Whether the bytes are a ZIP container (PK\x03\x04) — which is
|
|
35
|
+
* also every OOXML file (docx / xlsx / pptx), ODF file, epub and jar.
|
|
36
|
+
*/
|
|
37
|
+
export declare const isZipContainer: (bytes: Uint8Array) => boolean;
|
|
38
|
+
/**
|
|
39
|
+
* @description: Whether the bytes are an HTML document rather than the binary
|
|
40
|
+
* format their extension claims.
|
|
41
|
+
*
|
|
42
|
+
* Web systems love exporting an HTML `<table>` under a `.xls` name; spreadsheet
|
|
43
|
+
* apps accept it, parsers that trust the extension do not. A leading BOM and
|
|
44
|
+
* whitespace are skipped, and a ZIP container short-circuits to `false` so a
|
|
45
|
+
* real .xlsx is never sniffed as HTML.
|
|
46
|
+
*/
|
|
47
|
+
export declare const isHtmlDocument: (bytes: Uint8Array) => boolean;
|
|
48
|
+
/**
|
|
49
|
+
* @description: Decompress bytes if — and only if — they are still gzipped.
|
|
50
|
+
*
|
|
51
|
+
* A server that sends `Content-Encoding: gzip` has the browser decode the body
|
|
52
|
+
* before you ever see it, while a `.gz` file served as `application/gzip`
|
|
53
|
+
* arrives compressed. The same fetch therefore yields either shape depending on
|
|
54
|
+
* the host, so the magic number decides instead of the URL.
|
|
55
|
+
*
|
|
56
|
+
* @param {Uint8Array} bytes
|
|
57
|
+
* @return {Promise<Uint8Array>} the original bytes when they are not gzipped
|
|
58
|
+
*/
|
|
59
|
+
export declare const gunzipMaybe: (bytes: Uint8Array) => Promise<Uint8Array>;
|
|
60
|
+
/**
|
|
61
|
+
* @description: Fetch a resource that may be delivered gzipped or already
|
|
62
|
+
* decoded (see `gunzipMaybe`), e.g. a large `.wasm.gz` asset on a static host.
|
|
63
|
+
*
|
|
64
|
+
* @param {RequestInfo | URL} input
|
|
65
|
+
* @param {RequestInit} init
|
|
66
|
+
* @return {Promise<Uint8Array>}
|
|
67
|
+
*/
|
|
68
|
+
export declare const fetchMaybeGzip: (input: RequestInfo | URL, init?: RequestInit) => Promise<Uint8Array>;
|
|
69
|
+
/**
|
|
70
|
+
* @description: Decode text bytes, trying encodings in order until one holds.
|
|
71
|
+
*
|
|
72
|
+
* A non-fatal `TextDecoder` never throws — invalid sequences silently become
|
|
73
|
+
* U+FFFD — so a legacy-encoded file decodes "successfully" into mojibake. Strict
|
|
74
|
+
* decoding is the only way to tell, so each candidate is tried with
|
|
75
|
+
* `fatal: true` and the last one is the fallback that cannot fail. The default
|
|
76
|
+
* chain covers a UTF-8 BOM, real UTF-8, Chinese "ANSI" exports (GB18030 is a
|
|
77
|
+
* superset of GBK) and finally latin1.
|
|
78
|
+
*
|
|
79
|
+
* Pair with `checkEncoding` when you would rather detect statistically than
|
|
80
|
+
* fall through a fixed list.
|
|
81
|
+
*
|
|
82
|
+
* @param {Uint8Array} bytes
|
|
83
|
+
* @param {string[]} encodings candidates, most specific first
|
|
84
|
+
* @return {string}
|
|
85
|
+
*/
|
|
86
|
+
export declare const decodeTextBytes: (bytes: Uint8Array, encodings?: string[]) => string;
|
|
87
|
+
interface SaveFileOptions {
|
|
88
|
+
/** MIME type for the picker's file-type entry and the Blob. */
|
|
89
|
+
mimeType?: string;
|
|
90
|
+
/** Human-readable type description shown by the save dialog. */
|
|
91
|
+
description?: string;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* @description: Save bytes to disk: a real "Save as" dialog through the File
|
|
95
|
+
* System Access API where it exists, an anchor download everywhere else.
|
|
96
|
+
*
|
|
97
|
+
* Resolves `true` when the file was written, `false` when the user dismissed
|
|
98
|
+
* the picker — a cancel is not an error, and callers that treat it as one end
|
|
99
|
+
* up showing a failure toast for a deliberate action. Anything else rejects.
|
|
100
|
+
*
|
|
101
|
+
* @param {Blob | Uint8Array} data
|
|
102
|
+
* @param {string} fileName
|
|
103
|
+
* @param {SaveFileOptions} options
|
|
104
|
+
* @return {Promise<boolean>} whether the file was written
|
|
105
|
+
*/
|
|
106
|
+
export declare const saveFileToDisk: (data: Blob | Uint8Array, fileName: string, options?: SaveFileOptions) => Promise<boolean>;
|
|
107
|
+
export {};
|
|
@@ -45,6 +45,7 @@ import { computePlacement } from './placement';
|
|
|
45
45
|
import type { ComputePlacementOptions, ComputedPlacement, Placement, PlacementRect } from './placement';
|
|
46
46
|
import type { ResolveLocaleOptions, TextLanguage } from './lang';
|
|
47
47
|
import { readFileAsArrayBuffer, readFileAsDataURL, readFileAsText, readFileAsUint8Array } from './file';
|
|
48
|
+
import { base64ToBytes, bytesToBase64, decodeTextBytes, fetchMaybeGzip, gunzipMaybe, isGzip, isHtmlDocument, isZipContainer, saveFileToDisk } from './binary';
|
|
48
49
|
import { WorkerClient, serveWorker } from './worker';
|
|
49
50
|
import type { ServeWorkerOptions, WorkerClientOptions, WorkerHandlerContext, WorkerRequestBase, WorkerResponseBase } from './worker';
|
|
50
51
|
import { isUrlCached, networkAllowsDownload, prefetchUrl, prefetchUrls, prefetchWhenIdle, whenIdle } from './prefetch';
|
|
@@ -71,5 +72,5 @@ import type { CurrentDevice } from './device';
|
|
|
71
72
|
import { MOBILE_MEDIA_QUERY, currentDevice, isClient, isMobile, isWeiXin, matchMediaQuery, watchMediaQuery } from './device';
|
|
72
73
|
import { Color, ColorScheme, FMT, HEX_COLOR_REGEX, Hsl, Hsla, RGBA_REGEX, RGB_REGEX, Rgb, Rgba, blendMultiply, blendOverlay, blendScreen, brightnessContrast, componentToHex, cosinePalette, hexToAlpha, hexToHsb, hexToHsv, hexToRgb, hsbToHsl, hsbToRgb, hslToHsb, hslToHsv, hslToRgb, hsvToHsl, hsvToRgb, hue2rgb, linearToSrgb, luma, randomColor, rgbToHex, rgbToHsb, rgbToHsl, rgbToHsv, rgbaString, rgbaToHex, rgbaToRgb, saturation, srgbToLinear, vibrance } from '@/utils/color';
|
|
73
74
|
import type { RGB } from '@/utils/color';
|
|
74
|
-
export { performanceTime, timeFormat, timestampToTime, throttle, SyncHook, clearBr, clearStr, isString, randomString, strParse, scriptOnLoad, handleFetchHook, createData, report, QuestQueue, noop, getPerformance, querystring, formatJson, filterObj, merge, replaceOld, mergeExports, perToNum, range, clamp, lerp, inverseLerp, remap, fit, linearstep, smoothstep, Mathjs, mathjs, getStatus, status, Monitor, MimeType, getExtensions, setMime, getMime, memoize, once, isImageSize, convertImageToBase64, handleError, addClassToElement, removeClassToElement, createDocumentFragment, escapeHtml, isClient, isWeiXin, isMobile, debounce, currentDevice, handleConsole, compose, Color, FMT, Hsl, Hsla, Rgb, Rgba, randomColor, hexToRgb, componentToHex, rgbToHex, rgbToHsl, hue2rgb, hslToRgb, rgbToHsb, hsbToRgb, hsvToRgb, hsvToHsl, ColorScheme, AudioRecorder, getCookie, requestUrlToBuffer, getPixelRatio, createObjectURL, getFrame, getAllQueryString, queryFlag, isInIframe, appendUrl, getCookieByName, getWindow, connection, encodeUrl, imageRequest, durationHandler, networkSpeed, TOTP, localStorageGetItem, localStorageSetItem, localStorageRemoveItem, createStore, setFontSize2html, autosizeTextarea, createSpeechRecognizer, isSpeechRecognitionSupported, Chain, create, isEqual, cloneDeep, createSignal, subscribers, getMatchingSentences, transformNumber, toString, addNumSym, checkEncoding, transformText, isSafari, md5, getRandomString, bridgeManager, Client, BridgeManager, PostMessageBridge, MessageCodec, Platform, openPortBridge, acceptPortBridge, createPortBridge, BRIDGE_MARKER, DEFAULT_CHANNEL, singleFlight, WebDB, createHandoff, buildOffsets, paginateText, indexForOffset, segmentByRanges, detectLanguage, navigatorLanguage, resolveLocale, readFileAsArrayBuffer, readFileAsUint8Array, readFileAsText, readFileAsDataURL, WorkerClient, serveWorker, whenIdle, networkAllowsDownload, isUrlCached, prefetchUrl, prefetchUrls, prefetchWhenIdle, deferred, withTimeout, withTimeoutFallback, delay, TimeoutError, createRaceGuard, crc32, inflateRaw, readZipEntries, readZipEntry, zipHasEntry, rewriteZip, createZip, ZIP_STORED, ZIP_DEFLATE, arrayBufferToString, toHalfWidth, toFullWidth, truncate, parseChineseNumber, parseRomanNumber, parseEnglishNumber, MOBILE_MEDIA_QUERY, matchMediaQuery, watchMediaQuery, createLocalePath, setReportUrl, getReportUrl, formatDate, formatDuration, formatRelative, parseVttCueTiming, parseVttTimestamp, handleXhrHook, EventManager, createDoubleTapDetector, quad, cubic, quart, quint, sine, expo, circ, getImage, cutRound, opacity, getMatrix, getAngle, getArcPointerByDeg, getTangentByPointer, fanShapedByArc, roundRectByArc, getLinearGradient, adoptStyles, adoptSheetText, ADOPTED_STYLE_MARKER, ADOPTED_SHEET_MARKER, rgbToHsv, hexToHsb, hexToHsv, hsbToHsl, hslToHsb, hslToHsv, hexToAlpha, rgbaString, rgbaToRgb, rgbaToHex, srgbToLinear, linearToSrgb, luma, blendScreen, blendMultiply, blendOverlay, brightnessContrast, saturation, vibrance, cosinePalette, HEX_COLOR_REGEX, RGB_REGEX, RGBA_REGEX, loadScript, I18nCore, createI18n, useI18n, computePlacement, };
|
|
75
|
+
export { performanceTime, timeFormat, timestampToTime, throttle, SyncHook, clearBr, clearStr, isString, randomString, strParse, scriptOnLoad, handleFetchHook, createData, report, QuestQueue, noop, getPerformance, querystring, formatJson, filterObj, merge, replaceOld, mergeExports, perToNum, range, clamp, lerp, inverseLerp, remap, fit, linearstep, smoothstep, Mathjs, mathjs, getStatus, status, Monitor, MimeType, getExtensions, setMime, getMime, memoize, once, isImageSize, convertImageToBase64, handleError, addClassToElement, removeClassToElement, createDocumentFragment, escapeHtml, isClient, isWeiXin, isMobile, debounce, currentDevice, handleConsole, compose, Color, FMT, Hsl, Hsla, Rgb, Rgba, randomColor, hexToRgb, componentToHex, rgbToHex, rgbToHsl, hue2rgb, hslToRgb, rgbToHsb, hsbToRgb, hsvToRgb, hsvToHsl, ColorScheme, AudioRecorder, getCookie, requestUrlToBuffer, getPixelRatio, createObjectURL, getFrame, getAllQueryString, queryFlag, isInIframe, appendUrl, getCookieByName, getWindow, connection, encodeUrl, imageRequest, durationHandler, networkSpeed, TOTP, localStorageGetItem, localStorageSetItem, localStorageRemoveItem, createStore, setFontSize2html, autosizeTextarea, createSpeechRecognizer, isSpeechRecognitionSupported, Chain, create, isEqual, cloneDeep, createSignal, subscribers, getMatchingSentences, transformNumber, toString, addNumSym, checkEncoding, transformText, isSafari, md5, getRandomString, bridgeManager, Client, BridgeManager, PostMessageBridge, MessageCodec, Platform, openPortBridge, acceptPortBridge, createPortBridge, BRIDGE_MARKER, DEFAULT_CHANNEL, singleFlight, WebDB, createHandoff, buildOffsets, paginateText, indexForOffset, segmentByRanges, detectLanguage, navigatorLanguage, resolveLocale, readFileAsArrayBuffer, readFileAsUint8Array, base64ToBytes, bytesToBase64, decodeTextBytes, fetchMaybeGzip, gunzipMaybe, isGzip, isHtmlDocument, isZipContainer, saveFileToDisk, readFileAsText, readFileAsDataURL, WorkerClient, serveWorker, whenIdle, networkAllowsDownload, isUrlCached, prefetchUrl, prefetchUrls, prefetchWhenIdle, deferred, withTimeout, withTimeoutFallback, delay, TimeoutError, createRaceGuard, crc32, inflateRaw, readZipEntries, readZipEntry, zipHasEntry, rewriteZip, createZip, ZIP_STORED, ZIP_DEFLATE, arrayBufferToString, toHalfWidth, toFullWidth, truncate, parseChineseNumber, parseRomanNumber, parseEnglishNumber, MOBILE_MEDIA_QUERY, matchMediaQuery, watchMediaQuery, createLocalePath, setReportUrl, getReportUrl, formatDate, formatDuration, formatRelative, parseVttCueTiming, parseVttTimestamp, handleXhrHook, EventManager, createDoubleTapDetector, quad, cubic, quart, quint, sine, expo, circ, getImage, cutRound, opacity, getMatrix, getAngle, getArcPointerByDeg, getTangentByPointer, fanShapedByArc, roundRectByArc, getLinearGradient, adoptStyles, adoptSheetText, ADOPTED_STYLE_MARKER, ADOPTED_SHEET_MARKER, rgbToHsv, hexToHsb, hexToHsv, hsbToHsl, hslToHsb, hslToHsv, hexToAlpha, rgbaString, rgbaToRgb, rgbaToHex, srgbToLinear, linearToSrgb, luma, blendScreen, blendMultiply, blendOverlay, brightnessContrast, saturation, vibrance, cosinePalette, HEX_COLOR_REGEX, RGB_REGEX, RGBA_REGEX, loadScript, I18nCore, createI18n, useI18n, computePlacement, };
|
|
75
76
|
export type { RGB, DateInput, FormatRelativeOptions, RelativeStyle, TruncateOptions, TruncatePosition, SpeechError, SpeechErrorKind, SpeechRecognizer, SpeechRecognizerOptions, EasingFn, SpeedType, ImgSource, LoadScriptOptions, I18nConfig, MessageDict, StringValues, LocaleMessages, TranslateParams, LocaleChangeHandler, Debounced, Throttled, BeaconPayload, ReportConfig, LocalePath, LocalePathConfig, LocaleRoute, SingleFlight, IDBCollection, IDBResult, IDBStoreSchema, WebDBOptions, Handoff, HandoffOptions, JsonStore, Deferred, RaceGuard, DoubleTapDetector, DoubleTapDetectorOptions, ZipEntry, RewriteZipOptions, ResolveLocaleOptions, OffsetRange, PaginateOptions, PaginateResult, TextBox, TextGridMetrics, TextPage, Segment, TextLanguage, ServeWorkerOptions, WorkerClientOptions, WorkerHandlerContext, WorkerRequestBase, WorkerResponseBase, WhenIdleOptions, NetworkAllowanceOptions, PrefetchOptions, CurrentDevice, TransformText, MessageHandler, MessageData, PendingRequest, BridgeManagerOptions, BroadcastPayload, CallToPayload, PortBridge, OpenPortBridgeOptions, AcceptPortBridgeOptions, ComputePlacementOptions, ComputedPlacement, Placement, PlacementRect, };
|
package/dist/src/utils/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as s}from"../../enums-BAgbyGdH.js";import{$ as a,A as t,B as n,C as o,D as r,E as m,F as i,G as p,H as f,I as j,J as c,K as l,L as u,M as h,N as
|
|
1
|
+
import{i as s}from"../../enums-BAgbyGdH.js";import{$ as a,A as t,B as n,C as o,D as r,E as m,F as i,G as p,H as f,I as j,J as c,K as l,L as u,M as h,N as x,O as b,P as d,Q as e,R as g,S as k,T as v,U as w,V as y,W as C,X as D,Y as E,Z as S,_ as T,a as _,at as z,b as A,c as B,d as F,et as H,f as I,g as L,h as M,i as N,it as O,j as P,k as R,l as U,m as V,n as q,nt as G,o as J,ot as K,p as Q,q as W,r as X,rt as Y,s as Z,st as $,t as ss,tt as as,u as ts,v as ns,w as os,x as rs,y as ms,z as is}from"../../color-DPV7TsVU.js";import{$ as ps,$t as fs,A as js,At as cs,B as ls,Bt as us,C as hs,Cn as xs,Ct as bs,D as ds,Dn as es,Dt as gs,E as ks,En as vs,Et as ws,F as ys,Ft as Cs,G as Ds,Gt as Es,H as Ss,Ht as Ts,I as _s,It as zs,J as As,Jt as Bs,K as Fs,Kt as Hs,L as Is,Lt as Ls,M as Ms,Mt as Ns,N as Os,Nt as Ps,O as Rs,On as Us,Ot as Vs,P as qs,Pt as Gs,Q as Js,Qt as Ks,R as Qs,Rt as Ws,S as Xs,Sn as Ys,St as Zs,T as $s,Tn as sa,Tt as aa,U as ta,Ut as na,V as oa,Vt as ra,W as ma,Wt as ia,X as pa,Xt as fa,Y as ja,Yt as ca,Z as la,Zt as ua,_ as ha,_n as xa,_t as ba,a as da,an as ea,at as ga,b as ka,bn as va,bt as wa,c as ya,cn as Ca,ct as Da,d as Ea,dn as Sa,dt as Ta,en as _a,et as za,f as Aa,fn as Ba,ft as Fa,g as Ha,gn as Ia,gt as La,h as Ma,hn as Na,ht as Oa,i as Pa,in as Ra,it as Ua,j as Va,jt as qa,k as Ga,kn as Ja,kt as Ka,l as Qa,ln as Wa,lt as Xa,m as Ya,mn as Za,mt as $a,n as st,nn as at,nt as tt,o as nt,on as ot,ot as rt,p as mt,pn as it,pt,q as ft,qt as jt,r as ct,rn as lt,rt as ut,s as ht,sn as xt,st as bt,t as dt,tn as et,tt as gt,u as kt,un as vt,ut as wt,v as yt,vn as Ct,vt as Dt,w as Et,wn as St,wt as Tt,x as _t,xn as zt,xt as At,y as Bt,yn as Ft,yt as Ht,z as It,zt as Lt}from"../../utils-BSvtPyGl.js";import{A as Mt,B as Nt,C as Ot,D as Pt,E as Rt,F as Ut,H as Vt,I as qt,L as Gt,M as Jt,N as Kt,P as Qt,R as Wt,S as Xt,T as Yt,U as Zt,V as $t,_ as sn,a as an,b as tn,c as nn,d as on,f as rn,g as mn,h as pn,i as fn,j as jn,k as cn,l as ln,m as un,n as hn,o as xn,p as bn,r as dn,s as en,t as gn,u as kn,v as vn,w as wn,x as yn,y as Cn,z as Dn}from"../../i18n-Bq-f7htr.js";import{n as En,t as Sn}from"../../chain-CTywmh_H.js";export{ga as ADOPTED_SHEET_MARKER,rt as ADOPTED_STYLE_MARKER,na as AudioRecorder,at as BRIDGE_MARKER,lt as BridgeManager,Sn as Chain,Ra as Client,ss as Color,q as ColorScheme,ea as DEFAULT_CHANNEL,Vs as EventManager,X as FMT,N as HEX_COLOR_REGEX,_ as Hsl,J as Hsla,gn as I18nCore,cn as MOBILE_MEDIA_QUERY,Za as Mathjs,l as MessageCodec,f as MimeType,nt as Monitor,ot as Platform,xt as PostMessageBridge,ct as QuestQueue,Z as RGBA_REGEX,B as RGB_REGEX,U as Rgb,ts as Rgba,s as SyncHook,us as TOTP,Et as TimeoutError,ut as WebDB,_s as WorkerClient,Ma as ZIP_DEFLATE,Ha as ZIP_STORED,Ca as acceptPortBridge,qa as addClassToElement,Na as addNumSym,bt as adoptSheetText,Da as adoptStyles,on as appendUrl,W as arrayBufferToString,Ns as autosizeTextarea,Qs as base64ToBytes,F as blendMultiply,I as blendOverlay,Q as blendScreen,Wa as bridgeManager,V as brightnessContrast,za as buildOffsets,It as bytesToBase64,c as checkEncoding,At as circ,Ia as clamp,E as clearBr,D as clearStr,ia as cloneDeep,M as componentToHex,Lt as compose,la as computePlacement,rn as connection,Xa as convertImageToBase64,L as cosinePalette,ha as crc32,En as create,kt as createData,Ps as createDocumentFragment,Ka as createDoubleTapDetector,Ua as createHandoff,hn as createI18n,Js as createLocalePath,bn as createObjectURL,vt as createPortBridge,$s as createRaceGuard,ra as createSignal,Ba as createSpeechRecognizer,en as createStore,yt as createZip,Zs as cubic,Mt as currentDevice,wt as cutRound,Ls as debounce,ls as decodeTextBytes,ks as deferred,ds as delay,fn as detectLanguage,un as durationHandler,pn as encodeUrl,Gs as escapeHtml,bs as expo,Oa as fanShapedByArc,oa as fetchMaybeGzip,Es as filterObj,xa as fit,qt as formatDate,Gt as formatDuration,Hs as formatJson,Wt as formatRelative,mn as getAllQueryString,La as getAngle,ba as getArcPointerByDeg,sn as getCookie,vn as getCookieByName,w as getExtensions,Cn as getFrame,Ta as getImage,Dt as getLinearGradient,S as getMatchingSentences,Fa as getMatrix,C as getMime,Ya as getPerformance,tn as getPixelRatio,e as getRandomString,Ea as getReportUrl,Pa as getStatus,Ht as getTangentByPointer,yn as getWindow,Ss as gunzipMaybe,Ws as handleConsole,cs as handleError,ya as handleFetchHook,Qa as handleXhrHook,T as hexToAlpha,ns as hexToHsb,ms as hexToHsv,A as hexToRgb,rs as hsbToHsl,k as hsbToRgb,o as hslToHsb,os as hslToHsv,v as hslToRgb,m as hsvToHsl,r as hsvToRgb,b as hue2rgb,Xt as imageRequest,gt as indexForOffset,Bt as inflateRaw,Ct as inverseLerp,jn as isClient,jt as isEqual,ta as isGzip,ma as isHtmlDocument,pt as isImageSize,Ot as isInIframe,Jt as isMobile,wn as isSafari,it as isSpeechRecognitionSupported,a as isString,js as isUrlCached,Kt as isWeiXin,Ds as isZipContainer,Ft as lerp,R as linearToSrgb,va as linearstep,dt as loadScript,nn as localStorageGetItem,ln as localStorageRemoveItem,kn as localStorageSetItem,t as luma,Qt as matchMediaQuery,zt as mathjs,H as md5,fs as memoize,Bs as merge,ca as mergeExports,an as navigatorLanguage,Va as networkAllowsDownload,Yt as networkSpeed,Ks as noop,_a as once,$a as opacity,Sa as openPortBridge,ps as paginateText,Ys as parseChineseNumber,xs as parseEnglishNumber,St as parseRomanNumber,Dn as parseVttCueTiming,Nt as parseVttTimestamp,sa as perToNum,$t as performanceTime,Ms as prefetchUrl,Os as prefetchUrls,qs as prefetchWhenIdle,Tt as quad,aa as quart,Rt as queryFlag,fa as querystring,ws as quint,P as randomColor,as as randomString,vs as range,ft as readFileAsArrayBuffer,As as readFileAsDataURL,ja as readFileAsText,pa as readFileAsUint8Array,ka as readZipEntries,_t as readZipEntry,es as remap,Cs as removeClassToElement,ua as replaceOld,Aa as report,Pt as requestUrlToBuffer,xn as resolveLocale,Xs as rewriteZip,h as rgbToHex,x as rgbToHsb,d as rgbToHsl,i as rgbToHsv,j as rgbaString,u as rgbaToHex,g as rgbaToRgb,wa as roundRectByArc,is as saturation,Fs as saveFileToDisk,st as scriptOnLoad,tt as segmentByRanges,Is as serveWorker,zs as setFontSize2html,p as setMime,mt as setReportUrl,gs as sine,et as singleFlight,Us as smoothstep,n as srgbToLinear,da as status,G as strParse,Ts as subscribers,ht as throttle,Vt as timeFormat,Zt as timestampToTime,Y as toFullWidth,O as toHalfWidth,z as toString,Ja as transformNumber,K as transformText,$ as truncate,dn as useI18n,y as vibrance,Ut as watchMediaQuery,ys as whenIdle,Rs as withTimeout,Ga as withTimeoutFallback,hs as zipHasEntry};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|