aberdeen 1.13.0 → 1.14.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/dist/src/aberdeen.d.ts +15 -0
- package/dist/src/aberdeen.js +40 -15
- package/dist/src/aberdeen.js.map +3 -3
- package/dist/tests/fakedom.js +6 -6
- package/dist/tests/fakedom.js.map +3 -3
- package/dist/tests/helpers.js +6 -6
- package/dist/tests/helpers.js.map +3 -3
- package/dist-docs/Tutorial/index.html +2 -2
- package/dist-docs/aberdeen/A/index.html +2 -2
- package/dist-docs/aberdeen/CUSTOM_DUMP/index.html +7 -0
- package/dist-docs/aberdeen/NO_COPY/index.html +2 -2
- package/dist-docs/aberdeen/OPAQUE/index.html +2 -2
- package/dist-docs/aberdeen/PromiseProxy/index.html +5 -5
- package/dist-docs/aberdeen/clean/index.html +2 -2
- package/dist-docs/aberdeen/clone/index.html +2 -2
- package/dist-docs/aberdeen/copy/index.html +3 -3
- package/dist-docs/aberdeen/count/index.html +2 -2
- package/dist-docs/aberdeen/cssVars/index.html +2 -2
- package/dist-docs/aberdeen/darkMode/index.html +2 -2
- package/dist-docs/aberdeen/default/index.html +5 -2
- package/dist-docs/aberdeen/derive/index.html +2 -2
- package/dist-docs/aberdeen/disableCreateDestroy/index.html +2 -2
- package/dist-docs/aberdeen/dump/index.html +2 -2
- package/dist-docs/aberdeen/index.html +5 -2
- package/dist-docs/aberdeen/insertCss/index.html +2 -2
- package/dist-docs/aberdeen/insertGlobalCss/index.html +2 -2
- package/dist-docs/aberdeen/invertString/index.html +2 -2
- package/dist-docs/aberdeen/isEmpty/index.html +2 -2
- package/dist-docs/aberdeen/map/index.html +4 -4
- package/dist-docs/aberdeen/merge/index.html +3 -3
- package/dist-docs/aberdeen/mount/index.html +2 -2
- package/dist-docs/aberdeen/multiMap/index.html +4 -4
- package/dist-docs/aberdeen/onEach/index.html +2 -2
- package/dist-docs/aberdeen/partition/index.html +4 -4
- package/dist-docs/aberdeen/peek/index.html +5 -5
- package/dist-docs/aberdeen/proxy/index.html +2 -2
- package/dist-docs/aberdeen/ref/index.html +2 -2
- package/dist-docs/aberdeen/runQueue/index.html +2 -2
- package/dist-docs/aberdeen/setErrorHandler/index.html +2 -2
- package/dist-docs/aberdeen/setSpacingCssVars/index.html +2 -2
- package/dist-docs/aberdeen/unmountAll/index.html +2 -2
- package/dist-docs/aberdeen/unproxy/index.html +2 -2
- package/dist-docs/assets/aberdeen/aberdeen.d.ts +15 -0
- package/dist-docs/assets/aberdeen/aberdeen.js +40 -15
- package/dist-docs/assets/aberdeen/aberdeen.js.map +3 -3
- package/dist-docs/assets/navigation.js +1 -1
- package/dist-docs/assets/search.js +1 -1
- package/dist-docs/dispatcher/Dispatcher/index.html +4 -4
- package/dist-docs/dispatcher/MATCH_FAILED/index.html +2 -2
- package/dist-docs/dispatcher/MATCH_REST/index.html +2 -2
- package/dist-docs/dispatcher/index.html +2 -2
- package/dist-docs/hierarchy.html +1 -1
- package/dist-docs/index.html +2 -2
- package/dist-docs/media/CHANGELOG.md +7 -0
- package/dist-docs/modules.html +1 -1
- package/dist-docs/prediction/applyCanon/index.html +2 -2
- package/dist-docs/prediction/applyPrediction/index.html +2 -2
- package/dist-docs/prediction/index.html +2 -2
- package/dist-docs/route/Route/index.html +9 -9
- package/dist-docs/route/back/index.html +2 -2
- package/dist-docs/route/current/index.html +2 -2
- package/dist-docs/route/go/index.html +2 -2
- package/dist-docs/route/index.html +2 -2
- package/dist-docs/route/interceptLinks/index.html +2 -2
- package/dist-docs/route/persistScroll/index.html +2 -2
- package/dist-docs/route/push/index.html +2 -2
- package/dist-docs/route/setLog/index.html +2 -2
- package/dist-docs/route/up/index.html +2 -2
- package/dist-docs/sitemap.xml +61 -57
- package/dist-docs/transitions/grow/index.html +2 -2
- package/dist-docs/transitions/index.html +2 -2
- package/dist-docs/transitions/shrink/index.html +2 -2
- package/package.json +13 -13
- package/skill/aberdeen.md +82 -53
- package/skill/dispatcher.md +6 -6
- package/skill/prediction.md +3 -3
- package/skill/route.md +17 -17
- package/skill/transitions.md +3 -3
- package/src/aberdeen.ts +58 -16
package/dist/src/aberdeen.d.ts
CHANGED
|
@@ -896,6 +896,20 @@ export declare function partition<IN_K extends string | number | symbol, OUT_K e
|
|
|
896
896
|
* ```
|
|
897
897
|
*/
|
|
898
898
|
export declare function dump<T>(data: T): T;
|
|
899
|
+
/**
|
|
900
|
+
* When set on an object or its prototype chain, {@link dump} calls this as a render function
|
|
901
|
+
* (with the object as `this`) instead of its default recursive rendering. When `false` this
|
|
902
|
+
* inhibits `dump` from rendering object properties.
|
|
903
|
+
*
|
|
904
|
+
* @example
|
|
905
|
+
* ```typescript
|
|
906
|
+
* class Color {
|
|
907
|
+
* constructor(public r: number, public g: number, public b: number) {}
|
|
908
|
+
* [CUSTOM_DUMP]() { A(`#rgb(${this.r}, ${this.g}, ${this.b})`); }
|
|
909
|
+
* }
|
|
910
|
+
* ```
|
|
911
|
+
*/
|
|
912
|
+
export declare const CUSTOM_DUMP: unique symbol;
|
|
899
913
|
/**
|
|
900
914
|
* The main Aberdeen API. `A` is itself a callable function for building reactive DOM trees
|
|
901
915
|
* (creating elements, setting attributes, adding content). All other Aberdeen functions and
|
|
@@ -918,6 +932,7 @@ declare const _default: typeof A & {
|
|
|
918
932
|
/** {@inheritDoc copy} */ copy: typeof copy;
|
|
919
933
|
/** {@inheritDoc count} */ count: typeof count;
|
|
920
934
|
/** {@inheritDoc cssVars} */ cssVars: Record<string, string>;
|
|
935
|
+
/** {@inheritDoc CUSTOM_DUMP} */ CUSTOM_DUMP: symbol;
|
|
921
936
|
/** {@inheritDoc darkMode} */ darkMode: typeof darkMode;
|
|
922
937
|
/** {@inheritDoc derive} */ derive: typeof derive;
|
|
923
938
|
/** {@inheritDoc disableCreateDestroy} */ disableCreateDestroy: typeof disableCreateDestroy;
|
package/dist/src/aberdeen.js
CHANGED
|
@@ -981,7 +981,7 @@ var setHandler = {
|
|
|
981
981
|
};
|
|
982
982
|
var proxyMap = new WeakMap;
|
|
983
983
|
function optProxy(value) {
|
|
984
|
-
if (typeof value !== "object" || !value || value[TARGET_SYMBOL] !== undefined || value[OPAQUE]) {
|
|
984
|
+
if (typeof value !== "object" || !value || value[TARGET_SYMBOL] !== undefined || value[OPAQUE] || value instanceof Date) {
|
|
985
985
|
return value;
|
|
986
986
|
}
|
|
987
987
|
let proxied = proxyMap.get(value);
|
|
@@ -1733,26 +1733,49 @@ function partition(source, func) {
|
|
|
1733
1733
|
return out;
|
|
1734
1734
|
}
|
|
1735
1735
|
function dump(data) {
|
|
1736
|
+
const org = dumpSeen;
|
|
1737
|
+
dumpSeen ||= new Set;
|
|
1738
|
+
try {
|
|
1739
|
+
rawDump(data, dumpSeen);
|
|
1740
|
+
} finally {
|
|
1741
|
+
dumpSeen = org;
|
|
1742
|
+
}
|
|
1743
|
+
return data;
|
|
1744
|
+
}
|
|
1745
|
+
var dumpSeen;
|
|
1746
|
+
function rawDump(data, seen) {
|
|
1736
1747
|
if (data && typeof data === "object") {
|
|
1737
|
-
const name = data.constructor.name
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
}
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1748
|
+
const name = data.constructor.name || "unknown object";
|
|
1749
|
+
if (seen.has(data)) {
|
|
1750
|
+
A(`#<${name}: circular reference>`);
|
|
1751
|
+
return;
|
|
1752
|
+
}
|
|
1753
|
+
seen.add(data);
|
|
1754
|
+
const customDump = data[CUSTOM_DUMP];
|
|
1755
|
+
if (customDump !== undefined) {
|
|
1756
|
+
if (typeof customDump === "function")
|
|
1757
|
+
customDump.call(data, seen);
|
|
1758
|
+
return;
|
|
1759
|
+
}
|
|
1760
|
+
A(`#<${name}>`, "ul", () => {
|
|
1761
|
+
onEach(data, (value, key) => {
|
|
1762
|
+
A("li", () => {
|
|
1763
|
+
if (!(data instanceof Array))
|
|
1745
1764
|
A(`#${JSON.stringify(key)}: `);
|
|
1746
|
-
|
|
1747
|
-
});
|
|
1765
|
+
rawDump(value, seen);
|
|
1748
1766
|
});
|
|
1749
1767
|
});
|
|
1750
|
-
}
|
|
1751
|
-
} else if (data
|
|
1768
|
+
});
|
|
1769
|
+
} else if (data === undefined) {
|
|
1770
|
+
A("#undefined");
|
|
1771
|
+
} else {
|
|
1752
1772
|
A("#" + JSON.stringify(data));
|
|
1753
1773
|
}
|
|
1754
|
-
return data;
|
|
1755
1774
|
}
|
|
1775
|
+
var CUSTOM_DUMP = Symbol("CUSTOM_DUMP");
|
|
1776
|
+
Date.prototype[CUSTOM_DUMP] = function() {
|
|
1777
|
+
A("#<Date> " + this.toISOString());
|
|
1778
|
+
};
|
|
1756
1779
|
function internalError(code) {
|
|
1757
1780
|
throw new Error(`Aberdeen internal error ${code}`);
|
|
1758
1781
|
}
|
|
@@ -1810,6 +1833,7 @@ var aberdeen_default = Object.assign(A, {
|
|
|
1810
1833
|
copy,
|
|
1811
1834
|
count,
|
|
1812
1835
|
cssVars,
|
|
1836
|
+
CUSTOM_DUMP,
|
|
1813
1837
|
darkMode,
|
|
1814
1838
|
derive,
|
|
1815
1839
|
disableCreateDestroy,
|
|
@@ -1871,8 +1895,9 @@ export {
|
|
|
1871
1895
|
NO_COPY,
|
|
1872
1896
|
MAP_SIZE_SYMBOL,
|
|
1873
1897
|
EMPTY,
|
|
1898
|
+
CUSTOM_DUMP,
|
|
1874
1899
|
A
|
|
1875
1900
|
};
|
|
1876
1901
|
|
|
1877
|
-
//# debugId=
|
|
1902
|
+
//# debugId=34A0CA77D4CA212064756E2164756E21
|
|
1878
1903
|
//# sourceMappingURL=aberdeen.js.map
|