creo 0.0.2 → 0.0.4-dev
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/.env.development +1 -0
- package/.github/workflows/main.yml +24 -0
- package/README.md +1 -52
- package/TODOS.md +2 -0
- package/index.html +13 -0
- package/index.ts +1 -0
- package/package.json +12 -44
- package/src/DOM/Context.ts +36 -0
- package/src/DOM/DomEngine.ts +106 -0
- package/src/DOM/IRenderCycle.ts +9 -0
- package/src/DOM/Key.ts +1 -0
- package/src/DOM/Node.ts +472 -0
- package/src/DOM/Registry.ts +53 -0
- package/src/creo.ts +134 -0
- package/src/data-structures/assert/assert.ts +12 -0
- package/src/data-structures/indexed-map/IndexedMap.ts +281 -0
- package/src/data-structures/linked-map/LinkedMap.spec.ts +67 -0
- package/src/data-structures/linked-map/LinkedMap.ts +198 -0
- package/src/data-structures/list/List.spec.ts +181 -0
- package/src/data-structures/list/List.ts +195 -0
- package/src/data-structures/maybe/Maybe.ts +25 -0
- package/src/data-structures/null/null.ts +3 -0
- package/src/data-structures/record/IsRecordLike.spec.ts +29 -0
- package/src/data-structures/record/IsRecordLike.ts +3 -0
- package/src/data-structures/record/Record.spec.ts +240 -0
- package/src/data-structures/record/Record.ts +145 -0
- package/src/data-structures/shalllowEqual/shallowEqual.ts +26 -0
- package/src/data-structures/simpleKey/simpleKey.ts +8 -0
- package/src/data-structures/wildcard/wildcard.ts +1 -0
- package/src/examples/SimpleTodoList/SimpleTodoList.ts +53 -0
- package/src/examples/simple.ts +0 -0
- package/src/globals.d.ts +1 -0
- package/src/main.ts +24 -0
- package/src/style.css +41 -0
- package/src/ui/html/Block.ts +10 -0
- package/src/ui/html/Button.ts +12 -0
- package/src/ui/html/HStack.ts +10 -0
- package/src/ui/html/Inline.ts +12 -0
- package/src/ui/html/List.ts +10 -0
- package/src/ui/html/Text.ts +9 -0
- package/src/ui/html/VStack.ts +11 -0
- package/src/vite-env.d.ts +1 -0
- package/tsconfig.json +23 -0
- package/vite.config.js +10 -0
- package/LICENSE +0 -21
- package/dist/index.cjs +0 -54
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.ts +0 -19
- package/dist/index.js +0 -51
- package/dist/index.js.map +0 -1
- package/dist/index.mjs +0 -51
- package/dist/index.mjs.map +0 -1
- package/dist/index.umd.js +0 -61
- package/dist/index.umd.js.map +0 -1
package/dist/index.umd.js
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
|
4
|
-
(global = global || self, factory(global["@duorun/maybe"] = {}));
|
|
5
|
-
})(this, (function (exports) {
|
|
6
|
-
var id = 0;
|
|
7
|
-
function _classPrivateFieldLooseKey(name) {
|
|
8
|
-
return "__private_" + id++ + "_" + name;
|
|
9
|
-
}
|
|
10
|
-
function _classPrivateFieldLooseBase(receiver, privateKey) {
|
|
11
|
-
if (!Object.prototype.hasOwnProperty.call(receiver, privateKey)) {
|
|
12
|
-
throw new TypeError("attempted to use private field on non-instance");
|
|
13
|
-
}
|
|
14
|
-
return receiver;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
const JUST = true;
|
|
18
|
-
const NONE = false;
|
|
19
|
-
var _type = /*#__PURE__*/_classPrivateFieldLooseKey("type");
|
|
20
|
-
var _value = /*#__PURE__*/_classPrivateFieldLooseKey("value");
|
|
21
|
-
class CMaybe {
|
|
22
|
-
constructor(type, value) {
|
|
23
|
-
Object.defineProperty(this, _type, {
|
|
24
|
-
writable: true,
|
|
25
|
-
value: void 0
|
|
26
|
-
});
|
|
27
|
-
Object.defineProperty(this, _value, {
|
|
28
|
-
writable: true,
|
|
29
|
-
value: void 0
|
|
30
|
-
});
|
|
31
|
-
_classPrivateFieldLooseBase(this, _type)[_type] = type;
|
|
32
|
-
_classPrivateFieldLooseBase(this, _value)[_value] = value;
|
|
33
|
-
}
|
|
34
|
-
get value() {
|
|
35
|
-
return _classPrivateFieldLooseBase(this, _value)[_value];
|
|
36
|
-
}
|
|
37
|
-
isNone() {
|
|
38
|
-
return _classPrivateFieldLooseBase(this, _type)[_type] === NONE;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
function just(value) {
|
|
42
|
-
return new CMaybe(JUST, value);
|
|
43
|
-
}
|
|
44
|
-
function none() {
|
|
45
|
-
// @ts-expect-error We ignore here as maybe.value will never be accessible at this point
|
|
46
|
-
return new CMaybe(NONE, undefined);
|
|
47
|
-
}
|
|
48
|
-
function isNone(maybe) {
|
|
49
|
-
return maybe.isNone();
|
|
50
|
-
}
|
|
51
|
-
function isJust(maybe) {
|
|
52
|
-
return !maybe.isNone();
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
exports.isJust = isJust;
|
|
56
|
-
exports.isNone = isNone;
|
|
57
|
-
exports.just = just;
|
|
58
|
-
exports.none = none;
|
|
59
|
-
|
|
60
|
-
}));
|
|
61
|
-
//# sourceMappingURL=index.umd.js.map
|
package/dist/index.umd.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.umd.js","sources":["../index.ts"],"sourcesContent":["const JUST = true as const;\ntype TJust = typeof JUST;\nconst NONE = false as const;\ntype TNone = typeof NONE;\ntype STATE = TJust | TNone;\n\nclass CMaybe<TValue, TState extends STATE = STATE> {\n #type: TState;\n #value: TState extends TJust ? TValue : undefined;\n constructor(type: TState, value: TState extends TJust ? TValue : undefined) {\n this.#type = type;\n this.#value = value;\n }\n\n public get value(): TState extends TJust ? TValue : undefined {\n return this.#value;\n }\n\n isNone(): this is None {\n return this.#type === NONE;\n }\n}\n\nexport type Just<T> = CMaybe<T, TJust>;\nexport type None<T = never> = CMaybe<T, TNone>;\n\nexport type Maybe<T> = Just<T> | None;\n\nexport function just<T>(value: T): Just<T> {\n return new CMaybe(JUST, value);\n}\n\nexport function none<T = never>(): None<T> {\n // @ts-expect-error We ignore here as maybe.value will never be accessible at this point\n return new CMaybe(NONE, undefined);\n}\n\nexport function isNone<T>(maybe: CMaybe<T>): maybe is None {\n return maybe.isNone();\n}\n\nexport function isJust<T>(maybe: CMaybe<T>): maybe is Just<T> {\n return !maybe.isNone();\n}\n"],"names":["JUST","NONE","_type","_classPrivateFieldLooseKey","_value","CMaybe","constructor","type","value","Object","defineProperty","writable","_classPrivateFieldLooseBase","isNone","just","none","undefined","maybe","isJust"],"mappings":";;;;;;;;;;;;;;;;EAAA,MAAMA,IAAI,GAAG,IAAa,CAAA;EAE1B,MAAMC,IAAI,GAAG,KAAc,CAAA;EAAC,IAAAC,KAAA,gBAAAC,0BAAA,CAAA,MAAA,CAAA,CAAA;EAAA,IAAAC,MAAA,gBAAAD,0BAAA,CAAA,OAAA,CAAA,CAAA;EAI5B,MAAME,MAAM,CAAA;EAGVC,EAAAA,WAAYA,CAAAC,IAAY,EAAEC,KAAgD,EAAA;MAAAC,MAAA,CAAAC,cAAA,CAAA,IAAA,EAAAR,KAAA,EAAA;QAAAS,QAAA,EAAA,IAAA;QAAAH,KAAA,EAAA,KAAA,CAAA;EAAA,KAAA,CAAA,CAAA;MAAAC,MAAA,CAAAC,cAAA,CAAA,IAAA,EAAAN,MAAA,EAAA;QAAAO,QAAA,EAAA,IAAA;QAAAH,KAAA,EAAA,KAAA,CAAA;EAAA,KAAA,CAAA,CAAA;EACxEI,IAAAA,2BAAA,KAAI,EAAAV,KAAA,CAAAA,CAAAA,KAAA,IAASK,IAAI,CAAA;EACjBK,IAAAA,2BAAA,KAAI,EAAAR,MAAA,CAAAA,CAAAA,MAAA,IAAUI,KAAK,CAAA;EACrB,GAAA;IAEA,IAAWA,KAAKA,GAAA;EACd,IAAA,OAAAI,2BAAA,CAAO,IAAI,EAAAR,MAAA,EAAAA,MAAA,CAAA,CAAA;EACb,GAAA;EAEAS,EAAAA,MAAMA,GAAA;EACJ,IAAA,OAAOD,2BAAA,CAAI,IAAA,EAAAV,KAAA,CAAAA,CAAAA,KAAA,MAAWD,IAAI,CAAA;EAC5B,GAAA;EACD,CAAA;EAOK,SAAUa,IAAIA,CAAIN,KAAQ,EAAA;EAC9B,EAAA,OAAO,IAAIH,MAAM,CAACL,IAAI,EAAEQ,KAAK,CAAC,CAAA;EAChC,CAAA;WAEgBO,IAAIA,GAAA;EAClB;EACA,EAAA,OAAO,IAAIV,MAAM,CAACJ,IAAI,EAAEe,SAAS,CAAC,CAAA;EACpC,CAAA;EAEM,SAAUH,MAAMA,CAAII,KAAgB,EAAA;EACxC,EAAA,OAAOA,KAAK,CAACJ,MAAM,EAAE,CAAA;EACvB,CAAA;EAEM,SAAUK,MAAMA,CAAID,KAAgB,EAAA;EACxC,EAAA,OAAO,CAACA,KAAK,CAACJ,MAAM,EAAE,CAAA;EACxB;;;;;;;;;;;"}
|