@ham2k/extension-tools 0.14.1 → 1.12.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/README.md +3 -0
- package/h2kext.mjs +11 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,6 +6,9 @@ Build and package extensions for the [Ham2K Logger](https://ham2k.com).
|
|
|
6
6
|
npm install --save-dev @ham2k/extension-tools esbuild
|
|
7
7
|
```
|
|
8
8
|
|
|
9
|
+
The minor version is the newest extension API the packer accepts — 1.12 packs
|
|
10
|
+
bundles up to `"api": 12` — and matches `@ham2k/extension-sdk`'s.
|
|
11
|
+
|
|
9
12
|
## Starting one
|
|
10
13
|
|
|
11
14
|
```sh
|
package/h2kext.mjs
CHANGED
|
@@ -26,6 +26,10 @@ import yazl from "yazl"
|
|
|
26
26
|
/// was built against and the host refuses one it does not speak, so an old app
|
|
27
27
|
/// meeting a newer bundle says so instead of failing at a call site.
|
|
28
28
|
///
|
|
29
|
+
/// It is also the minor version of this package and of `@ham2k/extension-sdk`,
|
|
30
|
+
/// whose `API_VERSION` repeats it: raising it is a minor release of both
|
|
31
|
+
/// (sdk/src/apiVersion.test.ts holds the three together).
|
|
32
|
+
///
|
|
29
33
|
/// Raised when a bundle using something new could not work at all on an app
|
|
30
34
|
/// without it — not for every addition. 2 adds `host.webSocket` and the
|
|
31
35
|
/// manifest's `webSockets` grant; 3 adds timers and `onShow`/`onHide`; 4 lets
|
|
@@ -42,8 +46,12 @@ import yazl from "yazl"
|
|
|
42
46
|
/// `chasing` hook category; 10 adds the DX cluster connection — the
|
|
43
47
|
/// `requiresCluster*` grants, the `host.cluster*` calls and the `cluster`
|
|
44
48
|
/// hook category; 11 adds `n1mm-history:` data-file urls, and
|
|
45
|
-
/// `host.sendRadioRaw` with its `requiresRadioRaw` grant
|
|
46
|
-
|
|
49
|
+
/// `host.sendRadioRaw` with its `requiresRadioRaw` grant; 12 adds scene
|
|
50
|
+
/// controls' `hoverSet`, `icon` layers, room for 512 layers and 256 controls,
|
|
51
|
+
/// knobs' `invertDrag` and scrolls passing through buttons to the knob beneath,
|
|
52
|
+
/// scenes that scroll natively (`scroll`, with `fixed` layers and controls,
|
|
53
|
+
/// and `zoom` strips), `getSpots`' `display`, and `host.suggestQso`.
|
|
54
|
+
export const H2KEXT_API_VERSION = 12
|
|
47
55
|
|
|
48
56
|
/// The first API with `host.webSocket`. A manifest declaring `webSockets`
|
|
49
57
|
/// under an older one is refused: an older app would install it and fail only
|
|
@@ -171,6 +179,7 @@ SHARED_MODULES_BY_API[8] = SHARED_MODULES_BY_API[7]
|
|
|
171
179
|
SHARED_MODULES_BY_API[9] = SHARED_MODULES_BY_API[8]
|
|
172
180
|
SHARED_MODULES_BY_API[10] = SHARED_MODULES_BY_API[9]
|
|
173
181
|
SHARED_MODULES_BY_API[11] = SHARED_MODULES_BY_API[10]
|
|
182
|
+
SHARED_MODULES_BY_API[12] = SHARED_MODULES_BY_API[11]
|
|
174
183
|
|
|
175
184
|
/// What a scaffolded extension declares on day one: the eight modules the SDK
|
|
176
185
|
/// barrel itself reaches, so a project that has written no code yet still
|