@nativescript/core 8.5.0-alpha.0 → 8.5.0-alpha.2

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 (152) hide show
  1. package/abortcontroller/abortsignal.js +5 -5
  2. package/abortcontroller/abortsignal.js.map +1 -1
  3. package/accessibility/accessibility-common.d.ts +1 -1
  4. package/accessibility/accessibility-common.js.map +1 -1
  5. package/accessibility/font-scale.android.js.map +1 -1
  6. package/accessibility/index.android.d.ts +2 -2
  7. package/accessibility/index.android.js.map +1 -1
  8. package/accessibility/index.d.ts +1 -2
  9. package/accessibility/index.ios.d.ts +1 -2
  10. package/accessibility/index.ios.js.map +1 -1
  11. package/application/application-common.d.ts +5 -4
  12. package/application/application-common.js +5 -5
  13. package/application/application-common.js.map +1 -1
  14. package/application/application-interfaces.d.ts +27 -5
  15. package/application/index.android.d.ts +12 -12
  16. package/application/index.android.js.map +1 -1
  17. package/application/index.d.ts +30 -35
  18. package/application/index.ios.d.ts +1 -0
  19. package/application/index.ios.js +23 -28
  20. package/application/index.ios.js.map +1 -1
  21. package/core-types/index.d.ts +10 -10
  22. package/css/CSS3Parser.d.ts +3 -3
  23. package/css/parser.d.ts +17 -17
  24. package/data/observable/index.d.ts +139 -165
  25. package/data/observable/index.js +93 -6
  26. package/data/observable/index.js.map +1 -1
  27. package/file-system/file-system-access.android.js +8 -1
  28. package/file-system/file-system-access.android.js.map +1 -1
  29. package/global-types.d.ts +2 -12
  30. package/image-source/index.android.js +5 -5
  31. package/image-source/index.android.js.map +1 -1
  32. package/image-source/index.ios.js +5 -5
  33. package/image-source/index.ios.js.map +1 -1
  34. package/index.d.ts +2 -0
  35. package/index.js +3 -1
  36. package/index.js.map +1 -1
  37. package/package.json +1 -1
  38. package/platforms/android/widgets-release.aar +0 -0
  39. package/ui/action-bar/action-bar-common.js +4 -4
  40. package/ui/action-bar/action-bar-common.js.map +1 -1
  41. package/ui/action-bar/index.d.ts +2 -2
  42. package/ui/animation/animation-interfaces.d.ts +4 -4
  43. package/ui/builder/component-builder/index.js.map +1 -1
  44. package/ui/builder/xml2ui.js +3 -3
  45. package/ui/builder/xml2ui.js.map +1 -1
  46. package/ui/button/index.d.ts +2 -2
  47. package/ui/core/properties/index.js +6 -6
  48. package/ui/core/properties/index.js.map +1 -1
  49. package/ui/core/view/index.android.d.ts +1 -1
  50. package/ui/core/view/index.android.js +22 -1
  51. package/ui/core/view/index.android.js.map +1 -1
  52. package/ui/core/view/index.ios.js +15 -15
  53. package/ui/core/view/view-common.d.ts +1 -1
  54. package/ui/core/view/view-common.js +7 -0
  55. package/ui/core/view/view-common.js.map +1 -1
  56. package/ui/core/view/view-helper/index.d.ts +9 -9
  57. package/ui/core/view-base/index.d.ts +450 -532
  58. package/ui/core/view-base/index.js +168 -5
  59. package/ui/core/view-base/index.js.map +1 -1
  60. package/ui/core/weak-event-listener/index.js.map +1 -1
  61. package/ui/dialogs/dialogs-common.js +1 -0
  62. package/ui/dialogs/dialogs-common.js.map +1 -1
  63. package/ui/editable-text-base/editable-text-base-common.js +1 -2
  64. package/ui/editable-text-base/editable-text-base-common.js.map +1 -1
  65. package/ui/editable-text-base/index.android.js +2 -7
  66. package/ui/editable-text-base/index.android.js.map +1 -1
  67. package/ui/frame/frame-common.d.ts +6 -0
  68. package/ui/frame/frame-common.js +11 -2
  69. package/ui/frame/frame-common.js.map +1 -1
  70. package/ui/frame/index.android.d.ts +2 -1
  71. package/ui/frame/index.android.js +15 -7
  72. package/ui/frame/index.android.js.map +1 -1
  73. package/ui/frame/index.d.ts +3 -3
  74. package/ui/frame/index.ios.js +1 -0
  75. package/ui/frame/index.ios.js.map +1 -1
  76. package/ui/gestures/gestures-common.js +5 -5
  77. package/ui/gestures/gestures-common.js.map +1 -1
  78. package/ui/gestures/index.android.js +3 -3
  79. package/ui/gestures/index.android.js.map +1 -1
  80. package/ui/gestures/index.d.ts +2 -2
  81. package/ui/gestures/index.ios.js +6 -6
  82. package/ui/gestures/index.ios.js.map +1 -1
  83. package/ui/gestures/touch-manager.d.ts +2 -2
  84. package/ui/image-cache/image-cache-common.d.ts +5 -5
  85. package/ui/image-cache/image-cache-common.js +2 -2
  86. package/ui/image-cache/image-cache-common.js.map +1 -1
  87. package/ui/image-cache/index.d.ts +3 -3
  88. package/ui/index.d.ts +5 -2
  89. package/ui/index.js +5 -2
  90. package/ui/index.js.map +1 -1
  91. package/ui/label/index.android.js +1 -0
  92. package/ui/label/index.android.js.map +1 -1
  93. package/ui/layouts/flexbox-layout/flexbox-layout-common.d.ts +12 -12
  94. package/ui/layouts/grid-layout/grid-layout-common.d.ts +1 -1
  95. package/ui/layouts/root-layout/root-layout-common.js +45 -36
  96. package/ui/layouts/root-layout/root-layout-common.js.map +1 -1
  97. package/ui/list-view/index.d.ts +6 -6
  98. package/ui/list-view/list-view-common.js +8 -2
  99. package/ui/list-view/list-view-common.js.map +1 -1
  100. package/ui/page/index.ios.js +3 -2
  101. package/ui/page/index.ios.js.map +1 -1
  102. package/ui/page/page-common.d.ts +72 -39
  103. package/ui/placeholder/index.android.d.ts +2 -2
  104. package/ui/placeholder/index.d.ts +2 -2
  105. package/ui/repeater/index.js +2 -1
  106. package/ui/repeater/index.js.map +1 -1
  107. package/ui/scroll-view/scroll-view-common.d.ts +4 -4
  108. package/ui/scroll-view/scroll-view-common.js.map +1 -1
  109. package/ui/search-bar/index.d.ts +3 -3
  110. package/ui/segmented-bar/index.d.ts +2 -2
  111. package/ui/segmented-bar/segmented-bar-common.d.ts +2 -2
  112. package/ui/styling/css-selector.d.ts +1 -1
  113. package/ui/styling/font-common.js +6 -6
  114. package/ui/styling/font-common.js.map +1 -1
  115. package/ui/styling/font-interfaces.d.ts +3 -3
  116. package/ui/styling/style-properties.js +4 -0
  117. package/ui/styling/style-properties.js.map +1 -1
  118. package/ui/styling/style-scope.js +5 -4
  119. package/ui/styling/style-scope.js.map +1 -1
  120. package/ui/tab-view/index.d.ts +2 -2
  121. package/ui/tab-view/tab-view-common.d.ts +2 -2
  122. package/ui/text-base/span.js.map +1 -1
  123. package/ui/transition/index.android.d.ts +7 -5
  124. package/ui/transition/index.android.js +8 -5
  125. package/ui/transition/index.android.js.map +1 -1
  126. package/ui/transition/index.d.ts +19 -15
  127. package/ui/transition/index.ios.d.ts +7 -10
  128. package/ui/transition/index.ios.js +37 -21
  129. package/ui/transition/index.ios.js.map +1 -1
  130. package/ui/transition/modal-transition.android.d.ts +6 -0
  131. package/ui/transition/modal-transition.android.js +54 -0
  132. package/ui/transition/modal-transition.android.js.map +1 -0
  133. package/ui/transition/modal-transition.d.ts +2 -0
  134. package/ui/transition/modal-transition.ios.d.ts +40 -0
  135. package/ui/transition/modal-transition.ios.js +250 -0
  136. package/ui/transition/modal-transition.ios.js.map +1 -0
  137. package/ui/transition/page-transition.android.d.ts +6 -0
  138. package/ui/transition/page-transition.android.js +54 -0
  139. package/ui/transition/page-transition.android.js.map +1 -0
  140. package/ui/transition/page-transition.d.ts +2 -0
  141. package/ui/transition/page-transition.ios.d.ts +25 -0
  142. package/ui/transition/page-transition.ios.js +199 -0
  143. package/ui/transition/page-transition.ios.js.map +1 -0
  144. package/ui/transition/shared-transition.d.ts +65 -0
  145. package/ui/transition/shared-transition.js +64 -0
  146. package/ui/transition/shared-transition.js.map +1 -0
  147. package/ui/web-view/index.d.ts +3 -3
  148. package/ui/web-view/web-view-interfaces.d.ts +1 -1
  149. package/utils/index.d.ts +0 -82
  150. package/utils/typescript-utils.d.ts +6 -0
  151. package/xhr/index.js +28 -28
  152. package/xhr/index.js.map +1 -1
