react-native-maplibre-gl-js 1.23.2 → 1.23.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.
@@ -25,4 +25,65 @@ export const isWebObjectListenerOnHTMLElement = listener => {
25
25
  return 'elementListener' in listener;
26
26
  };
27
27
  export const getHTMLElementDescriptorListenerName = listener => `${listener.eventName}${listener.cssSelector}`;
28
+ export const removeHTMLElementListeners = (options, optionsThatAreHTMLElements) => {
29
+ if (!options || typeof options !== 'object') {
30
+ return options;
31
+ }
32
+ if (Array.isArray(options)) {
33
+ return options.map(opt => removeHTMLElementListeners(opt, optionsThatAreHTMLElements));
34
+ }
35
+ const result = {};
36
+ for (const key in options) {
37
+ if (optionsThatAreHTMLElements.includes(key) && Array.isArray(options[key]?.listeners)) {
38
+ result[key] = {
39
+ ...options[key],
40
+ listeners: options[key].listeners.map(({
41
+ cssSelector,
42
+ eventName
43
+ }) => ({
44
+ cssSelector,
45
+ eventName
46
+ }))
47
+ };
48
+ } else {
49
+ result[key] = removeHTMLElementListeners(options[key], optionsThatAreHTMLElements);
50
+ }
51
+ }
52
+ return result;
53
+ };
54
+ export const extractHTMLElementListenersFromOptions = (options, optionsThatAreHTMLElements) => {
55
+ let callbacks = {};
56
+ for (const key of optionsThatAreHTMLElements) {
57
+ callbacks = {
58
+ ...callbacks,
59
+ ...extractHTMLElementListenersFromDescriptor(options?.[key])
60
+ };
61
+ }
62
+ return callbacks;
63
+ };
64
+ export const extractHTMLElementListenersFromMethodArgs = methodArgs => {
65
+ let callbacks = {};
66
+ for (const arg of methodArgs) {
67
+ // TODO we need a more robust way to identify HTMLElements. A class for
68
+ // HTMLElementDescriptor could be created.
69
+ if (!arg?.listeners) {
70
+ continue;
71
+ }
72
+ callbacks = {
73
+ ...callbacks,
74
+ ...extractHTMLElementListenersFromDescriptor(arg)
75
+ };
76
+ }
77
+ return callbacks;
78
+ };
79
+ const extractHTMLElementListenersFromDescriptor = htmlElement => {
80
+ const callbacks = {};
81
+ const htmlListeners = htmlElement?.listeners;
82
+ htmlListeners?.forEach(listener => {
83
+ callbacks[getHTMLElementDescriptorListenerName(listener)] = {
84
+ elementListener: listener.callback
85
+ };
86
+ });
87
+ return callbacks;
88
+ };
28
89
  //# sourceMappingURL=messages.utils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["isWebObjectListenerOnRN","listener","isWebObjectListenerOnObject","isWebObjectListenerOnMapLayer","isWebObjectListenerOnHTMLElement","getHTMLElementDescriptorListenerName","eventName","cssSelector"],"sourceRoot":"../../../src","sources":["communication/messages.utils.ts"],"mappings":";;AAQA,OAAO,MAAMA,uBAAuB,GAClCC,QAIoC,IACxB;EACZ,IAAI,CAACA,QAAQ,EAAE;IACb,OAAO,KAAK;EACd;EACA,OAAO,YAAY,IAAIA,QAAQ;AACjC,CAAC;AAED,OAAO,MAAMC,2BAA2B,GACtCD,QAIoC,IACxB;EACZ,IAAI,CAACA,QAAQ,EAAE;IACb,OAAO,KAAK;EACd;EACA,OAAO,gBAAgB,IAAIA,QAAQ;AACrC,CAAC;AAED,OAAO,MAAME,6BAA6B,GACxCF,QAIoC,IACxB;EACZ,IAAI,CAACA,QAAQ,EAAE;IACb,OAAO,KAAK;EACd;EACA,OAAO,eAAe,IAAIA,QAAQ;AACpC,CAAC;AAED,OAAO,MAAMG,gCAAgC,GAC3CH,QAIoC,IACxB;EACZ,IAAI,CAACA,QAAQ,EAAE;IACb,OAAO,KAAK;EACd;EACA,OAAO,iBAAiB,IAAIA,QAAQ;AACtC,CAAC;AAED,OAAO,MAAMI,oCAAoC,GAC/CJ,QAAuC,IAC5B,GAAGA,QAAQ,CAACK,SAAS,GAAGL,QAAQ,CAACM,WAAW,EAAE","ignoreList":[]}
1
+ {"version":3,"names":["isWebObjectListenerOnRN","listener","isWebObjectListenerOnObject","isWebObjectListenerOnMapLayer","isWebObjectListenerOnHTMLElement","getHTMLElementDescriptorListenerName","eventName","cssSelector","removeHTMLElementListeners","options","optionsThatAreHTMLElements","Array","isArray","map","opt","result","key","includes","listeners","extractHTMLElementListenersFromOptions","callbacks","extractHTMLElementListenersFromDescriptor","extractHTMLElementListenersFromMethodArgs","methodArgs","arg","htmlElement","htmlListeners","forEach","elementListener","callback"],"sourceRoot":"../../../src","sources":["communication/messages.utils.ts"],"mappings":"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","ignoreList":[]}
@@ -2,7 +2,8 @@
2
2
 
3
3
  import { useCallback } from 'react';
4
4
  import useMapAtoms from "../../hooks/atoms/useMapAtoms.js";
5
- import { extractHTMLElementListenersFromOptions, removeHTMLElementListeners } from "./useMountUnmountUpdateCallbacks.utils.js";
5
+ import { useStableValue } from "./useMountUnmountUpdateCallbacks.utils.js";
6
+ import { extractHTMLElementListenersFromOptions, removeHTMLElementListeners } from "../../../communication/messages.utils.js";
6
7
 
