@zag-js/stringify-state 0.0.0-dev-20240723090825 → 0.0.0-v1-beta-20250220125322
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/index.js +15 -43
- package/dist/index.mjs +8 -7
- package/package.json +2 -2
- package/dist/index.js.map +0 -1
- package/dist/index.mjs.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,40 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
var __export = (target, all) => {
|
|
9
|
-
for (var name in all)
|
|
10
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
-
};
|
|
12
|
-
var __copyProps = (to, from, except, desc) => {
|
|
13
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
-
for (let key of __getOwnPropNames(from))
|
|
15
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
-
}
|
|
18
|
-
return to;
|
|
19
|
-
};
|
|
20
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
-
mod
|
|
27
|
-
));
|
|
28
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var formatHighlight = require('json-format-highlight');
|
|
4
|
+
|
|
5
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
6
|
+
|
|
7
|
+
var formatHighlight__default = /*#__PURE__*/_interopDefault(formatHighlight);
|
|
29
8
|
|
|
30
9
|
// src/index.ts
|
|
31
|
-
var src_exports = {};
|
|
32
|
-
__export(src_exports, {
|
|
33
|
-
highlightState: () => highlightState,
|
|
34
|
-
stringifyState: () => stringifyState
|
|
35
|
-
});
|
|
36
|
-
module.exports = __toCommonJS(src_exports);
|
|
37
|
-
var import_json_format_highlight = __toESM(require("json-format-highlight"));
|
|
38
10
|
var pick = (obj, keys) => Object.fromEntries(keys.filter((key) => key in obj).map((key) => [key, obj[key]]));
|
|
39
11
|
var hasProp = (v, prop) => Object.prototype.hasOwnProperty.call(v, prop);
|
|
40
12
|
var isTimeObject = (v) => hasProp(v, "hour") && hasProp(v, "minute") && hasProp(v, "second");
|
|
@@ -51,7 +23,10 @@ function stringifyState(state, omit) {
|
|
|
51
23
|
if (hasProp(value, "calendar") || isTimeObject(value)) {
|
|
52
24
|
return value.toString();
|
|
53
25
|
}
|
|
54
|
-
if (value?.
|
|
26
|
+
if (typeof value?.json === "function") {
|
|
27
|
+
return value.json();
|
|
28
|
+
}
|
|
29
|
+
if (typeof value?.toJSON === "function") {
|
|
55
30
|
return value.toJSON();
|
|
56
31
|
}
|
|
57
32
|
if (Number.isNaN(value)) {
|
|
@@ -87,11 +62,8 @@ function stringifyState(state, omit) {
|
|
|
87
62
|
return code;
|
|
88
63
|
}
|
|
89
64
|
function highlightState(state, omit) {
|
|
90
|
-
return
|
|
65
|
+
return formatHighlight__default.default(stringifyState(state, omit));
|
|
91
66
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
stringifyState
|
|
96
|
-
});
|
|
97
|
-
//# sourceMappingURL=index.js.map
|
|
67
|
+
|
|
68
|
+
exports.highlightState = highlightState;
|
|
69
|
+
exports.stringifyState = stringifyState;
|
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import formatHighlight from 'json-format-highlight';
|
|
2
|
+
|
|
1
3
|
// src/index.ts
|
|
2
|
-
import formatHighlight from "json-format-highlight";
|
|
3
4
|
var pick = (obj, keys) => Object.fromEntries(keys.filter((key) => key in obj).map((key) => [key, obj[key]]));
|
|
4
5
|
var hasProp = (v, prop) => Object.prototype.hasOwnProperty.call(v, prop);
|
|
5
6
|
var isTimeObject = (v) => hasProp(v, "hour") && hasProp(v, "minute") && hasProp(v, "second");
|
|
@@ -16,7 +17,10 @@ function stringifyState(state, omit) {
|
|
|
16
17
|
if (hasProp(value, "calendar") || isTimeObject(value)) {
|
|
17
18
|
return value.toString();
|
|
18
19
|
}
|
|
19
|
-
if (value?.
|
|
20
|
+
if (typeof value?.json === "function") {
|
|
21
|
+
return value.json();
|
|
22
|
+
}
|
|
23
|
+
if (typeof value?.toJSON === "function") {
|
|
20
24
|
return value.toJSON();
|
|
21
25
|
}
|
|
22
26
|
if (Number.isNaN(value)) {
|
|
@@ -54,8 +58,5 @@ function stringifyState(state, omit) {
|
|
|
54
58
|
function highlightState(state, omit) {
|
|
55
59
|
return formatHighlight(stringifyState(state, omit));
|
|
56
60
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
stringifyState
|
|
60
|
-
};
|
|
61
|
-
//# sourceMappingURL=index.mjs.map
|
|
61
|
+
|
|
62
|
+
export { highlightState, stringifyState };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zag-js/stringify-state",
|
|
3
|
-
"version": "0.0.0-
|
|
3
|
+
"version": "0.0.0-v1-beta-20250220125322",
|
|
4
4
|
"description": "Helper to stringify state of Zag machines",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"js",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
},
|
|
44
44
|
"scripts": {
|
|
45
45
|
"build": "tsup",
|
|
46
|
-
"lint": "eslint src
|
|
46
|
+
"lint": "eslint src",
|
|
47
47
|
"typecheck": "tsc --noEmit"
|
|
48
48
|
}
|
|
49
49
|
}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import formatHighlight from \"json-format-highlight\"\n\ninterface Dict {\n [key: string]: any\n}\n\nconst pick = (obj: Dict, keys: string[]) =>\n Object.fromEntries(keys.filter((key) => key in obj).map((key) => [key, obj[key]]))\n\nconst hasProp = (v: any, prop: string) => Object.prototype.hasOwnProperty.call(v, prop)\n\nconst isTimeObject = (v: any) => hasProp(v, \"hour\") && hasProp(v, \"minute\") && hasProp(v, \"second\")\n\nexport function stringifyState(state: Dict, omit?: string[]) {\n const code = JSON.stringify(\n state,\n (key, value) => {\n try {\n if (hasProp(value, \"target\") && hasProp(value, \"timeStamp\"))\n return pick(value, [\"type\", \"target\", \"currentTarget\", \"relatedTarget\"])\n\n if (omit?.includes(key)) {\n return undefined\n }\n\n if (hasProp(value, \"calendar\") || isTimeObject(value)) {\n return value.toString()\n }\n\n if (value?.toJSON) {\n return value.toJSON()\n }\n\n if (Number.isNaN(value)) {\n return \"NaN\"\n }\n\n if (value instanceof File) {\n return value.name\n }\n\n if (value instanceof Set) {\n return Array.from(value)\n }\n\n switch (value?.toString()) {\n case \"[object Machine]\":\n const id = value.state.context.id ?? value.id\n return `Machine: ${id}`\n\n case \"[object ShadowRoot]\":\n return \"#shadow-root\"\n\n case \"[object HTMLDocument]\":\n return \"#document\"\n\n case \"[object Window]\":\n return \"#window\"\n\n case \"[object AbortController]\":\n return \"#abort-controller\"\n\n default:\n return value !== null && typeof value === \"object\" && value.nodeType === 1 ? value.tagName : value\n }\n } catch {\n return value\n }\n },\n 4,\n )\n\n return code\n}\n\nexport function highlightState(state: Dict, omit?: string[]) {\n return formatHighlight(stringifyState(state, omit))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mCAA4B;AAM5B,IAAM,OAAO,CAAC,KAAW,SACvB,OAAO,YAAY,KAAK,OAAO,CAAC,QAAQ,OAAO,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC;AAEnF,IAAM,UAAU,CAAC,GAAQ,SAAiB,OAAO,UAAU,eAAe,KAAK,GAAG,IAAI;AAEtF,IAAM,eAAe,CAAC,MAAW,QAAQ,GAAG,MAAM,KAAK,QAAQ,GAAG,QAAQ,KAAK,QAAQ,GAAG,QAAQ;AAE3F,SAAS,eAAe,OAAa,MAAiB;AAC3D,QAAM,OAAO,KAAK;AAAA,IAChB;AAAA,IACA,CAAC,KAAK,UAAU;AACd,UAAI;AACF,YAAI,QAAQ,OAAO,QAAQ,KAAK,QAAQ,OAAO,WAAW;AACxD,iBAAO,KAAK,OAAO,CAAC,QAAQ,UAAU,iBAAiB,eAAe,CAAC;AAEzE,YAAI,MAAM,SAAS,GAAG,GAAG;AACvB,iBAAO;AAAA,QACT;AAEA,YAAI,QAAQ,OAAO,UAAU,KAAK,aAAa,KAAK,GAAG;AACrD,iBAAO,MAAM,SAAS;AAAA,QACxB;AAEA,YAAI,OAAO,QAAQ;AACjB,iBAAO,MAAM,OAAO;AAAA,QACtB;AAEA,YAAI,OAAO,MAAM,KAAK,GAAG;AACvB,iBAAO;AAAA,QACT;AAEA,YAAI,iBAAiB,MAAM;AACzB,iBAAO,MAAM;AAAA,QACf;AAEA,YAAI,iBAAiB,KAAK;AACxB,iBAAO,MAAM,KAAK,KAAK;AAAA,QACzB;AAEA,gBAAQ,OAAO,SAAS,GAAG;AAAA,UACzB,KAAK;AACH,kBAAM,KAAK,MAAM,MAAM,QAAQ,MAAM,MAAM;AAC3C,mBAAO,YAAY,EAAE;AAAA,UAEvB,KAAK;AACH,mBAAO;AAAA,UAET,KAAK;AACH,mBAAO;AAAA,UAET,KAAK;AACH,mBAAO;AAAA,UAET,KAAK;AACH,mBAAO;AAAA,UAET;AACE,mBAAO,UAAU,QAAQ,OAAO,UAAU,YAAY,MAAM,aAAa,IAAI,MAAM,UAAU;AAAA,QACjG;AAAA,MACF,QAAQ;AACN,eAAO;AAAA,MACT;AAAA,IACF;AAAA,IACA;AAAA,EACF;AAEA,SAAO;AACT;AAEO,SAAS,eAAe,OAAa,MAAiB;AAC3D,aAAO,6BAAAA,SAAgB,eAAe,OAAO,IAAI,CAAC;AACpD;","names":["formatHighlight"]}
|
package/dist/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import formatHighlight from \"json-format-highlight\"\n\ninterface Dict {\n [key: string]: any\n}\n\nconst pick = (obj: Dict, keys: string[]) =>\n Object.fromEntries(keys.filter((key) => key in obj).map((key) => [key, obj[key]]))\n\nconst hasProp = (v: any, prop: string) => Object.prototype.hasOwnProperty.call(v, prop)\n\nconst isTimeObject = (v: any) => hasProp(v, \"hour\") && hasProp(v, \"minute\") && hasProp(v, \"second\")\n\nexport function stringifyState(state: Dict, omit?: string[]) {\n const code = JSON.stringify(\n state,\n (key, value) => {\n try {\n if (hasProp(value, \"target\") && hasProp(value, \"timeStamp\"))\n return pick(value, [\"type\", \"target\", \"currentTarget\", \"relatedTarget\"])\n\n if (omit?.includes(key)) {\n return undefined\n }\n\n if (hasProp(value, \"calendar\") || isTimeObject(value)) {\n return value.toString()\n }\n\n if (value?.toJSON) {\n return value.toJSON()\n }\n\n if (Number.isNaN(value)) {\n return \"NaN\"\n }\n\n if (value instanceof File) {\n return value.name\n }\n\n if (value instanceof Set) {\n return Array.from(value)\n }\n\n switch (value?.toString()) {\n case \"[object Machine]\":\n const id = value.state.context.id ?? value.id\n return `Machine: ${id}`\n\n case \"[object ShadowRoot]\":\n return \"#shadow-root\"\n\n case \"[object HTMLDocument]\":\n return \"#document\"\n\n case \"[object Window]\":\n return \"#window\"\n\n case \"[object AbortController]\":\n return \"#abort-controller\"\n\n default:\n return value !== null && typeof value === \"object\" && value.nodeType === 1 ? value.tagName : value\n }\n } catch {\n return value\n }\n },\n 4,\n )\n\n return code\n}\n\nexport function highlightState(state: Dict, omit?: string[]) {\n return formatHighlight(stringifyState(state, omit))\n}\n"],"mappings":";AAAA,OAAO,qBAAqB;AAM5B,IAAM,OAAO,CAAC,KAAW,SACvB,OAAO,YAAY,KAAK,OAAO,CAAC,QAAQ,OAAO,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC,CAAC;AAEnF,IAAM,UAAU,CAAC,GAAQ,SAAiB,OAAO,UAAU,eAAe,KAAK,GAAG,IAAI;AAEtF,IAAM,eAAe,CAAC,MAAW,QAAQ,GAAG,MAAM,KAAK,QAAQ,GAAG,QAAQ,KAAK,QAAQ,GAAG,QAAQ;AAE3F,SAAS,eAAe,OAAa,MAAiB;AAC3D,QAAM,OAAO,KAAK;AAAA,IAChB;AAAA,IACA,CAAC,KAAK,UAAU;AACd,UAAI;AACF,YAAI,QAAQ,OAAO,QAAQ,KAAK,QAAQ,OAAO,WAAW;AACxD,iBAAO,KAAK,OAAO,CAAC,QAAQ,UAAU,iBAAiB,eAAe,CAAC;AAEzE,YAAI,MAAM,SAAS,GAAG,GAAG;AACvB,iBAAO;AAAA,QACT;AAEA,YAAI,QAAQ,OAAO,UAAU,KAAK,aAAa,KAAK,GAAG;AACrD,iBAAO,MAAM,SAAS;AAAA,QACxB;AAEA,YAAI,OAAO,QAAQ;AACjB,iBAAO,MAAM,OAAO;AAAA,QACtB;AAEA,YAAI,OAAO,MAAM,KAAK,GAAG;AACvB,iBAAO;AAAA,QACT;AAEA,YAAI,iBAAiB,MAAM;AACzB,iBAAO,MAAM;AAAA,QACf;AAEA,YAAI,iBAAiB,KAAK;AACxB,iBAAO,MAAM,KAAK,KAAK;AAAA,QACzB;AAEA,gBAAQ,OAAO,SAAS,GAAG;AAAA,UACzB,KAAK;AACH,kBAAM,KAAK,MAAM,MAAM,QAAQ,MAAM,MAAM;AAC3C,mBAAO,YAAY,EAAE;AAAA,UAEvB,KAAK;AACH,mBAAO;AAAA,UAET,KAAK;AACH,mBAAO;AAAA,UAET,KAAK;AACH,mBAAO;AAAA,UAET,KAAK;AACH,mBAAO;AAAA,UAET;AACE,mBAAO,UAAU,QAAQ,OAAO,UAAU,YAAY,MAAM,aAAa,IAAI,MAAM,UAAU;AAAA,QACjG;AAAA,MACF,QAAQ;AACN,eAAO;AAAA,MACT;AAAA,IACF;AAAA,IACA;AAAA,EACF;AAEA,SAAO;AACT;AAEO,SAAS,eAAe,OAAa,MAAiB;AAC3D,SAAO,gBAAgB,eAAe,OAAO,IAAI,CAAC;AACpD;","names":[]}
|