x-block-lib 0.9.19 → 0.9.21

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.
@@ -1 +1,42 @@
1
+ import * as Blockly from 'blockly/core';
2
+ import { PropertyKind } from 'x-runtime-lib';
3
+ type GetAppPropertyV1Type = typeof GET_APP_PROPERTY_V1;
4
+ interface GetAppPropertyV1 extends GetAppPropertyV1Type {
5
+ node: {
6
+ id: string;
7
+ key: string;
8
+ alias: string;
9
+ };
10
+ property: {
11
+ id: string;
12
+ kind: PropertyKind | '';
13
+ names: string[];
14
+ };
15
+ }
16
+ export type GetAppPropertyBlockV1 = Blockly.Block & GetAppPropertyV1;
17
+ declare const GET_APP_PROPERTY_V1: {
18
+ init: (this: GetAppPropertyBlockV1) => void;
19
+ initData_: (this: GetAppPropertyBlockV1) => void;
20
+ saveExtraState: (this: GetAppPropertyBlockV1) => {
21
+ node: {
22
+ id: string;
23
+ key: string;
24
+ alias: string;
25
+ };
26
+ property: {
27
+ id: string;
28
+ kind: PropertyKind | "";
29
+ names: string[];
30
+ };
31
+ };
32
+ loadExtraState: (this: GetAppPropertyBlockV1, state: any) => void;
33
+ genNodeOpts_: (this: GetAppPropertyBlockV1) => Blockly.MenuOption[];
34
+ genPropertyOpts_: (this: GetAppPropertyBlockV1) => Blockly.MenuOption[];
35
+ onchange: (this: GetAppPropertyBlockV1, event: Blockly.Events.Abstract) => void;
36
+ onNodeChange_: (this: GetAppPropertyBlockV1, value: string) => void;
37
+ onPropertyChange_: (this: GetAppPropertyBlockV1, value: string) => void;
38
+ updateShape_: (this: GetAppPropertyBlockV1) => void;
39
+ updateShadow_: (this: GetAppPropertyBlockV1) => void;
40
+ checkWarning_: (this: GetAppPropertyBlockV1) => void;
41
+ };
1
42
  export {};
@@ -1 +1,28 @@
1
+ import * as Blockly from 'blockly/core';
2
+ import { Type } from 'x-essential-lib';
3
+ type GetAppStateV1Type = typeof GET_APP_STATE_V1;
4
+ interface GetAppStateV1 extends GetAppStateV1Type {
5
+ state: {
6
+ id: string;
7
+ name: string;
8
+ type: Type;
9
+ };
10
+ }
11
+ export type GetAppStateBlockV1 = Blockly.Block & GetAppStateV1;
12
+ declare const GET_APP_STATE_V1: {
13
+ init: (this: GetAppStateBlockV1) => void;
14
+ initData_: (this: GetAppStateBlockV1) => void;
15
+ saveExtraState: (this: GetAppStateBlockV1) => {
16
+ state: {
17
+ id: string;
18
+ name: string;
19
+ type: Type;
20
+ };
21
+ };
22
+ loadExtraState: (this: GetAppStateBlockV1, state: any) => void;
23
+ genStateOpts_: (this: GetAppStateBlockV1) => Blockly.MenuOption[];
24
+ onchange: (this: GetAppStateBlockV1, event: Blockly.Events.Abstract) => void;
25
+ onStateChange_: (this: GetAppStateBlockV1, value: string) => void;
26
+ checkWarning_: (this: GetAppStateBlockV1) => void;
27
+ };
1
28
  export {};