7
8
  /**
8
9
  * @param input - The RN object props, etc.
@@ -19,24 +20,26 @@ const useMountUnmountUpdateCallbacks = input => {
19
20
  setMapSourceListeners,
20
21
  deleteMapSourceListeners
21
22
  } = useMapAtoms();
23
+ // Behaviors.
24
+ const stableInput = useStableValue(input);
22
25
  const mount = useCallback(() => {
23
- switch (input.type) {
26
+ switch (stableInput.type) {
24
27
  case 'webObject':
25
28
  {
26
29
  dispatchMessage({
27
30
  type: `webObjectMount`,
28
31
  payload: {
29
- options: removeHTMLElementListeners(input.props.options, input.optionsThatAreHTMLElements),
30
- listeners: input.props.listeners,
31
- objectId: input.objectId,
32
- objectType: input.objectType
32
+ options: removeHTMLElementListeners(stableInput.props.options, stableInput.optionsThatAreHTMLElements),
33
+ listeners: stableInput.props.listeners,
34
+ objectId: stableInput.objectId,
35
+ objectType: stableInput.objectType
33
36
  }
34
37
  });
35
38
  setWebObjectListeners({
36
- objectId: input.objectId,
39
+ objectId: stableInput.objectId,
37
40
  listeners: {
38
- ...(input.props.listeners ?? {}),
39
- ...extractHTMLElementListenersFromOptions(input.props.options, input.optionsThatAreHTMLElements)
41
+ ...(stableInput.props.listeners ?? {}),
42
+ ...extractHTMLElementListenersFromOptions(stableInput.props.options, stableInput.optionsThatAreHTMLElements)
40
43
  }
41
44
  });
42
45
  break;
@@ -45,11 +48,11 @@ const useMountUnmountUpdateCallbacks = input => {
45
48
  {
46
49
  dispatchMessage({
47
50
  type: `mapSourceMount`,
48
- payload: input.props
51
+ payload: stableInput.props
49
52
  });
50
53
  setMapSourceListeners({
51
- sourceId: input.props.id,
52
- listeners: input.props.layers.map(item => item.listeners ? {
54
+ sourceId: stableInput.props.id,
55
+ listeners: stableInput.props.layers.map(item => item.listeners ? {
53
56
  layerId: item.layer.id,
54
57
  listeners: item.listeners
55
58
  } : undefined).filter(item => item !== undefined) ?? []
@@ -57,23 +60,23 @@ const useMountUnmountUpdateCallbacks = input => {
57
60
  break;
58
61
  }
59
62
  }
60
- }, [input, dispatchMessage, setWebObjectListeners, setMapSourceListeners]);
63
+ }, [stableInput, dispatchMessage, setWebObjectListeners, setMapSourceListeners]);
61
64
  const update = useCallback(() => {
62
- switch (input.type) {
65
+ switch (stableInput.type) {
63
66
  case 'webObject':
64
67
  {
65
68
  dispatchMessage({
66
69
  type: `webObjectUpdate`,
67
70
  payload: {
68
- options: input.props.options,
69
- listeners: input.props.listeners,
70
- objectId: input.objectId,
71
- objectType: input.objectType
71
+ options: stableInput.props.options,
72
+ listeners: stableInput.props.listeners,
73
+ objectId: stableInput.objectId,
74
+ objectType: stableInput.objectType
72
75
  }
73
76
  });
74
77
  setWebObjectListeners({
75
- objectId: input.objectId,
76
- listeners: input.props.listeners ?? {}
78
+ objectId: stableInput.objectId,
79
+ listeners: stableInput.props.listeners ?? {}
77
80
  });
78
81
  break;
79
82
  }
@@ -81,11 +84,11 @@ const useMountUnmountUpdateCallbacks = input => {
81
84
  {
82
85
  dispatchMessage({
83
86
  type: `mapSourceUpdate`,
84
- payload: input.props
87
+ payload: stableInput.props
85
88
  });
86
89
  setMapSourceListeners({
87
- sourceId: input.props.id,
88
- listeners: input.props.layers.map(item => item.listeners ? {
90
+ sourceId: stableInput.props.id,
91
+ listeners: stableInput.props.layers.map(item => item.listeners ? {
89
92
  layerId: item.layer.id,
90
93
  listeners: item.listeners
91
94
  } : undefined).filter(item => item !== undefined) ?? []
@@ -93,19 +96,19 @@ const useMountUnmountUpdateCallbacks = input => {
93
96
  break;
94
97
  }
95
98
  }
96
- }, [input, dispatchMessage, setWebObjectListeners, setMapSourceListeners]);
99
+ }, [stableInput, dispatchMessage, setWebObjectListeners, setMapSourceListeners]);
97
100
  const unmount = useCallback(() => {
98
- switch (input.type) {
101
+ switch (stableInput.type) {
99
102
  case 'webObject':
100
103
  {
101
104
  dispatchMessage({
102
105
  type: `webObjectUnmount`,
103
106
  payload: {
104
- objectId: input.objectId
107
+ objectId: stableInput.objectId
105
108
  }
106
109
  });
107
110
  deleteWebObjectListeners({
108
- objectId: input.objectId
111
+ objectId: stableInput.objectId
109
112
  });
110
113
  break;
111
114
  }
@@ -114,16 +117,16 @@ const useMountUnmountUpdateCallbacks = input => {
114
117
  dispatchMessage({
115
118
  type: `mapSourceUnmount`,
116
119
  payload: {
117
- sourceId: input.props.id
120
+ sourceId: stableInput.props.id
118
121
  }
119
122
  });
120
123
  deleteMapSourceListeners({
121
- sourceId: input.props.id
124
+ sourceId: stableInput.props.id
122
125
  });
123
126
  break;
124
127
  }
125
128
  }
126
- }, [input, dispatchMessage, deleteWebObjectListeners, deleteMapSourceListeners]);
129
+ }, [stableInput, dispatchMessage, deleteWebObjectListeners, deleteMapSourceListeners]);
127
130
  return {
128
131
  mount,
129
132
  update,
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useMapAtoms","extractHTMLElementListenersFromOptions","removeHTMLElementListeners","useMountUnmountUpdateCallbacks","input","dispatchMessage","setWebObjectListeners","deleteWebObjectListeners","setMapSourceListeners","deleteMapSourceListeners","mount","type","payload","options","props","optionsThatAreHTMLElements","listeners","objectId","objectType","sourceId","id","layers","map","item","layerId","layer","undefined","filter","update","unmount"],"sourceRoot":"../../../../../src","sources":["react-native/components-factories/hooks/useMountUnmountUpdateCallbacks.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AAEnC,OAAOC,WAAW,MAAM,kCAA+B;AACvD,SACEC,sCAAsC,EACtCC,0BAA0B,QACrB,2CAAwC;;AAE/C;AACA;AACA;AACA;AACA;AACA,MAAMC,8BAA8B,GAAIC,KAA8B,IAAK;EACzE;EACA;EACA,MAAM;IACJC,eAAe;IACfC,qBAAqB;IACrBC,wBAAwB;IACxBC,qBAAqB;IACrBC;EACF,CAAC,GAAGT,WAAW,CAAC,CAAC;EACjB,MAAMU,KAAK,GAAGX,WAAW,CAAC,MAAM;IAC9B,QAAQK,KAAK,CAACO,IAAI;MAChB,KAAK,WAAW;QAAE;UAChBN,eAAe,CAAC;YACdM,IAAI,EAAE,gBAAgB;YACtBC,OAAO,EAAE;cACPC,OAAO,EAAEX,0BAA0B,CACjCE,KAAK,CAACU,KAAK,CAACD,OAAO,EACnBT,KAAK,CAACW,0BACR,CAAC;cACDC,SAAS,EAAEZ,KAAK,CAACU,KAAK,CAACE,SAAS;cAChCC,QAAQ,EAAEb,KAAK,CAACa,QAAQ;cACxBC,UAAU,EAAEd,KAAK,CAACc;YACpB;UACF,CAAC,CAAC;UACFZ,qBAAqB,CAAC;YACpBW,QAAQ,EAAEb,KAAK,CAACa,QAAQ;YACxBD,SAAS,EAAE;cACT,IAAIZ,KAAK,CAACU,KAAK,CAACE,SAAS,IAAI,CAAC,CAAC,CAAC;cAChC,GAAGf,sCAAsC,CACvCG,KAAK,CAACU,KAAK,CAACD,OAAO,EACnBT,KAAK,CAACW,0BACR;YACF;UACF,CAAC,CAAC;UACF;QACF;MACA,KAAK,WAAW;QAAE;UAChBV,eAAe,CAAC;YACdM,IAAI,EAAE,gBAAgB;YACtBC,OAAO,EAAER,KAAK,CAACU;UACjB,CAAC,CAAC;UACFN,qBAAqB,CAAC;YACpBW,QAAQ,EAAEf,KAAK,CAACU,KAAK,CAACM,EAAE;YACxBJ,SAAS,EACPZ,KAAK,CAACU,KAAK,CAACO,MAAM,CACfC,GAAG,CAAEC,IAAI,IACRA,IAAI,CAACP,SAAS,GACV;cACEQ,OAAO,EAAED,IAAI,CAACE,KAAK,CAACL,EAAE;cACtBJ,SAAS,EAAEO,IAAI,CAACP;YAClB,CAAC,GACDU,SACN,CAAC,CACAC,MAAM,CAAEJ,IAAI,IAAKA,IAAI,KAAKG,SAAS,CAAC,IAAI;UAC/C,CAAC,CAAC;UACF;QACF;IACF;EACF,CAAC,EAAE,CAACtB,KAAK,EAAEC,eAAe,EAAEC,qBAAqB,EAAEE,qBAAqB,CAAC,CAAC;EAE1E,MAAMoB,MAAM,GAAG7B,WAAW,CAAC,MAAM;IAC/B,QAAQK,KAAK,CAACO,IAAI;MAChB,KAAK,WAAW;QAAE;UAChBN,eAAe,CAAC;YACdM,IAAI,EAAE,iBAAiB;YACvBC,OAAO,EAAE;cACPC,OAAO,EAAET,KAAK,CAACU,KAAK,CAACD,OAAO;cAC5BG,SAAS,EAAEZ,KAAK,CAACU,KAAK,CAACE,SAAS;cAChCC,QAAQ,EAAEb,KAAK,CAACa,QAAQ;cACxBC,UAAU,EAAEd,KAAK,CAACc;YACpB;UACF,CAAC,CAAC;UACFZ,qBAAqB,CAAC;YACpBW,QAAQ,EAAEb,KAAK,CAACa,QAAQ;YACxBD,SAAS,EAAEZ,KAAK,CAACU,KAAK,CAACE,SAAS,IAAI,CAAC;UACvC,CAAC,CAAC;UACF;QACF;MACA,KAAK,WAAW;QAAE;UAChBX,eAAe,CAAC;YACdM,IAAI,EAAE,iBAAiB;YACvBC,OAAO,EAAER,KAAK,CAACU;UACjB,CAAC,CAAC;UACFN,qBAAqB,CAAC;YACpBW,QAAQ,EAAEf,KAAK,CAACU,KAAK,CAACM,EAAE;YACxBJ,SAAS,EACPZ,KAAK,CAACU,KAAK,CAACO,MAAM,CACfC,GAAG,CAAEC,IAAI,IACRA,IAAI,CAACP,SAAS,GACV;cACEQ,OAAO,EAAED,IAAI,CAACE,KAAK,CAACL,EAAE;cACtBJ,SAAS,EAAEO,IAAI,CAACP;YAClB,CAAC,GACDU,SACN,CAAC,CACAC,MAAM,CAAEJ,IAAI,IAAKA,IAAI,KAAKG,SAAS,CAAC,IAAI;UAC/C,CAAC,CAAC;UACF;QACF;IACF;EACF,CAAC,EAAE,CAACtB,KAAK,EAAEC,eAAe,EAAEC,qBAAqB,EAAEE,qBAAqB,CAAC,CAAC;EAE1E,MAAMqB,OAAO,GAAG9B,WAAW,CAAC,MAAM;IAChC,QAAQK,KAAK,CAACO,IAAI;MAChB,KAAK,WAAW;QAAE;UAChBN,eAAe,CAAC;YACdM,IAAI,EAAE,kBAAkB;YACxBC,OAAO,EAAE;cAAEK,QAAQ,EAAEb,KAAK,CAACa;YAAS;UACtC,CAAC,CAAC;UACFV,wBAAwB,CAAC;YAAEU,QAAQ,EAAEb,KAAK,CAACa;UAAS,CAAC,CAAC;UACtD;QACF;MACA,KAAK,WAAW;QAAE;UAChBZ,eAAe,CAAC;YACdM,IAAI,EAAE,kBAAkB;YACxBC,OAAO,EAAE;cAAEO,QAAQ,EAAEf,KAAK,CAACU,KAAK,CAACM;YAAG;UACtC,CAAC,CAAC;UACFX,wBAAwB,CAAC;YAAEU,QAAQ,EAAEf,KAAK,CAACU,KAAK,CAACM;UAAG,CAAC,CAAC;UACtD;QACF;IACF;EACF,CAAC,EAAE,CACDhB,KAAK,EACLC,eAAe,EACfE,wBAAwB,EACxBE,wBAAwB,CACzB,CAAC;EAEF,OAAO;IAAEC,KAAK;IAAEkB,MAAM;IAAEC;EAAQ,CAAC;AACnC,CAAC;AAED,eAAe1B,8BAA8B","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useMapAtoms","useStableValue","extractHTMLElementListenersFromOptions","removeHTMLElementListeners","useMountUnmountUpdateCallbacks","input","dispatchMessage","setWebObjectListeners","deleteWebObjectListeners","setMapSourceListeners","deleteMapSourceListeners","stableInput","mount","type","payload","options","props","optionsThatAreHTMLElements","listeners","objectId","objectType","sourceId","id","layers","map","item","layerId","layer","undefined","filter","update","unmount"],"sourceRoot":"../../../../../src","sources":["react-native/components-factories/hooks/useMountUnmountUpdateCallbacks.ts"],"mappings":"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","ignoreList":[]}
@@ -1,65 +1,12 @@
1
1
  "use strict";
2
2
 
3
- import { getHTMLElementDescriptorListenerName } from "../../../communication/messages.utils.js";
4
- export const removeHTMLElementListeners = (options, optionsThatAreHTMLElements) => {
5
- if (!options || typeof options !== 'object') {
6
- return options;
7
- }
8
- if (Array.isArray(options)) {
9
- return options.map(opt => removeHTMLElementListeners(opt, optionsThatAreHTMLElements));
10
- }
11
- const result = {};
12
- for (const key in options) {
13
- if (optionsThatAreHTMLElements.includes(key) && Array.isArray(options[key]?.listeners)) {
14
- result[key] = {
15
- ...options[key],
16
- listeners: options[key].listeners.map(({
17
- cssSelector,
18
- eventName
19
- }) => ({
20
- cssSelector,
21
- eventName
22
- }))
23
- };
24
- } else {
25
- result[key] = removeHTMLElementListeners(options[key], optionsThatAreHTMLElements);
26
- }
27
- }
28
- return result;
29
- };
30
- export const extractHTMLElementListenersFromOptions = (options, optionsThatAreHTMLElements) => {
31
- let callbacks = {};
32
- for (const key of optionsThatAreHTMLElements) {
33
- callbacks = {
34
- ...callbacks,
35
- ...extractHTMLElementListenersFromDescriptor(options?.[key])
36
- };
37
- }
38
- return callbacks;
39
- };
40
- export const extractHTMLElementListenersFromMethodArgs = methodArgs => {
41
- let callbacks = {};
42
- for (const arg of methodArgs) {
43
- // TODO we need a more robust way to identify HTMLElements. A class for
44
- // HTMLElementDescriptor could be created.
45
- if (!arg?.listeners) {
46
- continue;
47
- }
48
- callbacks = {
49
- ...callbacks,
50
- ...extractHTMLElementListenersFromDescriptor(arg)
51
- };
52
- }
53
- return callbacks;
54
- };
55
- const extractHTMLElementListenersFromDescriptor = htmlElement => {
56
- const callbacks = {};
57
- const htmlListeners = htmlElement?.listeners;
58
- htmlListeners?.forEach(listener => {
59
- callbacks[getHTMLElementDescriptorListenerName(listener)] = {
60
- elementListener: listener.callback
61
- };
62
- });
63
- return callbacks;
3
+ import { useRef } from 'react';
4
+ import equal from 'fast-deep-equal';
5
+ export const useStableValue = value => {
6
+ const ref = useRef(value);
7
+ if (!equal(ref.current, value)) {
8
+ ref.current = value;
9
+ }
10
+ return ref.current;
64
11
  };
65
12
  //# sourceMappingURL=useMountUnmountUpdateCallbacks.utils.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getHTMLElementDescriptorListenerName","removeHTMLElementListeners","options","optionsThatAreHTMLElements","Array","isArray","map","opt","result","key","includes","listeners","cssSelector","eventName","extractHTMLElementListenersFromOptions","callbacks","extractHTMLElementListenersFromDescriptor","extractHTMLElementListenersFromMethodArgs","methodArgs","arg","htmlElement","htmlListeners","forEach","listener","elementListener","callback"],"sourceRoot":"../../../../../src","sources":["react-native/components-factories/hooks/useMountUnmountUpdateCallbacks.utils.ts"],"mappings":";;AAKA,SAASA,oCAAoC,QAAQ,0CAAuC;AAE5F,OAAO,MAAMC,0BAA0B,GAAGA,CACxCC,OAAY,EACZC,0BAA6C,KACrC;EACR,IAAI,CAACD,OAAO,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;IAC3C,OAAOA,OAAO;EAChB;EACA,IAAIE,KAAK,CAACC,OAAO,CAACH,OAAO,CAAC,EAAE;IAC1B,OAAOA,OAAO,CAACI,GAAG,CAAEC,GAAG,IACrBN,0BAA0B,CAACM,GAAG,EAAEJ,0BAA0B,CAC5D,CAAC;EACH;EAEA,MAAMK,MAAW,GAAG,CAAC,CAAC;EACtB,KAAK,MAAMC,GAAG,IAAIP,OAAO,EAAE;IACzB,IACEC,0BAA0B,CAACO,QAAQ,CAACD,GAAG,CAAC,IACxCL,KAAK,CAACC,OAAO,CAACH,OAAO,CAACO,GAAG,CAAC,EAAEE,SAAS,CAAC,EACtC;MACAH,MAAM,CAACC,GAAG,CAAC,GAAG;QACZ,GAAGP,OAAO,CAACO,GAAG,CAAC;QACfE,SAAS,EAAET,OAAO,CAACO,GAAG,CAAC,CAACE,SAAS,CAACL,GAAG,CACnC,CAAC;UAAEM,WAAW;UAAEC;QAAyC,CAAC,MAAM;UAC9DD,WAAW;UACXC;QACF,CAAC,CACH;MACF,CAAC;IACH,CAAC,MAAM;MACLL,MAAM,CAACC,GAAG,CAAC,GAAGR,0BAA0B,CACtCC,OAAO,CAACO,GAAG,CAAC,EACZN,0BACF,CAAC;IACH;EACF;EACA,OAAOK,MAAM;AACf,CAAC;AAED,OAAO,MAAMM,sCAAsC,GAAGA,CACpDZ,OAAY,EACZC,0BAA6C,KACtB;EACvB,IAAIY,SAA6B,GAAG,CAAC,CAAC;EAEtC,KAAK,MAAMN,GAAG,IAAIN,0BAA0B,EAAE;IAC5CY,SAAS,GAAG;MACV,GAAGA,SAAS;MACZ,GAAGC,yCAAyC,CAACd,OAAO,GAAGO,GAAG,CAAC;IAC7D,CAAC;EACH;EAEA,OAAOM,SAAS;AAClB,CAAC;AAED,OAAO,MAAME,yCAAyC,GACpDC,UAAiB,IACM;EACvB,IAAIH,SAA6B,GAAG,CAAC,CAAC;EAEtC,KAAK,MAAMI,GAAG,IAAID,UAAU,EAAE;IAC5B;IACA;IACA,IAAI,CAACC,GAAG,EAAER,SAAS,EAAE;MACnB;IACF;IACAI,SAAS,GAAG;MACV,GAAGA,SAAS;MACZ,GAAGC,yCAAyC,CAACG,GAAG;IAClD,CAAC;EACH;EAEA,OAAOJ,SAAS;AAClB,CAAC;AAED,MAAMC,yCAAyC,GAC7CI,WAA8C,IACvB;EACvB,MAAML,SAA6B,GAAG,CAAC,CAAC;EACxC,MAAMM,aAAa,GAAGD,WAAW,EAAET,SAEtB;EAEbU,aAAa,EAAEC,OAAO,CAAEC,QAAQ,IAAK;IACnCR,SAAS,CAACf,oCAAoC,CAACuB,QAAQ,CAAC,CAAC,GAAG;MAC1DC,eAAe,EAAED,QAAQ,CAACE;IAC5B,CAAC;EACH,CAAC,CAAC;EAEF,OAAOV,SAAS;AAClB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useRef","equal","useStableValue","value","ref","current"],"sourceRoot":"../../../../../src","sources":["react-native/components-factories/hooks/useMountUnmountUpdateCallbacks.utils.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,OAAO;AAC9B,OAAOC,KAAK,MAAM,iBAAiB;AAEnC,OAAO,MAAMC,cAAc,GAAOC,KAAQ,IAAQ;EAChD,MAAMC,GAAG,GAAGJ,MAAM,CAAIG,KAAK,CAAC;EAC5B,IAAI,CAACF,KAAK,CAACG,GAAG,CAACC,OAAO,EAAEF,KAAK,CAAC,EAAE;IAC9BC,GAAG,CAACC,OAAO,GAAGF,KAAK;EACrB;EACA,OAAOC,GAAG,CAACC,OAAO;AACpB,CAAC","ignoreList":[]}
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { useCallback, useImperativeHandle, useMemo, useRef } from 'react';
4
4
  import useMapAtoms from "../../hooks/atoms/useMapAtoms.js";
5
- import { extractHTMLElementListenersFromMethodArgs } from "./useMountUnmountUpdateCallbacks.utils.js";
6
5
  import { genRequestId } from "./useWebObjectMethodsProxy.utils.js";
6
+ import { extractHTMLElementListenersFromMethodArgs } from "../../../communication/messages.utils.js";
7
7
 
8
8
  /**
9
9
  * Create a proxy to call the methods of the corresponding web world object,
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useImperativeHandle","useMemo","useRef","useMapAtoms","extractHTMLElementListenersFromMethodArgs","genRequestId","useWebObjectMethodsProxy","ref","objectId","methodsThatContainHTMLElements","methodsThatContainHTMLElementsRef","dispatchMessage","setWebObjectPendingMethodResponse","updateWebObjectListeners","createProxy","Proxy","get","_","propKey","args","Promise","resolve","requestId","current","includes","newListeners","type","payload","method","methodsProxy"],"sourceRoot":"../../../../../src","sources":["react-native/components-factories/hooks/useWebObjectMethodsProxy.ts"],"mappings":";;AAAA,SAEEA,WAAW,EACXC,mBAAmB,EACnBC,OAAO,EACPC,MAAM,QACD,OAAO;AAKd,OAAOC,WAAW,MAAM,kCAA+B;AACvD,SAASC,yCAAyC,QAAQ,2CAAwC;AAClG,SAASC,YAAY,QAAQ,qCAAkC;;AAE/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAGA,CACtCC,GAAsB,EACtBC,QAAqB,EACrBC,8BAAiD,KAC9C;EACH;EACA,MAAMC,iCAAiC,GAAGR,MAAM,CAC9CO,8BACF,CAAC;EACD;EACA;EACA,MAAM;IACJE,eAAe;IACfC,iCAAiC;IACjCC;EACF,CAAC,GAAGV,WAAW,CAAC,CAAC;EAEjB,MAAMW,WAAW,GAAGf,WAAW,CAAC,MAAW;IACzC,OAAO,IAAIgB,KAAK,CACd,CAAC,CAAC,EACF;MACEC,GAAGA,CAACC,CAAC,EAAEC,OAAO,EAAE;QACd,IAAIA,OAAO,KAAK,OAAO,EAAE;UACvB,OAAO,MAAMV,QAAQ;QACvB;QACA,OAAO,CAAC,GAAGW,IAAW,KAAK;UACzB,OAAO,IAAIC,OAAO,CAAEC,OAAO,IAAK;YAC9B,MAAMC,SAAS,GAAGjB,YAAY,CAAC,CAAC;YAChC;YACA,IACEK,iCAAiC,CAACa,OAAO,CAACC,QAAQ,CAChDN,OACF,CAAC,EACD;cACAL,wBAAwB,CAAC;gBACvBL,QAAQ;gBACRiB,YAAY,EAAErB,yCAAyC,CAACe,IAAI;cAC9D,CAAC,CAAC;YACJ;YACA;YACAP,iCAAiC,CAAC;cAAEU,SAAS;cAAED;YAAQ,CAAC,CAAC;YACzD;YACAV,eAAe,CAAC;cACde,IAAI,EAAE,qBAAqB;cAC3BC,OAAO,EAAE;gBACPL,SAAS;gBACTd,QAAQ;gBACRoB,MAAM,EAAEV,OAAiB;gBACzBC;cACF;YACF,CAAC,CAAC;UACJ,CAAC,CAAC;QACJ,CAAC;MACH;IACF,CACF,CAAC;EACH,CAAC,EAAE,CACDX,QAAQ,EACRI,iCAAiC,EACjCD,eAAe,EACfE,wBAAwB,CACzB,CAAC;EAEF,MAAMgB,YAAY,GAAG5B,OAAO,CAAC,MAAMa,WAAW,CAAC,CAAC,EAAE,CAACA,WAAW,CAAC,CAAC;EAChE;EACAd,mBAAmB,CAACO,GAAG,EAAE,MAAMsB,YAAY,CAAC;AAC9C,CAAC;AAED,eAAevB,wBAAwB","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useImperativeHandle","useMemo","useRef","useMapAtoms","genRequestId","extractHTMLElementListenersFromMethodArgs","useWebObjectMethodsProxy","ref","objectId","methodsThatContainHTMLElements","methodsThatContainHTMLElementsRef","dispatchMessage","setWebObjectPendingMethodResponse","updateWebObjectListeners","createProxy","Proxy","get","_","propKey","args","Promise","resolve","requestId","current","includes","newListeners","type","payload","method","methodsProxy"],"sourceRoot":"../../../../../src","sources":["react-native/components-factories/hooks/useWebObjectMethodsProxy.ts"],"mappings":";;AAAA,SAEEA,WAAW,EACXC,mBAAmB,EACnBC,OAAO,EACPC,MAAM,QACD,OAAO;AAKd,OAAOC,WAAW,MAAM,kCAA+B;AACvD,SAASC,YAAY,QAAQ,qCAAkC;AAC/D,SAASC,yCAAyC,QAAQ,0CAAuC;;AAEjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,wBAAwB,GAAGA,CACtCC,GAAsB,EACtBC,QAAqB,EACrBC,8BAAiD,KAC9C;EACH;EACA,MAAMC,iCAAiC,GAAGR,MAAM,CAC9CO,8BACF,CAAC;EACD;EACA;EACA,MAAM;IACJE,eAAe;IACfC,iCAAiC;IACjCC;EACF,CAAC,GAAGV,WAAW,CAAC,CAAC;EAEjB,MAAMW,WAAW,GAAGf,WAAW,CAAC,MAAW;IACzC,OAAO,IAAIgB,KAAK,CACd,CAAC,CAAC,EACF;MACEC,GAAGA,CAACC,CAAC,EAAEC,OAAO,EAAE;QACd,IAAIA,OAAO,KAAK,OAAO,EAAE;UACvB,OAAO,MAAMV,QAAQ;QACvB;QACA,OAAO,CAAC,GAAGW,IAAW,KAAK;UACzB,OAAO,IAAIC,OAAO,CAAEC,OAAO,IAAK;YAC9B,MAAMC,SAAS,GAAGlB,YAAY,CAAC,CAAC;YAChC;YACA,IACEM,iCAAiC,CAACa,OAAO,CAACC,QAAQ,CAChDN,OACF,CAAC,EACD;cACAL,wBAAwB,CAAC;gBACvBL,QAAQ;gBACRiB,YAAY,EAAEpB,yCAAyC,CAACc,IAAI;cAC9D,CAAC,CAAC;YACJ;YACA;YACAP,iCAAiC,CAAC;cAAEU,SAAS;cAAED;YAAQ,CAAC,CAAC;YACzD;YACAV,eAAe,CAAC;cACde,IAAI,EAAE,qBAAqB;cAC3BC,OAAO,EAAE;gBACPL,SAAS;gBACTd,QAAQ;gBACRoB,MAAM,EAAEV,OAAiB;gBACzBC;cACF;YACF,CAAC,CAAC;UACJ,CAAC,CAAC;QACJ,CAAC;MACH;IACF,CACF,CAAC;EACH,CAAC,EAAE,CACDX,QAAQ,EACRI,iCAAiC,EACjCD,eAAe,EACfE,wBAAwB,CACzB,CAAC;EAEF,MAAMgB,YAAY,GAAG5B,OAAO,CAAC,MAAMa,WAAW,CAAC,CAAC,EAAE,CAACA,WAAW,CAAC,CAAC;EAChE;EACAd,mBAAmB,CAACO,GAAG,EAAE,MAAMsB,YAAY,CAAC;AAC9C,CAAC;AAED,eAAevB,wBAAwB","ignoreList":[]}
@@ -1,8 +1,11 @@
1
- import type { WebObjectListenerOnHTMLElement, WebObjectListenerOnMapLayer, WebObjectListenerOnObject, WebObjectListenerOnRN } from '../react-native/components-factories/web-objects/createWebObjectAsComponent.types';
1
+ import type { WebObjectListenerOnHTMLElement, WebObjectListenerOnMapLayer, WebObjectListenerOnObject, WebObjectListenerOnRN, WebObjectListeners } from '../react-native/components-factories/web-objects/createWebObjectAsComponent.types';
2
2
  import type { HTMLElementDescriptorListener } from './messages.types';
3
3
  export declare const isWebObjectListenerOnRN: (listener?: WebObjectListenerOnRN<any> | WebObjectListenerOnObject<any> | WebObjectListenerOnHTMLElement<any> | WebObjectListenerOnMapLayer<any>) => boolean;
4
4
  export declare const isWebObjectListenerOnObject: (listener?: WebObjectListenerOnRN<any> | WebObjectListenerOnObject<any> | WebObjectListenerOnHTMLElement<any> | WebObjectListenerOnMapLayer<any>) => boolean;
5
5
  export declare const isWebObjectListenerOnMapLayer: (listener?: WebObjectListenerOnRN<any> | WebObjectListenerOnObject<any> | WebObjectListenerOnHTMLElement<any> | WebObjectListenerOnMapLayer<any>) => boolean;
6
6
  export declare const isWebObjectListenerOnHTMLElement: (listener?: WebObjectListenerOnRN<any> | WebObjectListenerOnObject<any> | WebObjectListenerOnHTMLElement<any> | WebObjectListenerOnMapLayer<any>) => boolean;
7
7
  export declare const getHTMLElementDescriptorListenerName: (listener: HTMLElementDescriptorListener) => string;
8
+ export declare const removeHTMLElementListeners: (options: any, optionsThatAreHTMLElements: readonly string[]) => any;
9
+ export declare const extractHTMLElementListenersFromOptions: (options: any, optionsThatAreHTMLElements: readonly string[]) => WebObjectListeners;
10
+ export declare const extractHTMLElementListenersFromMethodArgs: (methodArgs: any[]) => WebObjectListeners;
8
11
  //# sourceMappingURL=messages.utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.utils.d.ts","sourceRoot":"","sources":["../../../../src/communication/messages.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,8BAA8B,EAC9B,2BAA2B,EAC3B,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,mFAAmF,CAAA;AAC1F,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAA;AAErE,eAAO,MAAM,uBAAuB,GAClC,WACI,qBAAqB,CAAC,GAAG,CAAC,GAC1B,yBAAyB,CAAC,GAAG,CAAC,GAC9B,8BAA8B,CAAC,GAAG,CAAC,GACnC,2BAA2B,CAAC,GAAG,CAAC,KACnC,OAKF,CAAA;AAED,eAAO,MAAM,2BAA2B,GACtC,WACI,qBAAqB,CAAC,GAAG,CAAC,GAC1B,yBAAyB,CAAC,GAAG,CAAC,GAC9B,8BAA8B,CAAC,GAAG,CAAC,GACnC,2BAA2B,CAAC,GAAG,CAAC,KACnC,OAKF,CAAA;AAED,eAAO,MAAM,6BAA6B,GACxC,WACI,qBAAqB,CAAC,GAAG,CAAC,GAC1B,yBAAyB,CAAC,GAAG,CAAC,GAC9B,8BAA8B,CAAC,GAAG,CAAC,GACnC,2BAA2B,CAAC,GAAG,CAAC,KACnC,OAKF,CAAA;AAED,eAAO,MAAM,gCAAgC,GAC3C,WACI,qBAAqB,CAAC,GAAG,CAAC,GAC1B,yBAAyB,CAAC,GAAG,CAAC,GAC9B,8BAA8B,CAAC,GAAG,CAAC,GACnC,2BAA2B,CAAC,GAAG,CAAC,KACnC,OAKF,CAAA;AAED,eAAO,MAAM,oCAAoC,GAC/C,UAAU,6BAA6B,KACtC,MAAwD,CAAA"}
1
+ {"version":3,"file":"messages.utils.d.ts","sourceRoot":"","sources":["../../../../src/communication/messages.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,8BAA8B,EAC9B,2BAA2B,EAC3B,yBAAyB,EACzB,qBAAqB,EACrB,kBAAkB,EACnB,MAAM,mFAAmF,CAAA;AAC1F,OAAO,KAAK,EAEV,6BAA6B,EAC9B,MAAM,kBAAkB,CAAA;AAEzB,eAAO,MAAM,uBAAuB,GAClC,WACI,qBAAqB,CAAC,GAAG,CAAC,GAC1B,yBAAyB,CAAC,GAAG,CAAC,GAC9B,8BAA8B,CAAC,GAAG,CAAC,GACnC,2BAA2B,CAAC,GAAG,CAAC,KACnC,OAKF,CAAA;AAED,eAAO,MAAM,2BAA2B,GACtC,WACI,qBAAqB,CAAC,GAAG,CAAC,GAC1B,yBAAyB,CAAC,GAAG,CAAC,GAC9B,8BAA8B,CAAC,GAAG,CAAC,GACnC,2BAA2B,CAAC,GAAG,CAAC,KACnC,OAKF,CAAA;AAED,eAAO,MAAM,6BAA6B,GACxC,WACI,qBAAqB,CAAC,GAAG,CAAC,GAC1B,yBAAyB,CAAC,GAAG,CAAC,GAC9B,8BAA8B,CAAC,GAAG,CAAC,GACnC,2BAA2B,CAAC,GAAG,CAAC,KACnC,OAKF,CAAA;AAED,eAAO,MAAM,gCAAgC,GAC3C,WACI,qBAAqB,CAAC,GAAG,CAAC,GAC1B,yBAAyB,CAAC,GAAG,CAAC,GAC9B,8BAA8B,CAAC,GAAG,CAAC,GACnC,2BAA2B,CAAC,GAAG,CAAC,KACnC,OAKF,CAAA;AAED,eAAO,MAAM,oCAAoC,GAC/C,UAAU,6BAA6B,KACtC,MAAwD,CAAA;AAE3D,eAAO,MAAM,0BAA0B,GACrC,SAAS,GAAG,EACZ,4BAA4B,SAAS,MAAM,EAAE,KAC5C,GAiCF,CAAA;AAED,eAAO,MAAM,sCAAsC,GACjD,SAAS,GAAG,EACZ,4BAA4B,SAAS,MAAM,EAAE,KAC5C,kBAWF,CAAA;AAED,eAAO,MAAM,yCAAyC,GACpD,YAAY,GAAG,EAAE,KAChB,kBAgBF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useMountUnmountUpdateCallbacks.d.ts","sourceRoot":"","sources":["../../../../../../src/react-native/components-factories/hooks/useMountUnmountUpdateCallbacks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAA;AAOrF;;;;GAIG;AACH,QAAA,MAAM,8BAA8B,GAAI,OAAO,uBAAuB;;;;CAkIrE,CAAA;AAED,eAAe,8BAA8B,CAAA"}
1
+ {"version":3,"file":"useMountUnmountUpdateCallbacks.d.ts","sourceRoot":"","sources":["../../../../../../src/react-native/components-factories/hooks/useMountUnmountUpdateCallbacks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAA;AAQrF;;;;GAIG;AACH,QAAA,MAAM,8BAA8B,GAAI,OAAO,uBAAuB;;;;CA+IrE,CAAA;AAED,eAAe,8BAA8B,CAAA"}
@@ -1,5 +1,2 @@
1
- import type { WebObjectListeners } from '../web-objects/createWebObjectAsComponent.types';
2
- export declare const removeHTMLElementListeners: (options: any, optionsThatAreHTMLElements: readonly string[]) => any;
3
- export declare const extractHTMLElementListenersFromOptions: (options: any, optionsThatAreHTMLElements: readonly string[]) => WebObjectListeners;
4
- export declare const extractHTMLElementListenersFromMethodArgs: (methodArgs: any[]) => WebObjectListeners;
1
+ export declare const useStableValue: <T>(value: T) => T;
5
2
  //# sourceMappingURL=useMountUnmountUpdateCallbacks.utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useMountUnmountUpdateCallbacks.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/react-native/components-factories/hooks/useMountUnmountUpdateCallbacks.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAA;AAOzF,eAAO,MAAM,0BAA0B,GACrC,SAAS,GAAG,EACZ,4BAA4B,SAAS,MAAM,EAAE,KAC5C,GAiCF,CAAA;AAED,eAAO,MAAM,sCAAsC,GACjD,SAAS,GAAG,EACZ,4BAA4B,SAAS,MAAM,EAAE,KAC5C,kBAWF,CAAA;AAED,eAAO,MAAM,yCAAyC,GACpD,YAAY,GAAG,EAAE,KAChB,kBAgBF,CAAA"}
1
+ {"version":3,"file":"useMountUnmountUpdateCallbacks.utils.d.ts","sourceRoot":"","sources":["../../../../../../src/react-native/components-factories/hooks/useMountUnmountUpdateCallbacks.utils.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,cAAc,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,CAM5C,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-maplibre-gl-js",
3
- "version": "1.23.2",
3
+ "version": "1.23.3",
4
4
  "description": "MapLibre GL JS for React Native",
5
5
  "author": "Emilien Aufauvre <emilien.aufauvre@live.fr> (https://github.com/emilienaufauvre)",
6
6
  "license": "MIT",