@thi.ng/api 8.2.0 → 8.3.3

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.
Files changed (4) hide show
  1. package/CHANGELOG.md +334 -217
  2. package/mixin.d.ts +2 -2
  3. package/mixin.js +3 -3
  4. package/package.json +225 -220
package/CHANGELOG.md CHANGED
@@ -1,387 +1,504 @@
1
1
  # Change Log
2
2
 
3
+ - **Last updated**: 2021-12-13T10:25:59Z
4
+ - **Generator**: [thi.ng/monopub](https://thi.ng/monopub)
5
+
3
6
  All notable changes to this project will be documented in this file.
4
- See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
7
+ See [Conventional Commits](https://conventionalcommits.org/) for commit guidelines.
8
+
9
+ **Note:** Unlisted _patch_ versions only involve non-code or otherwise excluded changes
10
+ and/or version bumps of transitive dependencies.
11
+
12
+ ## [8.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@8.3.0) (2021-11-17)
13
+
14
+ #### 🚀 Features
15
+
16
+ - Using workspaces for local tools ([bf7a404](https://github.com/thi-ng/umbrella/commit/bf7a404))
17
+ Improving the overall build ergonomics
18
+ - introduced a tools workspaces
19
+ - imported it in all needed packages/examples
20
+ - inclusive project root
21
+
22
+ #### 🩹 Bug fixes
23
+
24
+ - disable debug console output in mixin() ([50354c8](https://github.com/thi-ng/umbrella/commit/50354c8))
25
+
26
+ #### ♻️ Refactoring
27
+
28
+ - testrunner to binary ([4ebbbb2](https://github.com/thi-ng/umbrella/commit/4ebbbb2))
29
+ this commit reverts (partly) changes made in:
30
+ ef346d7a8753590dc9094108a3d861a8dbd5dd2c
31
+ overall purpose is better testament ergonomics:
32
+ instead of having to pass NODE_OPTIONS with every invocation
33
+ having a binary to handle this for us.
34
+
35
+ ## [8.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@8.2.0) (2021-11-10)
36
+
37
+ #### 🚀 Features
5
38
 
6
- # [8.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@8.1.0...@thi.ng/api@8.2.0) (2021-11-10)
39
+ - update IGrid types, add mixins ([f0f3236](https://github.com/thi-ng/umbrella/commit/f0f3236))
7
40
 
41
+ #### 🩹 Bug fixes
8
42
 
9
- ### Bug Fixes
43
+ - add missing module exports ([fc8805e](https://github.com/thi-ng/umbrella/commit/fc8805e))
10
44
 
11
- * **api:** add missing module exports ([fc8805e](https://github.com/thi-ng/umbrella/commit/fc8805eb26a828d4ee9683c714a73a7ad35ef16c))
45
+ #### ♻️ Refactoring
12
46
 
47
+ - update all countdown loops ([a5f374b](https://github.com/thi-ng/umbrella/commit/a5f374b))
13
48
 
14
- ### Features
49
+ ## [8.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@8.1.0) (2021-11-03)
15
50
 
16
- * **api:** update IGrid types, add mixins ([f0f3236](https://github.com/thi-ng/umbrella/commit/f0f3236448e7277e089654c725d2b9335bd4706a))
51
+ #### 🚀 Features
17
52
 
53
+ - add asInt() coercion helper ([49cd772](https://github.com/thi-ng/umbrella/commit/49cd772))
54
+ - add IGrid2D/3D interfaces ([e57ad7e](https://github.com/thi-ng/umbrella/commit/e57ad7e))
18
55
 
56
+ ### [8.0.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@8.0.1) (2021-10-13)
19
57
 
58
+ #### ♻️ Refactoring
20
59
 
60
+ - update imports in all tests/pkgs ([effd591](https://github.com/thi-ng/umbrella/commit/effd591))
61
+ - update imports in all pkgs ([5fa2b6f](https://github.com/thi-ng/umbrella/commit/5fa2b6f))
62
+ - add .js suffix for all relative imports
21
63
 
22
- # [8.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@8.0.6...@thi.ng/api@8.1.0) (2021-11-03)
64
+ # [8.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@8.0.0) (2021-10-12)
23
65
 
66
+ #### 🛑 Breaking changes
24
67
 
25
- ### Features
68
+ - major pkg restructure ([98e286d](https://github.com/thi-ng/umbrella/commit/98e286d))
69
+ - BREAKING CHANGE: major pkg restructure, migrations
70
+ - migrate logging related types/classes to new [@thi.ng/logger](https://github.com/thi-ng/umbrella/tree/main/packages/logger) pkg
71
+ - see [e0399a8f6](https://github.com/thi-ng/umbrella/commit/e0399a8f6) for details
72
+ - migrate `exposeGlobal()` to new [@thi.ng/expose](https://github.com/thi-ng/umbrella/tree/main/packages/expose) pkg
73
+ - see [323995fd7](https://github.com/thi-ng/umbrella/commit/323995fd7) for details
74
+ - lift /api source files to main /src folder for easier import
75
+ - this pkg now only contains type defs, constants, decorators and mixins
76
+ all other functionality migrated to other packages...
77
+ - remove obsolete assert() ([5f6ec5c](https://github.com/thi-ng/umbrella/commit/5f6ec5c))
78
+ - BREAKING CHANGE: assert() moved to [@thi.ng/errors](https://github.com/thi-ng/umbrella/tree/main/packages/errors) pkg
79
+ - see [7030a6aec](https://github.com/thi-ng/umbrella/commit/7030a6aec) for details
80
+ - major update of ALL pkgs (export maps, ESM only) ([0d1d6ea](https://github.com/thi-ng/umbrella/commit/0d1d6ea))
81
+ - BREAKING CHANGE: discontinue CommonJS & UMD versions
82
+ - only ESM modules will be published from now on
83
+ - CJS obsolete due to ESM support in recent versions of node:
84
+ - i.e. launch NodeJS via:
85
+ - `node --experimental-specifier-resolution=node --experimental-repl-await`
86
+ - in the node REPL use `await import(...)` instead of `require()`
87
+ - UMD obsolete due to widespread browser support for ESM
88
+ Also:
89
+ - normalize/restructure/reorg all package.json files
90
+ - cleanup all build scripts, remove obsolete
91
+ - switch from mocha to [@thi.ng/testament](https://github.com/thi-ng/umbrella/tree/main/packages/testament) for all tests
26
92
 
27
- * **api:** add asInt() coercion helper ([49cd772](https://github.com/thi-ng/umbrella/commit/49cd772a328b7c71fb16ed3041e03832ebd1f884))
28
- * **api:** add IGrid2D/3D interfaces ([e57ad7e](https://github.com/thi-ng/umbrella/commit/e57ad7e8139512bf4146c4c70ef693b810eee24a))
93
+ #### ♻️ Refactoring
29
94
 
95
+ - minor pkg restructure (various) ([47f88d2](https://github.com/thi-ng/umbrella/commit/47f88d2))
96
+ - update deps & imports in various pkgs ([e1cf29e](https://github.com/thi-ng/umbrella/commit/e1cf29e))
97
+ - largely related to recent updates/restructuring of these packages:
98
+ - api
99
+ - defmulti
100
+ - errors
101
+ - logger
102
+ - update all tests in _all_ pkgs ([8b582bc](https://github.com/thi-ng/umbrella/commit/8b582bc))
103
+ - update all to use [@thi.ng/testament](https://github.com/thi-ng/umbrella/tree/main/packages/testament)
30
104
 
105
+ ## [7.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@7.2.0) (2021-09-03)
31
106
 
107
+ #### 🚀 Features
32
108
 
109
+ - add DeepArrayValue type ([a309fac](https://github.com/thi-ng/umbrella/commit/a309fac))
33
110
 
34
- # [8.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@7.2.0...@thi.ng/api@8.0.0) (2021-10-12)
111
+ ### [7.1.7](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@7.1.7) (2021-08-04)
35
112
 
113
+ #### ♻️ Refactoring
36
114
 
37
- ### Build System
115
+ - dedupe IEnableMixin method impls ([3433e5d](https://github.com/thi-ng/umbrella/commit/3433e5d))
38
116
 
39
- * major update of ALL pkgs (export maps, ESM only) ([0d1d6ea](https://github.com/thi-ng/umbrella/commit/0d1d6ea9fab2a645d6c5f2bf2591459b939c09b6))
117
+ ### [7.1.5](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@7.1.5) (2021-06-08)
40
118
 
119
+ #### ♻️ Refactoring
41
120
 
42
- ### chore
121
+ - [#294](https://github.com/thi-ng/umbrella/issues/294) update recursive helper types ([6ad582d](https://github.com/thi-ng/umbrella/commit/6ad582d))
122
+ - simplify Head, Tail, Prepend type defs
123
+ - update ArrayValue, Reverse
43
124
 
44
- * **api:** remove obsolete assert() ([5f6ec5c](https://github.com/thi-ng/umbrella/commit/5f6ec5c37d9268c2b40d74011219529e146a0aca))
125
+ ## [7.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@7.1.0) (2021-03-03)
45
126
 
127
+ #### 🚀 Features
46
128
 
47
- ### Code Refactoring
129
+ - add StringOrSym type alias ([fb92c9d](https://github.com/thi-ng/umbrella/commit/fb92c9d))
48
130
 
49
- * **api:** major pkg restructure ([98e286d](https://github.com/thi-ng/umbrella/commit/98e286dbf173dc8fe1daba7113b36bdc69a9bace))
131
+ # [7.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@7.0.0) (2021-02-20)
50
132
 
133
+ #### 🛑 Breaking changes
51
134
 
52
- ### BREAKING CHANGES
135
+ - replace Type enum w/ strings consts ([a333d41](https://github.com/thi-ng/umbrella/commit/a333d41))
136
+ - BREAKING CHANGE: replace Type enum w/ string consts
137
+ - update Type, UintType, IntType, FloatType aliases
138
+ - update GL2TYPE, TYPE2GL, SIZEOF, TYPEDARRAY_CTORS tables
139
+ - add asNativeType(), asGLType() conversions
140
+ - add sizeOf()
141
+ - add uintTypeForBits(), intTypeForBits()
142
+ - update/rename uintTypeForSize(), intTypeForSize()
53
143
 
54
- * **api:** major pkg restructure, migrations
144
+ #### 🚀 Features
55
145
 
56
- - migrate logging related types/classes to new thi.ng/logger pkg
57
- - see e0399a8f6 for details
58
- - migrate `exposeGlobal()` to new thi.ng/expose pkg
59
- - see 323995fd7 for details
60
- - lift /api source files to main /src folder for easier import
61
- - this pkg now only contains type defs, constants, decorators and mixins
62
- all other functionality migrated to other packages...
63
- * **api:** assert() moved to thi.ng/errors pkg
146
+ - more finely grained typedarray types ([8316d05](https://github.com/thi-ng/umbrella/commit/8316d05))
147
+ - add typedArrayType() classifier ([5c81fd8](https://github.com/thi-ng/umbrella/commit/5c81fd8))
148
+ - add Range type ([5d94974](https://github.com/thi-ng/umbrella/commit/5d94974))
64
149
 
65
- - see 7030a6aec for details
66
- * discontinue CommonJS & UMD versions
150
+ ### [6.13.4](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.13.4) (2020-12-07)
67
151
 
68
- - only ESM modules will be published from now on
69
- - CJS obsolete due to ESM support in recent versions of node:
70
- - i.e. launch NodeJS via:
71
- - `node --experimental-specifier-resolution=node --experimental-repl-await`
72
- - in the node REPL use `await import(...)` instead of `require()`
73
- - UMD obsolete due to widespread browser support for ESM
152
+ #### ♻️ Refactoring
74
153
 
75
- Also:
76
- - normalize/restructure/reorg all package.json files
77
- - cleanup all build scripts, remove obsolete
78
- - switch from mocha to @thi.ng/testament for all tests
154
+ - update type-only imports ([94be931](https://github.com/thi-ng/umbrella/commit/94be931))
79
155
 
156
+ ## [6.13.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.13.0) (2020-09-13)
80
157
 
158
+ #### 🚀 Features
81
159
 
160
+ - add DeepPartial type ([0d9a0de](https://github.com/thi-ng/umbrella/commit/0d9a0de))
161
+ - add FnU and FnN function types ([4ba48d0](https://github.com/thi-ng/umbrella/commit/4ba48d0))
82
162
 
163
+ #### 🩹 Bug fixes
83
164
 
165
+ - update assert() & exposeGlobal() detection ([2cdc038](https://github.com/thi-ng/umbrella/commit/2cdc038))
84
166
 
85
- # [7.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@7.1.9...@thi.ng/api@7.2.0) (2021-09-03)
167
+ ## [6.12.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.12.0) (2020-07-28)
86
168
 
87
- ### Features
169
+ #### 🚀 Features
88
170
 
89
- - **api:** add DeepArrayValue type ([a309fac](https://github.com/thi-ng/umbrella/commit/a309faca831651f611b9b056d9c7587f85b60087))
171
+ - add Always & ArrayValue types ([dcf9aeb](https://github.com/thi-ng/umbrella/commit/dcf9aeb))
90
172
 
91
- # [7.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@7.0.0...@thi.ng/api@7.1.0) (2021-03-03)
173
+ ## [6.11.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.11.0) (2020-06-01)
92
174
 
93
- ### Features
175
+ #### 🚀 Features
94
176
 
95
- - **api:** add StringOrSym type alias ([fb92c9d](https://github.com/thi-ng/umbrella/commit/fb92c9d93b4e795f60118e1167d5adb1bb108380))
177
+ - add deref(), isDeref() fns & MaybeDeref ([722bf3e](https://github.com/thi-ng/umbrella/commit/722bf3e))
178
+ (cherry picked from commit [2ab46adee629bf06d064bdcd5c064f7fcc1e7433](https://github.com/thi-ng/umbrella/commit/2ab46adee629bf06d064bdcd5c064f7fcc1e7433))
179
+ - add deref(), isDeref() fns & MaybeDeref ([2ab46ad](https://github.com/thi-ng/umbrella/commit/2ab46ad))
96
180
 
97
- # [7.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.13.6...@thi.ng/api@7.0.0) (2021-02-20)
181
+ ## [6.10.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.10.0) (2020-04-06)
98
182
 
99
- ### Features
183
+ #### 🚀 Features
100
184
 
101
- - **api:** add Range type ([5d94974](https://github.com/thi-ng/umbrella/commit/5d94974c34ca81513d40743f2a9b9a3ed20146d3))
102
- - **api:** add typedArrayType() classifier ([5c81fd8](https://github.com/thi-ng/umbrella/commit/5c81fd859514401c2c419b2ed3ec0f12025356c3))
103
- - **api:** more finely grained typedarray types ([8316d05](https://github.com/thi-ng/umbrella/commit/8316d058f0b5f760afd89e8590619670210a970a))
104
- - **api:** replace Type enum w/ strings consts ([a333d41](https://github.com/thi-ng/umbrella/commit/a333d418222972373cc1f9b256def2f79610d3fa))
185
+ - add LogLevelName type ([25b6c67](https://github.com/thi-ng/umbrella/commit/25b6c67))
105
186
 
106
- ### BREAKING CHANGES
187
+ ### [6.9.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.9.1) (2020-04-05)
107
188
 
108
- - **api:** replace Type enum w/ string consts
109
- - update Type, UintType, IntType, FloatType aliases
110
- - update GL2TYPE, TYPE2GL, SIZEOF, TYPEDARRAY_CTORS tables
111
- - add asNativeType(), asGLType() conversions
112
- - add sizeOf()
113
- - add uintTypeForBits(), intTypeForBits()
114
- - update/rename uintTypeForSize(), intTypeForSize()
189
+ #### ♻️ Refactoring
115
190
 
116
- # [6.13.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.12.3...@thi.ng/api@6.13.0) (2020-09-13)
191
+ - switch to non-const enums ([b247903](https://github.com/thi-ng/umbrella/commit/b247903))
117
192
 
118
- ### Bug Fixes
193
+ ## [6.9.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.9.0) (2020-03-28)
119
194
 
120
- - **api:** update assert() & exposeGlobal() detection ([2cdc038](https://github.com/thi-ng/umbrella/commit/2cdc038d5ae3f8efba7c71e708de6eda1d3a4dd5))
195
+ #### 🚀 Features
121
196
 
122
- ### Features
197
+ - add optional props in Keys/Val types ([08b88f0](https://github.com/thi-ng/umbrella/commit/08b88f0))
198
+ - force intermediate props using `Required<T>`
199
+ - update Keys1-8, Val1-8
200
+ - update KeysN / ValN
201
+ - add Derefed & DerefedKeys types ([95f1576](https://github.com/thi-ng/umbrella/commit/95f1576))
202
+ - update Path alias, add doc strings ([e2b35bc](https://github.com/thi-ng/umbrella/commit/e2b35bc))
203
+ - add Path0-8, PathVal1-8, DeepPath types ([0c76108](https://github.com/thi-ng/umbrella/commit/0c76108))
123
204
 
124
- - **api:** add DeepPartial type ([0d9a0de](https://github.com/thi-ng/umbrella/commit/0d9a0de2c3b5029bdc49101727d234a065a94869))
125
- - **api:** add FnU and FnN function types ([4ba48d0](https://github.com/thi-ng/umbrella/commit/4ba48d0dc4324c79c9e9b11d9e55b04b5c5f54c7))
205
+ #### ♻️ Refactoring
126
206
 
127
- # [6.12.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.11.3...@thi.ng/api@6.12.0) (2020-07-28)
207
+ - update path value & tuple types ([aa9db3a](https://github.com/thi-ng/umbrella/commit/aa9db3a))
208
+ - replace PathVal1-8 w/ PathVal
209
+ - add OptPathVal
210
+ - add IsOpt, IsOptPath type predicates
211
+ - add IsEmpty type predicate
212
+ - update Last, ButLast tuple types
128
213
 
129
- ### Features
214
+ ## [6.8.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.8.0) (2020-02-25)
130
215
 
131
- - **api:** add Always & ArrayValue types ([dcf9aeb](https://github.com/thi-ng/umbrella/commit/dcf9aebe93d73c06e2bb835b942e83ec6580755f))
216
+ #### 🚀 Features
132
217
 
133
- # [6.11.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.10.5...@thi.ng/api@6.11.0) (2020-06-01)
218
+ - add TypedKeys, NumericKeys, StringKeys ([fab1a5e](https://github.com/thi-ng/umbrella/commit/fab1a5e))
134
219
 
135
- ### Features
220
+ #### 🩹 Bug fixes
136
221
 
137
- - **api:** add deref(), isDeref() fns & MaybeDeref ([722bf3e](https://github.com/thi-ng/umbrella/commit/722bf3e3a368c62575faff26695326dc72954d6d))
222
+ - fix imports ([e3e0cdc](https://github.com/thi-ng/umbrella/commit/e3e0cdc))
138
223
 
139
- # [6.10.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.9.1...@thi.ng/api@6.10.0) (2020-04-06)
224
+ #### ♻️ Refactoring
140
225
 
141
- ### Features
226
+ - update type exports, internal restructure ([b8c7681](https://github.com/thi-ng/umbrella/commit/b8c7681))
227
+ - dissolve api.ts
228
+ - move constants to constants.ts
142
229
 
143
- - **api:** add LogLevelName type ([25b6c67](https://github.com/thi-ng/umbrella/commit/25b6c6774645eef6606e76b9e81149863e964d71))
230
+ ### [6.7.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.7.1) (2020-01-26)
144
231
 
145
- # [6.9.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.8.3...@thi.ng/api@6.9.0) (2020-03-28)
232
+ #### ♻️ Refactoring
146
233
 
147
- ### Features
234
+ - remove obsolete Drop/DropReducer ([5e80c4d](https://github.com/thi-ng/umbrella/commit/5e80c4d))
235
+ - update IToHiccup, add opt args ([ac35685](https://github.com/thi-ng/umbrella/commit/ac35685))
148
236
 
149
- - **api:** add Derefed & DerefedKeys types ([95f1576](https://github.com/thi-ng/umbrella/commit/95f15765435e877aa92a66ac64933a962fbd2db5))
150
- - **api:** add optional props in Keys/Val types ([08b88f0](https://github.com/thi-ng/umbrella/commit/08b88f0e74ffae0e4d8edddfbb5dff17f978a149))
151
- - **api:** add Path0-8, PathVal1-8, DeepPath types ([0c76108](https://github.com/thi-ng/umbrella/commit/0c761085b60d27849650d51e851afd98f0f2b9ea))
152
- - **api:** update Path alias, add doc strings ([e2b35bc](https://github.com/thi-ng/umbrella/commit/e2b35bc13cdf286d0e1cd60176eeb207525b064f))
237
+ ## [6.7.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.7.0) (2020-01-24)
153
238
 
154
- # [6.8.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.7.1...@thi.ng/api@6.8.0) (2020-02-25)
239
+ #### 🚀 Features
155
240
 
156
- ### Bug Fixes
241
+ - add IReset interface ([d491bd0](https://github.com/thi-ng/umbrella/commit/d491bd0))
242
+ - add Drop, TupleLength, update Tuple ([dc79324](https://github.com/thi-ng/umbrella/commit/dc79324))
243
+ - added the ReplaceN type ([4da54ae](https://github.com/thi-ng/umbrella/commit/4da54ae))
244
+ - added the WithoutN type ([0d13af5](https://github.com/thi-ng/umbrella/commit/0d13af5))
245
+ - added the Init type ([f6c333a](https://github.com/thi-ng/umbrella/commit/f6c333a))
246
+ - added the Last type ([44ae2f7](https://github.com/thi-ng/umbrella/commit/44ae2f7))
247
+ - added the ValN type ([b48623f](https://github.com/thi-ng/umbrella/commit/b48623f))
248
+ - added the KeysN type ([e0f0e90](https://github.com/thi-ng/umbrella/commit/e0f0e90))
249
+ - added the Reverse type ([88cfaa4](https://github.com/thi-ng/umbrella/commit/88cfaa4))
250
+ - added the Prepend type ([7bfe7a8](https://github.com/thi-ng/umbrella/commit/7bfe7a8))
251
+ - added the Tail type ([fa59ff3](https://github.com/thi-ng/umbrella/commit/fa59ff3))
252
+ - added the Head type ([f000a3d](https://github.com/thi-ng/umbrella/commit/f000a3d))
253
+ - add IClear interface ([38f03ff](https://github.com/thi-ng/umbrella/commit/38f03ff))
254
+ - add more RangeXX types & RangeValueMap ([654ea53](https://github.com/thi-ng/umbrella/commit/654ea53))
255
+ - add exposeGlobal(), update assert(), update readme ([7981cc9](https://github.com/thi-ng/umbrella/commit/7981cc9))
157
256
 
158
- - **api:** fix imports ([e3e0cdc](https://github.com/thi-ng/umbrella/commit/e3e0cdc244dd25f33c633e7477e56baf0a9e53e4))
257
+ #### 🩹 Bug fixes
159
258
 
160
- ### Features
259
+ - don't use optional chaining, update assert(), exposeGlobal() ([ddfc65e](https://github.com/thi-ng/umbrella/commit/ddfc65e))
161
260
 
162
- - **api:** add TypedKeys, NumericKeys, StringKeys ([fab1a5e](https://github.com/thi-ng/umbrella/commit/fab1a5ec800b68c8170f7c9f138781c6e7fd4263))
261
+ ## [6.6.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.6.0) (2019-11-30)
163
262
 
164
- # [6.7.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.6.0...@thi.ng/api@6.7.0) (2020-01-24)
263
+ #### 🚀 Features
165
264
 
166
- ### Bug Fixes
265
+ - add WithoutX & ReplaceX types, update KeysX/ValX ([7707370](https://github.com/thi-ng/umbrella/commit/7707370))
266
+ - add versions up to arity 8
267
+ - add ISeq, ISeqable ([541e9c8](https://github.com/thi-ng/umbrella/commit/541e9c8))
268
+ - add Uint/Int/FloatType & helpers ([1d3c824](https://github.com/thi-ng/umbrella/commit/1d3c824))
269
+ - add grouped Type aliases
270
+ - add uintType() / intType() helpers
167
271
 
168
- - **api:** don't use optional chaining, update assert(), exposeGlobal() ([ddfc65e](https://github.com/thi-ng/umbrella/commit/ddfc65eb120d0f509cb18458f65497cb849bd305))
272
+ #### ♻️ Refactoring
169
273
 
170
- ### Features
274
+ - replace error w/ assert() in decorator ([adfec26](https://github.com/thi-ng/umbrella/commit/adfec26))
171
275
 
172
- - **api:** add Drop, TupleLength, update Tuple ([dc79324](https://github.com/thi-ng/umbrella/commit/dc79324fbdc509b9d4dc2567b0a9106a25a62ea7))
173
- - **api:** add exposeGlobal(), update assert(), update readme ([7981cc9](https://github.com/thi-ng/umbrella/commit/7981cc95703c95800a0346f9111276202c906c75))
174
- - **api:** add IClear interface ([38f03ff](https://github.com/thi-ng/umbrella/commit/38f03ff205b29cd7819d3b8885c25e6b58a27381))
175
- - **api:** add IReset interface ([d491bd0](https://github.com/thi-ng/umbrella/commit/d491bd081e3926eabab377085406b8eb93205ba0))
176
- - **api:** add more RangeXX types & RangeValueMap ([654ea53](https://github.com/thi-ng/umbrella/commit/654ea53d068cc2b830608d6d69ab31df460eab3e))
177
- - **api:** added the Head type ([f000a3d](https://github.com/thi-ng/umbrella/commit/f000a3d57442963363abd0aab6fe3309e711b1ab))
178
- - **api:** added the Init type ([f6c333a](https://github.com/thi-ng/umbrella/commit/f6c333a7079a18ec7594a0ceefc2a425eead9d07))
179
- - **api:** added the KeysN type ([e0f0e90](https://github.com/thi-ng/umbrella/commit/e0f0e9002eac4b4d3e7d39e634929a4c390d1463))
180
- - **api:** added the Last type ([44ae2f7](https://github.com/thi-ng/umbrella/commit/44ae2f770d33fa1b25f8fc7e14b3caf5bada7bc6))
181
- - **api:** added the Prepend type ([7bfe7a8](https://github.com/thi-ng/umbrella/commit/7bfe7a8756818b5879d698500fc203c583e185f9))
182
- - **api:** added the ReplaceN type ([4da54ae](https://github.com/thi-ng/umbrella/commit/4da54aea15d3bd4f33b040e2220a43e1bb95ea11))
183
- - **api:** added the Reverse type ([88cfaa4](https://github.com/thi-ng/umbrella/commit/88cfaa45bab2f85d176dc6ad9d3551a9f431d68d))
184
- - **api:** added the Tail type ([fa59ff3](https://github.com/thi-ng/umbrella/commit/fa59ff3a5a30b9b2e226a363a18dedaca512e1db))
185
- - **api:** added the ValN type ([b48623f](https://github.com/thi-ng/umbrella/commit/b48623fdf539962fff9bd805adf5e6b3d24fc23e))
186
- - **api:** added the WithoutN type ([0d13af5](https://github.com/thi-ng/umbrella/commit/0d13af539bff270a15cc896515bd4cb5cf39ee0c))
276
+ ## [6.5.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.5.0) (2019-11-09)
187
277
 
188
- # [6.6.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.5.0...@thi.ng/api@6.6.0) (2019-11-30)
278
+ #### 🚀 Features
189
279
 
190
- ### Features
280
+ - add typedArray() factory, update type mappers, docs ([ac7fa13](https://github.com/thi-ng/umbrella/commit/ac7fa13))
281
+ - add RangeXX types ([fc9cf21](https://github.com/thi-ng/umbrella/commit/fc9cf21))
282
+ - add types, split api.ts into separate files ([b72e664](https://github.com/thi-ng/umbrella/commit/b72e664))
283
+ - add GLType enum & GL2TYPE / TYPE2GL conversions
284
+ - add TypedArrayContstructor, TYPEDARRAY_CTORS LUT
191
285
 
192
- - **api:** add ISeq, ISeqable ([541e9c8](https://github.com/thi-ng/umbrella/commit/541e9c8bdf95ece80b74e630eeb428876b7d7bc9))
193
- - **api:** add Uint/Int/FloatType & helpers ([1d3c824](https://github.com/thi-ng/umbrella/commit/1d3c824f3647cbc7ced7f3289b184474f3281674))
194
- - **api:** add WithoutX & ReplaceX types, update KeysX/ValX ([7707370](https://github.com/thi-ng/umbrella/commit/7707370741dc0835218f4a9302e6076e70bf8fba))
286
+ #### ♻️ Refactoring
195
287
 
196
- # [6.5.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.4.0...@thi.ng/api@6.5.0) (2019-11-09)
288
+ - fix [#168](https://github.com/thi-ng/umbrella/issues/168), refactor Range types ([39bf8f1](https://github.com/thi-ng/umbrella/commit/39bf8f1))
289
+ - update INotifyMixin to clean up listeners ([ed2be64](https://github.com/thi-ng/umbrella/commit/ed2be64))
197
290
 
198
- ### Features
291
+ ## [6.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.4.0) (2019-09-21)
199
292
 
200
- - **api:** add RangeXX types ([fc9cf21](https://github.com/thi-ng/umbrella/commit/fc9cf212ec97a719bca6f3214215f5d0aa479ea8))
201
- - **api:** add typedArray() factory, update type mappers, docs ([ac7fa13](https://github.com/thi-ng/umbrella/commit/ac7fa13fa602947ae4b30c943d8d8fddcd602381))
202
- - **api:** add types, split api.ts into separate files ([b72e664](https://github.com/thi-ng/umbrella/commit/b72e6641626314761488122a1bc55bc2e802eb74))
293
+ #### 🚀 Features
203
294
 
204
- # [6.4.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.3.3...@thi.ng/api@6.4.0) (2019-09-21)
295
+ - add Nullable ([8366223](https://github.com/thi-ng/umbrella/commit/8366223))
296
+ (cherry picked from commit [bed4c3c95293374bcf002266c4a906e11f68bed3](https://github.com/thi-ng/umbrella/commit/bed4c3c95293374bcf002266c4a906e11f68bed3))
297
+ - add Nullable ([bed4c3c](https://github.com/thi-ng/umbrella/commit/bed4c3c))
205
298
 
206
- ### Features
299
+ #### ♻️ Refactoring
207
300
 
208
- - **api:** add Nullable ([8366223](https://github.com/thi-ng/umbrella/commit/8366223))
301
+ - Use `this` parameter to avoid casts in mixins. ([c78cf32](https://github.com/thi-ng/umbrella/commit/c78cf32))
209
302
 
210
- # [6.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.2.0...@thi.ng/api@6.3.0) (2019-07-07)
303
+ ## [6.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.3.0) (2019-07-07)
211
304
 
212
- ### Features
305
+ #### 🚀 Features
213
306
 
214
- - **api:** add Select2/3/4 conditional types ([a4bfb88](https://github.com/thi-ng/umbrella/commit/a4bfb88))
215
- - **api:** enable TS strict compiler flags (refactor) ([0430d01](https://github.com/thi-ng/umbrella/commit/0430d01))
216
- - **api:** update assert() message arg types ([6137b48](https://github.com/thi-ng/umbrella/commit/6137b48))
307
+ - add Select2/3/4 conditional types ([a4bfb88](https://github.com/thi-ng/umbrella/commit/a4bfb88))
308
+ - update assert() message arg types ([6137b48](https://github.com/thi-ng/umbrella/commit/6137b48))
309
+ - add support for supplying message as no-arg fn to delay
310
+ execution of template string literals
311
+ - enable TS strict compiler flags (refactor) ([0430d01](https://github.com/thi-ng/umbrella/commit/0430d01))
312
+ - add missing return types for IEnable, IGet, IGetIn
313
+ - update mixins, add private interfaces
217
314
 
218
- # [6.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.1.1...@thi.ng/api@6.2.0) (2019-05-22)
315
+ #### ♻️ Refactoring
219
316
 
220
- ### Features
317
+ - update IStack return types (TS strictNullChecks flag) ([daf1f4c](https://github.com/thi-ng/umbrella/commit/daf1f4c))
318
+ - update IEnable mixin (strictNullChecks) ([525ad0d](https://github.com/thi-ng/umbrella/commit/525ad0d))
221
319
 
222
- - **api:** add Type enum, IntArray, UIntArray, FloatArray, SIZEOF ([b0c44fe](https://github.com/thi-ng/umbrella/commit/b0c44fe))
320
+ ## [6.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.2.0) (2019-05-22)
223
321
 
224
- ## [6.1.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.1.0...@thi.ng/api@6.1.1) (2019-04-26)
322
+ #### 🚀 Features
225
323
 
226
- ### Bug Fixes
324
+ - add Type enum, IntArray, UIntArray, FloatArray, SIZEOF ([b0c44fe](https://github.com/thi-ng/umbrella/commit/b0c44fe))
227
325
 
228
- - **api:** make LogLevel non-const enum, minor fix ConsoleLogger ([88d5e9d](https://github.com/thi-ng/umbrella/commit/88d5e9d))
326
+ ### [6.1.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.1.1) (2019-04-26)
229
327
 
230
- # [6.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@6.0.1...@thi.ng/api@6.1.0) (2019-04-24)
328
+ #### 🩹 Bug fixes
231
329
 
232
- ### Features
330
+ - make LogLevel non-const enum, minor fix ConsoleLogger ([88d5e9d](https://github.com/thi-ng/umbrella/commit/88d5e9d))
233
331
 
234
- - **api:** add common logging types & default impls ([4578604](https://github.com/thi-ng/umbrella/commit/4578604))
235
- - **api:** update ILogger, freeze NULL_LOGGER ([27ff8de](https://github.com/thi-ng/umbrella/commit/27ff8de))
332
+ ## [6.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.1.0) (2019-04-24)
236
333
 
237
- # [6.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@5.1.0...@thi.ng/api@6.0.0) (2019-03-28)
334
+ #### 🚀 Features
238
335
 
239
- ### Features
336
+ - update ILogger, freeze NULL_LOGGER ([27ff8de](https://github.com/thi-ng/umbrella/commit/27ff8de))
337
+ - add common logging types & default impls ([4578604](https://github.com/thi-ng/umbrella/commit/4578604))
338
+ - add ILogger interface, LogLevel enum
339
+ - add NULL_LOGGER & ConsoleLogger
240
340
 
241
- - **api:** add new types, update existing ([560eb90](https://github.com/thi-ng/umbrella/commit/560eb90))
341
+ # [6.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@6.0.0) (2019-03-28)
242
342
 
243
- ### BREAKING CHANGES
343
+ #### 🛑 Breaking changes
244
344
 
245
- - **api:** split up, remove & update various interfaces
246
- - split IAssociative => IAssoc, IAssocIn
247
- - update IDissoc, add IDissocIn
248
- - split IGet => IGet, IGetIn
249
- - update IInto generics & return type
250
- - update ISet, remove IImmutableSet
251
- - update IStack, remove IImmutableStack
345
+ - add new types, update existing ([560eb90](https://github.com/thi-ng/umbrella/commit/560eb90))
346
+ - add Keys* & Val* types
347
+ - add ArrayLikeIterable
348
+ - add Primitive
349
+ - add Tuple, IterableTuple
350
+ - BREAKING CHANGE: split up, remove & update various interfaces
351
+ - split IAssociative => IAssoc, IAssocIn
352
+ - update IDissoc, add IDissocIn
353
+ - split IGet => IGet, IGetIn
354
+ - update IInto generics & return type
355
+ - update ISet, remove IImmutableSet
356
+ - update IStack, remove IImmutableStack
252
357
 
253
- # [5.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@5.0.3...@thi.ng/api@5.1.0) (2019-03-10)
358
+ ## [5.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@5.1.0) (2019-03-10)
254
359
 
255
- ### Features
360
+ #### 🚀 Features
256
361
 
257
- - **api:** add additional Fn arities ([33c7dfe](https://github.com/thi-ng/umbrella/commit/33c7dfe))
258
- - **api:** add more Fn type aliases, update existing ([3707e61](https://github.com/thi-ng/umbrella/commit/3707e61))
362
+ - add more Fn type aliases, update existing ([3707e61](https://github.com/thi-ng/umbrella/commit/3707e61))
363
+ - add additional Fn arities ([33c7dfe](https://github.com/thi-ng/umbrella/commit/33c7dfe))
259
364
 
260
- # [5.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@4.2.4...@thi.ng/api@5.0.0) (2019-01-21)
365
+ #### ♻️ Refactoring
261
366
 
262
- ### Bug Fixes
367
+ - update Fn args in various packages ([e453ac3](https://github.com/thi-ng/umbrella/commit/e453ac3))
263
368
 
264
- - **api:** update assert(), re-export mixin() ([9f91cfa](https://github.com/thi-ng/umbrella/commit/9f91cfa))
369
+ # [5.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@5.0.0) (2019-01-21)
265
370
 
266
- ### Build System
371
+ #### 🛑 Breaking changes
267
372
 
268
- - **api:** update package build scripts / outputs ([f913d7b](https://github.com/thi-ng/umbrella/commit/f913d7b))
373
+ - update package build scripts / outputs ([f913d7b](https://github.com/thi-ng/umbrella/commit/f913d7b))
374
+ - BREAKING CHANGE: rename mixins to avoid name clashes, update decorators
375
+ - append `Mixin` suffix to all mixins (i.e. `INotify` => `INotifyMixin`)
376
+ - update re-exports of mixins & decorators (no more nested child namespace)
269
377
 
270
- ### Features
378
+ #### 🩹 Bug fixes
271
379
 
272
- - **api:** add assert() ([d381ace](https://github.com/thi-ng/umbrella/commit/d381ace))
380
+ - update assert(), re-export mixin() ([9f91cfa](https://github.com/thi-ng/umbrella/commit/9f91cfa))
273
381
 
274
- ### BREAKING CHANGES
382
+ ## [4.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@4.2.0) (2018-09-22)
275
383
 
276
- - **api:** rename mixins to avoid name clashes, update decorators
277
- - append `Mixin` suffix to all mixins (i.e. `INotify` => `INotifyMixin`)
278
- - update re-exports of mixins & decorators (no more nested child namespace)
384
+ #### 🚀 Features
279
385
 
280
- # [4.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@4.1.1...@thi.ng/api@4.2.0) (2018-09-22)
386
+ - add `IToHiccup` interface ([e390a54](https://github.com/thi-ng/umbrella/commit/e390a54))
281
387
 
282
- ### Features
388
+ ## [4.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@4.1.0) (2018-08-24)
283
389
 
284
- - **api:** add `IToHiccup` interface ([e390a54](https://github.com/thi-ng/umbrella/commit/e390a54))
390
+ #### 🚀 Features
285
391
 
286
- # [4.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@4.0.6...@thi.ng/api@4.1.0) (2018-08-24)
392
+ - add NumericArray and TypedArray types ([519394b](https://github.com/thi-ng/umbrella/commit/519394b))
393
+ - add new/move type aliases into api.ts ([cf30ba2](https://github.com/thi-ng/umbrella/commit/cf30ba2))
394
+ - Fn, FnAny, Pair, SEMAPHORE
287
395
 
288
- ### Features
396
+ ### [4.0.6](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@4.0.6) (2018-08-01)
289
397
 
290
- - **api:** add new/move type aliases into api.ts ([cf30ba2](https://github.com/thi-ng/umbrella/commit/cf30ba2))
291
- - **api:** add NumericArray and TypedArray types ([519394b](https://github.com/thi-ng/umbrella/commit/519394b))
398
+ #### ♻️ Refactoring
292
399
 
293
- # [4.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@3.0.1...@thi.ng/api@4.0.0) (2018-05-12)
400
+ - TS3.0 PropertyKey handling ([2047807](https://github.com/thi-ng/umbrella/commit/2047807))
294
401
 
295
- ### Code Refactoring
402
+ # [4.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@4.0.0) (2018-05-12)
296
403
 
297
- - **api:** update interfaces, add docs ([9b38860](https://github.com/thi-ng/umbrella/commit/9b38860))
404
+ #### 🛑 Breaking changes
298
405
 
299
- ### BREAKING CHANGES
406
+ - update interfaces, add docs ([9b38860](https://github.com/thi-ng/umbrella/commit/9b38860))
407
+ - BREAKING CHANGE: IBind, IEnable now include generics,
408
+ update IIndexed, IMeta, ISet, IStack
409
+ - add IInto
410
+ - add IImmutableSet
411
+ - add IImmutableStack
412
+ - minor update IEnabled mixin
300
413
 
301
- - **api:** IBind, IEnable now include generics, update IIndexed, IMeta, ISet, IStack
302
- - add IInto
303
- - add IImmutableSet
304
- - add IImmutableStack
305
- - minor update IEnabled mixin
414
+ # [3.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@3.0.0) (2018-05-10)
306
415
 
307
- # [3.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@2.3.2...@thi.ng/api@3.0.0) (2018-05-10)
416
+ #### 🛑 Breaking changes
308
417
 
309
- ### Code Refactoring
418
+ - remove obsolete files from package ([f051ca3](https://github.com/thi-ng/umbrella/commit/f051ca3))
419
+ - BREAKING CHANGE: [@thi.ng/api](https://github.com/thi-ng/umbrella/tree/main/packages/api) now only contains type declarations,
420
+ decorators and mixins. All other features have been moved
421
+ to new dedicated packages:
422
+ - [@thi.ng/bench](https://github.com/thi-ng/umbrella/tree/main/packages/bench)
423
+ - [@thi.ng/compare](https://github.com/thi-ng/umbrella/tree/main/packages/compare)
424
+ - [@thi.ng/equiv](https://github.com/thi-ng/umbrella/tree/main/packages/equiv)
425
+ - [@thi.ng/errors](https://github.com/thi-ng/umbrella/tree/main/packages/errors)
310
426
 
311
- - **api:** remove obsolete files from package ([f051ca3](https://github.com/thi-ng/umbrella/commit/f051ca3))
427
+ ### [2.3.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@2.3.1) (2018-04-29)
312
428
 
313
- ### BREAKING CHANGES
429
+ #### ⏱ Performance improvements
314
430
 
315
- - **api:** @thi.ng/api now only contains type declarations, decorators and mixins. All other features have been moved to new dedicated packages:
316
- - @thi.ng/bench
317
- - @thi.ng/compare
318
- - @thi.ng/equiv
319
- - @thi.ng/errors
431
+ - major speedup equivObject(), update equivSet() ([7fdf172](https://github.com/thi-ng/umbrella/commit/7fdf172))
432
+ - equivSet() now only checks keys
433
+ - add equivMap() to check full entries/pairs
320
434
 
321
- ## [2.3.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@2.3.0...@thi.ng/api@2.3.1) (2018-04-29)
435
+ ## [2.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@2.3.0) (2018-04-26)
322
436
 
323
- ### Performance Improvements
437
+ #### 🚀 Features
324
438
 
325
- - **api:** major speedup equivObject(), update equivSet() ([7fdf172](https://github.com/thi-ng/umbrella/commit/7fdf172))
439
+ - support more types in equiv(), add tests ([2ac8bff](https://github.com/thi-ng/umbrella/commit/2ac8bff))
440
+ - add equivSetLike() for ES6 Set/Map
441
+ - add checks for Date, RegExp & NaN
326
442
 
327
- # [2.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@2.2.0...@thi.ng/api@2.3.0) (2018-04-26)
443
+ ## [2.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@2.2.0) (2018-04-08)
328
444
 
329
- ### Features
445
+ #### 🚀 Features
330
446
 
331
- - **api:** support more types in equiv(), add tests ([2ac8bff](https://github.com/thi-ng/umbrella/commit/2ac8bff))
447
+ - add bench() & timed() utils ([d310345](https://github.com/thi-ng/umbrella/commit/d310345))
332
448
 
333
- # [2.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@2.1.3...@thi.ng/api@2.2.0) (2018-04-08)
449
+ ### [2.1.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@2.1.1) (2018-03-28)
334
450
 
335
- ### Features
451
+ #### 🩹 Bug fixes
336
452
 
337
- - **api:** add bench() & timed() utils ([d310345](https://github.com/thi-ng/umbrella/commit/d310345))
453
+ - illegalState() creates IllegalStateError ([2b7e99b](https://github.com/thi-ng/umbrella/commit/2b7e99b))
338
454
 
339
- ## [2.1.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@2.1.0...@thi.ng/api@2.1.1) (2018-03-28)
455
+ ## [2.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@2.1.0) (2018-03-21)
340
456
 
341
- ### Bug Fixes
457
+ #### 🚀 Features
342
458
 
343
- - **api:** illegalState() creates IllegalStateError ([2b7e99b](https://github.com/thi-ng/umbrella/commit/2b7e99b))
459
+ - add error types & ctor fns ([4d3785f](https://github.com/thi-ng/umbrella/commit/4d3785f))
344
460
 
345
- # [2.1.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@2.0.4...@thi.ng/api@2.1.0) (2018-03-21)
461
+ #### ♻️ Refactoring
346
462
 
347
- ### Features
463
+ - update mixins, IEnable / INotify return types ([fbb19ac](https://github.com/thi-ng/umbrella/commit/fbb19ac))
348
464
 
349
- - **api:** add error types & ctor fns ([4d3785f](https://github.com/thi-ng/umbrella/commit/4d3785f))
465
+ ### [2.0.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@2.0.1) (2018-02-02)
350
466
 
351
- ## [2.0.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@2.0.0...@thi.ng/api@2.0.1) (2018-02-02)
467
+ #### 🩹 Bug fixes
352
468
 
353
- ### Bug Fixes
469
+ - update compare() & equiv() ([110a9de](https://github.com/thi-ng/umbrella/commit/110a9de))
354
470
 
355
- - **api:** update compare() & equiv() ([110a9de](https://github.com/thi-ng/umbrella/commit/110a9de))
471
+ # [2.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@2.0.0) (2018-02-01)
356
472
 
357
- # [2.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@1.5.0...@thi.ng/api@2.0.0) (2018-02-01)
473
+ #### 🛑 Breaking changes
358
474
 
359
- ### Bug Fixes
475
+ - update equiv() null handling, add tests ([878520e](https://github.com/thi-ng/umbrella/commit/878520e))
476
+ - BREAKING CHANGE: equiv now treats null & undefined as equal
360
477
 
361
- - **api:** fix equiv string handling, update tests ([1354e29](https://github.com/thi-ng/umbrella/commit/1354e29))
478
+ #### 🩹 Bug fixes
362
479
 
363
- ### Features
480
+ - fix equiv string handling, update tests ([1354e29](https://github.com/thi-ng/umbrella/commit/1354e29))
364
481
 
365
- - **api:** update equiv() null handling, add tests ([878520e](https://github.com/thi-ng/umbrella/commit/878520e))
482
+ ## [1.5.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@1.5.0) (2018-01-31)
366
483
 
367
- ### BREAKING CHANGES
484
+ #### 🚀 Features
368
485
 
369
- - **api:** equiv now treats null & undefined as equal
486
+ - add Predicate2 & StatefulPredicate2 types ([fbf8453](https://github.com/thi-ng/umbrella/commit/fbf8453))
370
487
 
371
- # [1.5.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@1.4.2...@thi.ng/api@1.5.0) (2018-01-31)
488
+ ## [1.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@1.4.0) (2018-01-29)
372
489
 
373
- ### Features
490
+ #### 🚀 Features
374
491
 
375
- - **api:** add Predicate2 & StatefulPredicate2 types ([fbf8453](https://github.com/thi-ng/umbrella/commit/fbf8453))
492
+ - update IWatch & mixin, boolean returns ([bddd5ce](https://github.com/thi-ng/umbrella/commit/bddd5ce))
376
493
 
377
- # [1.4.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@1.3.0...@thi.ng/api@1.4.0) (2018-01-29)
494
+ ## [1.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@1.3.0) (2018-01-28)
378
495
 
379
- ### Features
496
+ #### 🚀 Features
380
497
 
381
- - **api:** update IWatch & mixin, boolean returns ([bddd5ce](https://github.com/thi-ng/umbrella/commit/bddd5ce))
498
+ - add StatefulPredicate ([c74353b](https://github.com/thi-ng/umbrella/commit/c74353b))
382
499
 
383
- # [1.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/api@1.2.1...@thi.ng/api@1.3.0) (2018-01-28)
500
+ ### [1.2.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/api@1.2.1) (2018-01-24)
384
501
 
385
- ### Features
502
+ #### 🚀 Features
386
503
 
387
- - **api:** add StatefulPredicate ([c74353b](https://github.com/thi-ng/umbrella/commit/c74353b))
504
+ - initial re-import as monorepo, update readme files, cleanup imports ([04ff6e9](https://github.com/thi-ng/umbrella/commit/04ff6e9))
package/mixin.d.ts CHANGED
@@ -2,8 +2,8 @@
2
2
  * Class behavior mixin based on:
3
3
  * {@link http://raganwald.com/2015/06/26/decorators-in-es7.html}
4
4
  *
5
- * Additionally only injects/overwrites properties in target, which are
6
- * NOT marked with `@nomixin` (i.e. haven't set their `configurable`
5
+ * Additionally only injects/overwrites properties in target, which are NOT
6
+ * marked with `@nomixin` (i.e. those which haven't set their `configurable`
7
7
  * property descriptor flag to `false`)
8
8
  *
9
9
  * @param behaviour - to mixin
package/mixin.js CHANGED
@@ -2,8 +2,8 @@
2
2
  * Class behavior mixin based on:
3
3
  * {@link http://raganwald.com/2015/06/26/decorators-in-es7.html}
4
4
  *
5
- * Additionally only injects/overwrites properties in target, which are
6
- * NOT marked with `@nomixin` (i.e. haven't set their `configurable`
5
+ * Additionally only injects/overwrites properties in target, which are NOT
6
+ * marked with `@nomixin` (i.e. those which haven't set their `configurable`
7
7
  * property descriptor flag to `false`)
8
8
  *
9
9
  * @param behaviour - to mixin
@@ -24,7 +24,7 @@ export const mixin = (behaviour, sharedBehaviour = {}) => {
24
24
  });
25
25
  }
26
26
  else {
27
- console.log(`not patching: ${clazz.name}.${key.toString()}`);
27
+ // console.log(`not patching: ${clazz.name}.${key.toString()}`);
28
28
  }
29
29
  }
30
30
  Object.defineProperty(clazz.prototype, typeTag, { value: true });
package/package.json CHANGED
@@ -1,221 +1,226 @@
1
1
  {
2
- "name": "@thi.ng/api",
3
- "version": "8.2.0",
4
- "description": "Common, generic types, interfaces & mixins",
5
- "type": "module",
6
- "module": "./index.js",
7
- "typings": "./index.d.ts",
8
- "sideEffects": false,
9
- "repository": {
10
- "type": "git",
11
- "url": "https://github.com/thi-ng/umbrella.git"
12
- },
13
- "homepage": "https://github.com/thi-ng/umbrella/tree/develop/packages/api#readme",
14
- "funding": [
15
- {
16
- "type": "github",
17
- "url": "https://github.com/sponsors/postspectacular"
18
- },
19
- {
20
- "type": "patreon",
21
- "url": "https://patreon.com/thing_umbrella"
22
- }
23
- ],
24
- "author": "Karsten Schmidt <k+npm@thi.ng>",
25
- "license": "Apache-2.0",
26
- "scripts": {
27
- "build": "yarn clean && tsc --declaration",
28
- "clean": "rimraf *.js *.d.ts *.map doc api decorators mixins",
29
- "doc": "typedoc --excludePrivate --excludeInternal --out doc src/index.ts",
30
- "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose",
31
- "doc:readme": "yarn doc:stats && ../../scripts/node-esm ../../tools/src/readme.ts",
32
- "doc:stats": "../../scripts/node-esm ../../tools/src/module-stats.ts",
33
- "pub": "yarn build && yarn publish --access public",
34
- "test": "testament test"
35
- },
36
- "devDependencies": {
37
- "@thi.ng/testament": "^0.1.6"
38
- },
39
- "keywords": [
40
- "assert",
41
- "constants",
42
- "decorators",
43
- "generic",
44
- "interface",
45
- "mixin",
46
- "type",
47
- "typescript"
48
- ],
49
- "publishConfig": {
50
- "access": "public"
51
- },
52
- "browser": {
53
- "process": false,
54
- "setTimeout": false
55
- },
56
- "engines": {
57
- "node": ">=12.7"
58
- },
59
- "files": [
60
- "*.js",
61
- "*.d.ts",
62
- "decorators",
63
- "mixins"
64
- ],
65
- "exports": {
66
- ".": {
67
- "import": "./index.js"
68
- },
69
- "./api": {
70
- "import": "./api.js"
71
- },
72
- "./assoc": {
73
- "import": "./assoc.js"
74
- },
75
- "./bind": {
76
- "import": "./bind.js"
77
- },
78
- "./buffered": {
79
- "import": "./buffered.js"
80
- },
81
- "./clear": {
82
- "import": "./clear.js"
83
- },
84
- "./compare": {
85
- "import": "./compare.js"
86
- },
87
- "./contains": {
88
- "import": "./contains.js"
89
- },
90
- "./copy": {
91
- "import": "./copy.js"
92
- },
93
- "./decorators/configurable": {
94
- "import": "./decorators/configurable.js"
95
- },
96
- "./decorators/deprecated": {
97
- "import": "./decorators/deprecated.js"
98
- },
99
- "./decorators/nomixin": {
100
- "import": "./decorators/nomixin.js"
101
- },
102
- "./decorators/sealed": {
103
- "import": "./decorators/sealed.js"
104
- },
105
- "./deref": {
106
- "import": "./deref.js"
107
- },
108
- "./dissoc": {
109
- "import": "./dissoc.js"
110
- },
111
- "./empty": {
112
- "import": "./empty.js"
113
- },
114
- "./enable": {
115
- "import": "./enable.js"
116
- },
117
- "./equiv": {
118
- "import": "./equiv.js"
119
- },
120
- "./event": {
121
- "import": "./event.js"
122
- },
123
- "./fn": {
124
- "import": "./fn.js"
125
- },
126
- "./get": {
127
- "import": "./get.js"
128
- },
129
- "./grid": {
130
- "import": "./grid.js"
131
- },
132
- "./hash": {
133
- "import": "./hash.js"
134
- },
135
- "./hiccup": {
136
- "import": "./hiccup.js"
137
- },
138
- "./id": {
139
- "import": "./id.js"
140
- },
141
- "./indexed": {
142
- "import": "./indexed.js"
143
- },
144
- "./into": {
145
- "import": "./into.js"
146
- },
147
- "./keyval": {
148
- "import": "./keyval.js"
149
- },
150
- "./length": {
151
- "import": "./length.js"
152
- },
153
- "./meta": {
154
- "import": "./meta.js"
155
- },
156
- "./mixin": {
157
- "import": "./mixin.js"
158
- },
159
- "./mixins/ienable": {
160
- "import": "./mixins/ienable.js"
161
- },
162
- "./mixins/igrid": {
163
- "import": "./mixins/igrid.js"
164
- },
165
- "./mixins/inotify": {
166
- "import": "./mixins/inotify.js"
167
- },
168
- "./mixins/iterable": {
169
- "import": "./mixins/iterable.js"
170
- },
171
- "./mixins/iwatch": {
172
- "import": "./mixins/iwatch.js"
173
- },
174
- "./null": {
175
- "import": "./null.js"
176
- },
177
- "./object": {
178
- "import": "./object.js"
179
- },
180
- "./path": {
181
- "import": "./path.js"
182
- },
183
- "./predicate": {
184
- "import": "./predicate.js"
185
- },
186
- "./prim": {
187
- "import": "./prim.js"
188
- },
189
- "./range": {
190
- "import": "./range.js"
191
- },
192
- "./release": {
193
- "import": "./release.js"
194
- },
195
- "./reset": {
196
- "import": "./reset.js"
197
- },
198
- "./select": {
199
- "import": "./select.js"
200
- },
201
- "./seq": {
202
- "import": "./seq.js"
203
- },
204
- "./set": {
205
- "import": "./set.js"
206
- },
207
- "./stack": {
208
- "import": "./stack.js"
209
- },
210
- "./tuple": {
211
- "import": "./tuple.js"
212
- },
213
- "./typedarray": {
214
- "import": "./typedarray.js"
215
- },
216
- "./watch": {
217
- "import": "./watch.js"
218
- }
219
- },
220
- "gitHead": "5fe52419af63984ebe53032201b2a6174b9cb159"
221
- }
2
+ "name": "@thi.ng/api",
3
+ "version": "8.3.3",
4
+ "description": "Common, generic types, interfaces & mixins",
5
+ "type": "module",
6
+ "module": "./index.js",
7
+ "typings": "./index.d.ts",
8
+ "sideEffects": false,
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/thi-ng/umbrella.git"
12
+ },
13
+ "homepage": "https://github.com/thi-ng/umbrella/tree/develop/packages/api#readme",
14
+ "funding": [
15
+ {
16
+ "type": "github",
17
+ "url": "https://github.com/sponsors/postspectacular"
18
+ },
19
+ {
20
+ "type": "patreon",
21
+ "url": "https://patreon.com/thing_umbrella"
22
+ }
23
+ ],
24
+ "author": "Karsten Schmidt <k+npm@thi.ng>",
25
+ "license": "Apache-2.0",
26
+ "scripts": {
27
+ "build": "yarn clean && tsc --declaration",
28
+ "clean": "rimraf '*.js' '*.d.ts' '*.map' doc api decorators mixins",
29
+ "doc": "typedoc --excludePrivate --excludeInternal --out doc src/index.ts",
30
+ "doc:ae": "mkdir -p .ae/doc .ae/temp && api-extractor run --local --verbose",
31
+ "doc:readme": "yarn doc:stats && tools:readme",
32
+ "doc:stats": "tools:module-stats",
33
+ "pub": "yarn npm publish --access public",
34
+ "test": "testament test"
35
+ },
36
+ "devDependencies": {
37
+ "@microsoft/api-extractor": "^7.19.2",
38
+ "@thi.ng/testament": "^0.2.3",
39
+ "rimraf": "^3.0.2",
40
+ "tools": "^0.0.1",
41
+ "typedoc": "^0.22.10",
42
+ "typescript": "^4.5.3"
43
+ },
44
+ "keywords": [
45
+ "assert",
46
+ "constants",
47
+ "decorators",
48
+ "generic",
49
+ "interface",
50
+ "mixin",
51
+ "type",
52
+ "typescript"
53
+ ],
54
+ "publishConfig": {
55
+ "access": "public"
56
+ },
57
+ "browser": {
58
+ "process": false,
59
+ "setTimeout": false
60
+ },
61
+ "engines": {
62
+ "node": ">=12.7"
63
+ },
64
+ "files": [
65
+ "*.js",
66
+ "*.d.ts",
67
+ "decorators",
68
+ "mixins"
69
+ ],
70
+ "exports": {
71
+ ".": {
72
+ "import": "./index.js"
73
+ },
74
+ "./api": {
75
+ "import": "./api.js"
76
+ },
77
+ "./assoc": {
78
+ "import": "./assoc.js"
79
+ },
80
+ "./bind": {
81
+ "import": "./bind.js"
82
+ },
83
+ "./buffered": {
84
+ "import": "./buffered.js"
85
+ },
86
+ "./clear": {
87
+ "import": "./clear.js"
88
+ },
89
+ "./compare": {
90
+ "import": "./compare.js"
91
+ },
92
+ "./contains": {
93
+ "import": "./contains.js"
94
+ },
95
+ "./copy": {
96
+ "import": "./copy.js"
97
+ },
98
+ "./decorators/configurable": {
99
+ "import": "./decorators/configurable.js"
100
+ },
101
+ "./decorators/deprecated": {
102
+ "import": "./decorators/deprecated.js"
103
+ },
104
+ "./decorators/nomixin": {
105
+ "import": "./decorators/nomixin.js"
106
+ },
107
+ "./decorators/sealed": {
108
+ "import": "./decorators/sealed.js"
109
+ },
110
+ "./deref": {
111
+ "import": "./deref.js"
112
+ },
113
+ "./dissoc": {
114
+ "import": "./dissoc.js"
115
+ },
116
+ "./empty": {
117
+ "import": "./empty.js"
118
+ },
119
+ "./enable": {
120
+ "import": "./enable.js"
121
+ },
122
+ "./equiv": {
123
+ "import": "./equiv.js"
124
+ },
125
+ "./event": {
126
+ "import": "./event.js"
127
+ },
128
+ "./fn": {
129
+ "import": "./fn.js"
130
+ },
131
+ "./get": {
132
+ "import": "./get.js"
133
+ },
134
+ "./grid": {
135
+ "import": "./grid.js"
136
+ },
137
+ "./hash": {
138
+ "import": "./hash.js"
139
+ },
140
+ "./hiccup": {
141
+ "import": "./hiccup.js"
142
+ },
143
+ "./id": {
144
+ "import": "./id.js"
145
+ },
146
+ "./indexed": {
147
+ "import": "./indexed.js"
148
+ },
149
+ "./into": {
150
+ "import": "./into.js"
151
+ },
152
+ "./keyval": {
153
+ "import": "./keyval.js"
154
+ },
155
+ "./length": {
156
+ "import": "./length.js"
157
+ },
158
+ "./meta": {
159
+ "import": "./meta.js"
160
+ },
161
+ "./mixin": {
162
+ "import": "./mixin.js"
163
+ },
164
+ "./mixins/ienable": {
165
+ "import": "./mixins/ienable.js"
166
+ },
167
+ "./mixins/igrid": {
168
+ "import": "./mixins/igrid.js"
169
+ },
170
+ "./mixins/inotify": {
171
+ "import": "./mixins/inotify.js"
172
+ },
173
+ "./mixins/iterable": {
174
+ "import": "./mixins/iterable.js"
175
+ },
176
+ "./mixins/iwatch": {
177
+ "import": "./mixins/iwatch.js"
178
+ },
179
+ "./null": {
180
+ "import": "./null.js"
181
+ },
182
+ "./object": {
183
+ "import": "./object.js"
184
+ },
185
+ "./path": {
186
+ "import": "./path.js"
187
+ },
188
+ "./predicate": {
189
+ "import": "./predicate.js"
190
+ },
191
+ "./prim": {
192
+ "import": "./prim.js"
193
+ },
194
+ "./range": {
195
+ "import": "./range.js"
196
+ },
197
+ "./release": {
198
+ "import": "./release.js"
199
+ },
200
+ "./reset": {
201
+ "import": "./reset.js"
202
+ },
203
+ "./select": {
204
+ "import": "./select.js"
205
+ },
206
+ "./seq": {
207
+ "import": "./seq.js"
208
+ },
209
+ "./set": {
210
+ "import": "./set.js"
211
+ },
212
+ "./stack": {
213
+ "import": "./stack.js"
214
+ },
215
+ "./tuple": {
216
+ "import": "./tuple.js"
217
+ },
218
+ "./typedarray": {
219
+ "import": "./typedarray.js"
220
+ },
221
+ "./watch": {
222
+ "import": "./watch.js"
223
+ }
224
+ },
225
+ "gitHead": "2db9dd34c0c2c60cbfde3dad0bca352b20292f5c\n"
226
+ }