package/dist/index.js CHANGED
@@ -2491,7 +2491,7 @@ ${addIndent(S, 2)} } catch (e) {
2491
2491
  tooltip: "%{BKY_APP_V1_WATCH_EFFECT_TOOLTIP}",
2492
2492
  helpUrl: "%{BKY_APP_V1_WATCH_EFFECT_HELPURL}"
2493
2493
  }]), javascriptGenerator.forBlock.watch_effect_v1 = function(e) {
2494
- return `function __watchEffect$${encodeString(e.id)}__() {
2494
+ return `async function __watchEffect$${encodeString(e.id)}__() {
2495
2495
  ${javascriptGenerator.statementToCode(e, "HANDLE")}};
2496
2496
  `;
2497
2497
  }, defineBlocksWithJsonArray([{
@@ -8649,43 +8649,39 @@ function setTheme(e) {
8649
8649
  break;
8650
8650
  }
8651
8651
  }
8652
- var reactivity_types = ["get_app_property_v1", "get_app_state_v1"];
8652
+ var reactivityTypes = ["get_app_property_v1", "get_app_state_v1"];
8653
8653
  function addUnique(e, y) {
8654
- return e.find((e) => e === y) === void 0 ? (e.push(y), !0) : !1;
8654
+ e.find((e) => e === y) || e.push(y);
8655
8655
  }
8656
8656
  function gatherWatchEffectBlocks(e) {
8657
8657
  let y = [];
8658
8658
  function b(e) {
8659
- for (let x of e.getChildren(!0)) reactivity_types.includes(x.type) && y.push(x), b(x);
8659
+ for (let x of e.getChildren(!0)) reactivityTypes.includes(x.type) && y.push(x), b(x);
8660
8660
  }
8661
8661
  return b(e), y;
8662
8662
  }
8663
8663
  function makeWatchEffectBlocks(e) {
8664
8664
  let y = [];
8665
- for (let b of e) if (b.type === "get_app_property_v1") {
8666
- let e = b;
8667
- addUnique(y, makeTriggerId({
8668
- type: "elementProperty",
8669
- nodeId: e.node.id,
8670
- propertyKeys: e.property.key
8671
- }));
8672
- } else b.type === "get_app_state_v1" ? addUnique(y, makeTriggerId({
8673
- type: "state",
8674
- stateId: b.state.id
8675
- })) : console.assert(!1);
8665
+ for (let b of e) b.type === "get_app_property_v1" ? addUnique(y, makeTriggerId("propertyTrigger", b.property.id)) : b.type === "get_app_state_v1" ? addUnique(y, makeTriggerId("stateTrigger", b.state.id)) : console.assert(!1);
8676
8666
  return y;
8677
8667
  }
8678
8668
  function gatherAppBindBlocks(e) {
8679
8669
  let y = [];
8680
- for (let b of e.getChildren(!0)) if (reactivity_types.includes(b.type)) y.push(b);
8670
+ for (let b of e.getChildren(!0)) if (reactivityTypes.includes(b.type)) y.push(b);
8681
8671
  else if (b.type === "object_get_v1") {
8682
8672
  let e = b.getInputTargetBlock("OBJECT");
8683
- e && reactivity_types.includes(e.type) && y.push(b);
8673
+ e && reactivityTypes.includes(e.type) && y.push(b);
8684
8674
  }
8685
8675
  return y;
8686
8676
  }
8687
8677
  function makeAppBindBlocks(e) {
8688
- return console.assert(!!e), [];
8678
+ let y = [];
8679
+ for (let b of e) {
8680
+ if (b.type !== "app_bind_entry_v1") continue;
8681
+ let e = b;
8682
+ e.bindType === "property" ? addUnique(y, e.property.id) : e.bindType === "state" ? addUnique(y, e.state.id) : console.assert(!1);
8683
+ }
8684
+ return y;
8689
8685
  }
8690
8686
  function buildReactivity(e) {
8691
8687
  let y = {
@@ -8702,10 +8698,7 @@ function buildReactivity(e) {
8702
8698
  } else if (e.type === "app_bind_v1") {
8703
8699
  let b = makeAppBindBlocks(gatherAppBindBlocks(e));
8704
8700
  y.bind.sets[e.id] = b;
8705
- for (let x of b) {
8706
- let b = makeTriggerId(x);
8707
- y.bind.triggers[b] || (y.bind.triggers[b] = []), addUnique(y.bind.triggers[b], e.id);
8708
- }
8701
+ for (let x of b) y.bind.triggers[x] || (y.bind.triggers[x] = []), addUnique(y.bind.triggers[x], e.id);
8709
8702
  }
8710
8703
  return y;
8711
8704
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "x-block-lib",
3
3
  "private": false,
4
- "version": "0.9.19",
4
+ "version": "0.9.21",
5
5
  "type": "module",
6
6
  "module": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -41,7 +41,7 @@
41
41
  },
42
42
  "peerDependencies": {
43
43
  "x-essential-lib": "^0.9.24",
44
- "x-runtime-lib": "^0.8.191",
44
+ "x-runtime-lib": "^0.8.196",
45
45
  "x-state-lib": "^0.3.38"
46
46
  },
47
47
  "devDependencies": {