@@ -1,194 +1,168 @@
1
- /**
1
+ import { Optional } from '../../utils/typescript-utils';
2
+ /**
2
3
  * Base event data.
3
4
  */
4
5
  export interface EventData {
5
- /**
6
- * The name of the event.
7
- */
8
- eventName: string;
9
- /**
10
- * The Observable instance that has raised the event.
11
- */
12
- object: Observable;
6
+ /**
7
+ * The name of the event.
8
+ */
9
+ eventName: string;
10
+ /**
11
+ * The Observable instance that has raised the event.
12
+ */
13
+ object: Observable;
13
14
  }
14
-
15
- export interface NotifyData extends Partial<EventData> {
16
- eventName: string;
17
- object?: Observable;
15
+ export interface EventDataValue extends EventData {
16
+ value?: boolean;
18
17
  }
19
-
20
18
  /**
21
19
  * Data for the "propertyChange" event.
22
20
  */
23
21
  export interface PropertyChangeData extends EventData {
24
- /**
25
- * The name of the property that has changed.
26
- */
27
- propertyName: string;
28
- /**
29
- * The new value of the property.
30
- */
31
- value: any;
32
- /**
33
- * The previous value of the property.
34
- */
35
- oldValue?: any;
22
+ /**
23
+ * The name of the property that has changed.
24
+ */
25
+ propertyName: string;
26
+ /**
27
+ * The new value of the property.
28
+ */
29
+ value: any;
30
+ /**
31
+ * The previous value of the property.
32
+ */
33
+ oldValue?: any;
36
34
  }
37
-
38
35
  /**
39
36
  * Helper class that is used to fire property change even when real object is the same.
40
37
  * By default property change will not be fired for a same object.
41
38
  * By wrapping object into a WrappedValue instance `same object restriction` will be passed.
42
39
  */
43
- export class WrappedValue {
44
- /**
45
- * Property which holds the real value.
46
- */
47
- wrapped: any;
48
-
49
- /**
50
- * Creates an instance of WrappedValue object.
51
- * @param value - the real value which should be wrapped.
52
- */
53
- constructor(value: any);
54
-
55
- /**
56
- * Gets the real value of previously wrappedValue.
57
- * @param value - Value that should be unwraped. If there is no wrappedValue property of the value object then value will be returned.
58
- */
59
- static unwrap(value: any): any;
60
-
61
- /**
62
- * Returns an instance of WrappedValue. The actual instance is get from a WrappedValues pool.
63
- * @param value - Value that should be wrapped.
64
- */
65
- static wrap(value: any): WrappedValue;
40
+ export declare class WrappedValue {
41
+ /**
42
+ * Property which holds the real value.
43
+ */
44
+ wrapped: any;
45
+ /**
46
+ * Creates an instance of WrappedValue object.
47
+ * @param wrapped - the real value which should be wrapped.
48
+ */
49
+ constructor(
50
+ /**
51
+ * Property which holds the real value.
52
+ */
53
+ wrapped: any);
54
+ /**
55
+ * Gets the real value of previously wrappedValue.
56
+ * @param value - Value that should be unwraped. If there is no wrappedValue property of the value object then value will be returned.
57
+ */
58
+ static unwrap(value: any): any;
59
+ /**
60
+ * Returns an instance of WrappedValue. The actual instance is get from a WrappedValues pool.
61
+ * @param value - Value that should be wrapped.
62
+ */
63
+ static wrap(value: any): any;
66
64
  }
67
-
68
65
  /**
69
66
  * Observable is used when you want to be notified when a change occurs. Use on/off methods to add/remove listener.
67
+ * Please note that should you be using the `new Observable({})` constructor, it is **obsolete** since v3.0,
68
+ * and you have to migrate to the "data/observable" `fromObject({})` or the `fromObjectRecursive({})` functions.
70
69
  */
71
- export class Observable {
72
- /**
73
- * Please note that should you be using the `new Observable({})` constructor, it is **obsolete** since v3.0,
74
- * and you have to migrate to the "data/observable" `fromObject({})` or the `fromObjectRecursive({})` functions.
75
- */
76
- constructor();
77
-
78
- /**
79
- * String value used when hooking to propertyChange event.
80
- */
81
- static propertyChangeEvent: string;
82
-
83
- /**
84
- * A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
85
- * @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
86
- * @param callback - Callback function which will be executed when event is raised.
87
- * @param thisArg - An optional parameter which will be used as `this` context for callback execution.
88
- */
89
- on(eventNames: string, callback: (data: EventData) => void, thisArg?: any);
90
-
91
- static on(eventName: string, callback: any, thisArg?: any): void;
92
-
93
- /**
94
- * Raised when a propertyChange occurs.
95
- */
96
- on(event: 'propertyChange', callback: (data: EventData) => void, thisArg?: any);
97
-
98
- /**
99
- * Adds one-time listener function for the event named `event`.
100
- * @param event Name of the event to attach to.
101
- * @param callback A function to be called when the specified event is raised.
102
- * @param thisArg An optional parameter which when set will be used as "this" in callback method call.
103
- */
104
- once(event: string, callback: (data: EventData) => void, thisArg?: any);
105
-
106
- static once(eventName: string, callback: any, thisArg?: any): void;
107
-
108
- /**
109
- * Shortcut alias to the removeEventListener method.
110
- */
111
- off(eventNames: string, callback?: any, thisArg?: any);
112
-
113
- static off(eventName: string, callback?: any, thisArg?: any): void;
114
-
115
- /**
116
- * Adds a listener for the specified event name.
117
- * @param eventNames Comma delimited names of the events to attach the listener to.
118
- * @param callback A function to be called when some of the specified event(s) is raised.
119
- * @param thisArg An optional parameter which when set will be used as "this" in callback method call.
120
- */
121
- addEventListener(eventNames: string, callback: (data: EventData) => void, thisArg?: any);
122
-
123
- static addEventListener(eventName: string, callback: any, thisArg?: any): void;
124
-
125
- /**
126
- * Removes listener(s) for the specified event name.
127
- * @param eventNames Comma delimited names of the events the specified listener is associated with.
128
- * @param callback An optional parameter pointing to a specific listener. If not defined, all listeners for the event names will be removed.
129
- * @param thisArg An optional parameter which when set will be used to refine search of the correct callback which will be removed as event listener.
130
- */
131
- removeEventListener(eventNames: string, callback?: any, thisArg?: any);
132
-
133
- static removeEventListener(eventName: string, callback?: any, thisArg?: any): void;
134
-
135
- /**
136
- * Updates the specified property with the provided value.
137
- */
138
- set(name: string, value: any): void;
139
-
140
- /**
141
- * Updates the specified property with the provided value and raises a property change event and a specific change event based on the property name.
142
- */
143
- setProperty(name: string, value: any): void;
144
-
145
- /**
146
- * Gets the value of the specified property.
147
- */
148
- get(name: string): any;
149
-
150
- /**
151
- * Notifies all the registered listeners for the event provided in the data.eventName.
152
- * @param data The data associated with the event.
153
- */
154
- notify<T extends NotifyData>(data: T): void;
155
-
156
- /**
157
- * Notifies all the registered listeners for the property change event.
158
- */
159
- notifyPropertyChange(propertyName: string, value: any, oldValue?: any): void;
160
-
161
- /**
162
- * Checks whether a listener is registered for the specified event name.
163
- * @param eventName The name of the event to check for.
164
- */
165
- hasListeners(eventName: string): boolean;
166
-
167
- public _emit(eventNames: string);
168
-
169
- /**
170
- * This method is intended to be overriden by inheritors to provide additional implementation.
171
- */
172
- _createPropertyChangeData(name: string, value: any, oldValue?: any): PropertyChangeData;
173
-
174
- //@private
175
- /**
176
- * Filed to use instead of instanceof ViewBase.
177
- * @private
178
- */
179
- public _isViewBase: boolean;
180
- //@endprivate
70
+ export declare class Observable {
71
+ /**
72
+ * String value used when hooking to propertyChange event.
73
+ */
74
+ static propertyChangeEvent: string;
75
+ /**
76
+ * Alternative to `instanceof ViewBase`.
77
+ * @private
78
+ */
79
+ _isViewBase: boolean;
80
+ private readonly _observers;
81
+ /**
82
+ * Adds one-time listener function for the event named `event`.
83
+ * @param event Name of the event to attach to.
84
+ * @param callback A function to be called when the specified event is raised.
85
+ * @param thisArg An optional parameter which when set will be used as "this" in callback method call.
86
+ */
87
+ once(event: string, callback: (data: EventData) => void, thisArg?: any): void;
88
+ /**
89
+ * Shortcut alias to the removeEventListener method.
90
+ */
91
+ off(eventNames: string, callback?: (data: EventData) => void, thisArg?: any): void;
92
+ /**
93
+ * Adds a listener for the specified event name.
94
+ * @param eventNames Comma delimited names of the events to attach the listener to.
95
+ * @param callback A function to be called when some of the specified event(s) is raised.
96
+ * @param thisArg An optional parameter which when set will be used as "this" in callback method call.
97
+ */
98
+ addEventListener(eventNames: string, callback: (data: EventData) => void, thisArg?: any): void;
99
+ /**
100
+ * Removes listener(s) for the specified event name.
101
+ * @param eventNames Comma delimited names of the events the specified listener is associated with.
102
+ * @param callback An optional parameter pointing to a specific listener. If not defined, all listeners for the event names will be removed.
103
+ * @param thisArg An optional parameter which when set will be used to refine search of the correct callback which will be removed as event listener.
104
+ */
105
+ removeEventListener(eventNames: string, callback?: (data: EventData) => void, thisArg?: any): void;
106
+ static on(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;
107
+ static once(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;
108
+ static off(eventName: string, callback?: (data: EventData) => void, thisArg?: any): void;
109
+ static removeEventListener(eventName: string, callback?: (data: EventData) => void, thisArg?: any): void;
110
+ static addEventListener(eventName: string, callback: (data: EventData) => void, thisArg?: any): void;
111
+ private _globalNotify;
112
+ /**
113
+ * Notify this Observable instance with some data. This causes all event
114
+ * handlers on the Observable instance to be called, as well as any 'global'
115
+ * event handlers set on the instance's class.
116
+ *
117
+ * @param data an object that satisfies the EventData interface, though with
118
+ * an optional 'object' property. If left undefined, the 'object' property
119
+ * will implicitly be set as this Observable instance.
120
+ */
121
+ notify<T extends Optional<EventData, 'object'>>(data: T): void;
122
+ private static _handleEvent;
123
+ /**
124
+ * Notifies all the registered listeners for the property change event.
125
+ */
126
+ notifyPropertyChange(name: string, value: any, oldValue?: any): void;
127
+ /**
128
+ * Checks whether a listener is registered for the specified event name.
129
+ * @param eventName The name of the event to check for.
130
+ */
131
+ hasListeners(eventName: string): boolean;
132
+ /**
133
+ * This method is intended to be overriden by inheritors to provide additional implementation.
134
+ */
135
+ _createPropertyChangeData(propertyName: string, value: any, oldValue?: any): PropertyChangeData;
136
+ _emit(eventNames: string): void;
137
+ private _getEventList;
138
+ private static _indexOfListener;
139
+ }
140
+ export interface Observable {
141
+ /**
142
+ * Raised when a propertyChange occurs.
143
+ */
144
+ on(event: 'propertyChange', callback: (data: EventData) => void, thisArg?: any): void;
145
+ /**
146
+ * Updates the specified property with the provided value.
147
+ */
148
+ set(name: string, value: any): void;
149
+ /**
150
+ * Updates the specified property with the provided value and raises a property change event and a specific change event based on the property name.
151
+ */
152
+ setProperty(name: string, value: any): void;
153
+ /**
154
+ * Gets the value of the specified property.
155
+ */
156
+ get(name: string): any;
181
157
  }
182
-
183
158
  /**
184
159
  * Creates an Observable instance and sets its properties according to the supplied JavaScript object.
185
160
  * param obj - A JavaScript object used to initialize nativescript Observable instance.
186
161
  */
187
- export function fromObject(obj: any): Observable;
188
-
162
+ export declare function fromObject(source: any): Observable;
189
163
  /**
190
164
  * Creates an Observable instance and sets its properties according to the supplied JavaScript object.
191
165
  * This function will create new Observable for each nested object (expect arrays and functions) from supplied JavaScript object.
192
166
  * param obj - A JavaScript object used to initialize nativescript Observable instance.
193
167
  */
194
- export function fromObjectRecursive(obj: any): Observable;
168
+ export declare function fromObjectRecursive(source: any): Observable;
@@ -1,11 +1,32 @@
1
1
  let _wrappedIndex = 0;
2
+ /**
3
+ * Helper class that is used to fire property change even when real object is the same.
4
+ * By default property change will not be fired for a same object.
5
+ * By wrapping object into a WrappedValue instance `same object restriction` will be passed.
6
+ */
2
7
  export class WrappedValue {
3
- constructor(wrapped) {
8
+ /**
9
+ * Creates an instance of WrappedValue object.
10
+ * @param wrapped - the real value which should be wrapped.
11
+ */
12
+ constructor(
13
+ /**
14
+ * Property which holds the real value.
15
+ */
16
+ wrapped) {
4
17
  this.wrapped = wrapped;
5
18
  }
19
+ /**
20
+ * Gets the real value of previously wrappedValue.
21
+ * @param value - Value that should be unwraped. If there is no wrappedValue property of the value object then value will be returned.
22
+ */
6
23
  static unwrap(value) {
7
24
  return value instanceof WrappedValue ? value.wrapped : value;
8
25
  }
26
+ /**
27
+ * Returns an instance of WrappedValue. The actual instance is get from a WrappedValues pool.
28
+ * @param value - Value that should be wrapped.
29
+ */
9
30
  static wrap(value) {
10
31
  const w = _wrappedValues[_wrappedIndex++ % 5];
11
32
  w.wrapped = value;
@@ -14,6 +35,11 @@ export class WrappedValue {
14
35
  }
15
36
  const _wrappedValues = [new WrappedValue(null), new WrappedValue(null), new WrappedValue(null), new WrappedValue(null), new WrappedValue(null)];
16
37
  const _globalEventHandlers = {};
38
+ /**
39
+ * Observable is used when you want to be notified when a change occurs. Use on/off methods to add/remove listener.
40
+ * Please note that should you be using the `new Observable({})` constructor, it is **obsolete** since v3.0,
41
+ * and you have to migrate to the "data/observable" `fromObject({})` or the `fromObjectRecursive({})` functions.
42
+ */
17
43
  export class Observable {
18
44
  constructor() {
19
45
  this._observers = {};
@@ -45,9 +71,21 @@ export class Observable {
45
71
  this.notify(eventData);
46
72
  }
47
73
  }
74
+ /**
75
+ * A basic method signature to hook an event listener (shortcut alias to the addEventListener method).
76
+ * @param eventNames - String corresponding to events (e.g. "propertyChange"). Optionally could be used more events separated by `,` (e.g. "propertyChange", "change").
77
+ * @param callback - Callback function which will be executed when event is raised.
78
+ * @param thisArg - An optional parameter which will be used as `this` context for callback execution.
79
+ */
48
80
  on(eventNames, callback, thisArg) {
49
81
  this.addEventListener(eventNames, callback, thisArg);
50
82
  }
83
+ /**
84
+ * Adds one-time listener function for the event named `event`.
85
+ * @param event Name of the event to attach to.
86
+ * @param callback A function to be called when the specified event is raised.
87
+ * @param thisArg An optional parameter which when set will be used as "this" in callback method call.
88
+ */
51
89
  once(event, callback, thisArg) {
52
90
  if (typeof event !== 'string') {
53
91
  throw new TypeError('Event must be string.');
@@ -58,9 +96,18 @@ export class Observable {
58
96
  const list = this._getEventList(event, true);
59
97
  list.push({ callback, thisArg, once: true });
60
98
  }
99
+ /**
100
+ * Shortcut alias to the removeEventListener method.
101
+ */
61
102
  off(eventNames, callback, thisArg) {
62
103
  this.removeEventListener(eventNames, callback, thisArg);
63
104
  }
105
+ /**
106
+ * Adds a listener for the specified event name.
107
+ * @param eventNames Comma delimited names of the events to attach the listener to.
108
+ * @param callback A function to be called when some of the specified event(s) is raised.
109
+ * @param thisArg An optional parameter which when set will be used as "this" in callback method call.
110
+ */
64
111
  addEventListener(eventNames, callback, thisArg) {
65
112
  if (typeof eventNames !== 'string') {
66
113
  throw new TypeError('Events name(s) must be string.');
@@ -79,6 +126,12 @@ export class Observable {
79
126
  });
80
127
  }
81
128
  }
129
+ /**
130
+ * Removes listener(s) for the specified event name.
131
+ * @param eventNames Comma delimited names of the events the specified listener is associated with.
132
+ * @param callback An optional parameter pointing to a specific listener. If not defined, all listeners for the event names will be removed.
133
+ * @param thisArg An optional parameter which when set will be used to refine search of the correct callback which will be removed as event listener.
134
+ */
82
135
  removeEventListener(eventNames, callback, thisArg) {
83
136
  if (typeof eventNames !== 'string') {
84
137
  throw new TypeError('Events name(s) must be string.');
@@ -206,16 +259,25 @@ export class Observable {
206
259
  }
207
260
  }
208
261
  }
262
+ /**
263
+ * Notify this Observable instance with some data. This causes all event
264
+ * handlers on the Observable instance to be called, as well as any 'global'
265
+ * event handlers set on the instance's class.
266
+ *
267
+ * @param data an object that satisfies the EventData interface, though with
268
+ * an optional 'object' property. If left undefined, the 'object' property
269
+ * will implicitly be set as this Observable instance.
270
+ */
209
271
  notify(data) {
210
- const eventData = data;
211
- eventData.object = eventData.object || this;
272
+ data.object = data.object || this;
273
+ const dataWithObject = data;
212
274
  const eventClass = this.constructor.name;
213
- this._globalNotify(eventClass, 'First', eventData);
275
+ this._globalNotify(eventClass, 'First', dataWithObject);
214
276
  const observers = this._observers[data.eventName];
215
277
  if (observers) {
216
- Observable._handleEvent(observers, eventData);
278
+ Observable._handleEvent(observers, dataWithObject);
217
279
  }
218
- this._globalNotify(eventClass, '', eventData);
280
+ this._globalNotify(eventClass, '', dataWithObject);
219
281
  }
220
282
  static _handleEvent(observers, data) {
221
283
  if (!observers) {
@@ -243,12 +305,22 @@ export class Observable {
243
305
  }
244
306
  }
245
307
  }
308
+ /**
309
+ * Notifies all the registered listeners for the property change event.
310
+ */
246
311
  notifyPropertyChange(name, value, oldValue) {
247
312
  this.notify(this._createPropertyChangeData(name, value, oldValue));
248
313
  }
314
+ /**
315
+ * Checks whether a listener is registered for the specified event name.
316
+ * @param eventName The name of the event to check for.
317
+ */
249
318
  hasListeners(eventName) {
250
319
  return eventName in this._observers;
251
320
  }
321
+ /**
322
+ * This method is intended to be overriden by inheritors to provide additional implementation.
323
+ */
252
324
  _createPropertyChangeData(propertyName, value, oldValue) {
253
325
  return {
254
326
  eventName: Observable.propertyChangeEvent,
@@ -293,6 +365,9 @@ export class Observable {
293
365
  return -1;
294
366
  }
295
367
  }
368
+ /**
369
+ * String value used when hooking to propertyChange event.
370
+ */
296
371
  Observable.propertyChangeEvent = 'propertyChange';
297
372
  class ObservableFromObject extends Observable {
298
373
  constructor() {
@@ -302,6 +377,9 @@ class ObservableFromObject extends Observable {
302
377
  get(name) {
303
378
  return this._map[name];
304
379
  }
380
+ /**
381
+ * Updates the specified property with the provided value.
382
+ */
305
383
  set(name, value) {
306
384
  const currentValue = this._map[name];
307
385
  if (currentValue === value) {
@@ -334,11 +412,20 @@ function addPropertiesFromObject(observable, source, recursive = false) {
334
412
  observable.set(prop, value);
335
413
  });
336
414
  }
415
+ /**
416
+ * Creates an Observable instance and sets its properties according to the supplied JavaScript object.
417
+ * param obj - A JavaScript object used to initialize nativescript Observable instance.
418
+ */
337
419
  export function fromObject(source) {
338
420
  const observable = new ObservableFromObject();
339
421
  addPropertiesFromObject(observable, source, false);
340
422
  return observable;
341
423
  }
424
+ /**
425
+ * Creates an Observable instance and sets its properties according to the supplied JavaScript object.
426
+ * This function will create new Observable for each nested object (expect arrays and functions) from supplied JavaScript object.
427
+ * param obj - A JavaScript object used to initialize nativescript Observable instance.
428
+ */
342
429
  export function fromObjectRecursive(source) {
343
430
  const observable = new ObservableFromObject();
344
431
  addPropertiesFromObject(observable, source, true);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/core/data/observable/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/core/data/observable/index.ts"],"names":[],"mappings":"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"}
@@ -186,7 +186,14 @@ export class FileSystemAccess {
186
186
  return dir.getAbsolutePath();
187
187
  }
188
188
  getExternalDocumentsFolderPath() {
189
- const dir = getApplicationContext().getExternalFilesDir(null);
189
+ const dirs = getApplicationContext().getExternalFilesDirs(null);
190
+ let dir;
191
+ if (dirs && dirs.length > 1) {
192
+ dir = dirs[dirs.length - 1];
193
+ }
194
+ if (!dir) {
195
+ dir = getApplicationContext().getExternalFilesDir(null);
196
+ }
190
197
  return dir.getAbsolutePath();
191
198
  }
192
199
  getLogicalRootPath() {