react-native-readium 1.0.0-alpha.6 → 1.0.0-alpha.9

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 (90) hide show
  1. package/README.md +15 -1
  2. package/android/src/main/java/com/reactnativereadium/ReadiumView.kt +13 -1
  3. package/android/src/main/java/com/reactnativereadium/ReadiumViewManager.kt +53 -11
  4. package/android/src/main/java/com/reactnativereadium/reader/BaseReaderFragment.kt +32 -30
  5. package/android/src/main/java/com/reactnativereadium/reader/EpubReaderFragment.kt +11 -2
  6. package/android/src/main/java/com/reactnativereadium/reader/ReaderViewModel.kt +2 -0
  7. package/android/src/main/java/com/reactnativereadium/utils/File.kt +8 -0
  8. package/ios/ReadiumView.swift +8 -3
  9. package/ios/ReadiumViewManager.m +1 -0
  10. package/lib/commonjs/components/BaseReadiumView.js +16 -0
  11. package/lib/commonjs/components/BaseReadiumView.js.map +1 -0
  12. package/lib/commonjs/components/ReadiumView.js +94 -0
  13. package/lib/commonjs/components/ReadiumView.js.map +1 -0
  14. package/lib/commonjs/index.js +25 -71
  15. package/lib/commonjs/index.js.map +1 -1
  16. package/lib/commonjs/interfaces/Link.js +2 -0
  17. package/lib/commonjs/interfaces/Link.js.map +1 -0
  18. package/lib/commonjs/interfaces/index.js +13 -0
  19. package/lib/commonjs/interfaces/index.js.map +1 -1
  20. package/lib/commonjs/utils/COMPONENT_NAME.js +9 -0
  21. package/lib/commonjs/utils/COMPONENT_NAME.js.map +1 -0
  22. package/lib/commonjs/utils/LINKING_ERROR.js +15 -0
  23. package/lib/commonjs/utils/LINKING_ERROR.js.map +1 -0
  24. package/lib/commonjs/utils/RANGES.js +16 -0
  25. package/lib/commonjs/utils/RANGES.js.map +1 -0
  26. package/lib/commonjs/utils/clamp.js +15 -0
  27. package/lib/commonjs/utils/clamp.js.map +1 -0
  28. package/lib/commonjs/utils/createFragment.js +21 -0
  29. package/lib/commonjs/utils/createFragment.js.map +1 -0
  30. package/lib/commonjs/utils/getWidthOrHeightValue.js +15 -0
  31. package/lib/commonjs/utils/getWidthOrHeightValue.js.map +1 -0
  32. package/lib/commonjs/utils/index.js +91 -24
  33. package/lib/commonjs/utils/index.js.map +1 -1
  34. package/lib/commonjs/utils/indexOfObjectValue.js +13 -0
  35. package/lib/commonjs/utils/indexOfObjectValue.js.map +1 -0
  36. package/lib/module/components/BaseReadiumView.js +6 -0
  37. package/lib/module/components/BaseReadiumView.js.map +1 -0
  38. package/lib/module/components/ReadiumView.js +75 -0
  39. package/lib/module/components/ReadiumView.js.map +1 -0
  40. package/lib/module/index.js +2 -58
  41. package/lib/module/index.js.map +1 -1
  42. package/lib/module/interfaces/Link.js +2 -0
  43. package/lib/module/interfaces/Link.js.map +1 -0
  44. package/lib/module/interfaces/index.js +1 -0
  45. package/lib/module/interfaces/index.js.map +1 -1
  46. package/lib/module/utils/COMPONENT_NAME.js +2 -0
  47. package/lib/module/utils/COMPONENT_NAME.js.map +1 -0
  48. package/lib/module/utils/LINKING_ERROR.js +6 -0
  49. package/lib/module/utils/LINKING_ERROR.js.map +1 -0
  50. package/lib/module/utils/RANGES.js +9 -0
  51. package/lib/module/utils/RANGES.js.map +1 -0
  52. package/lib/module/utils/clamp.js +6 -0
  53. package/lib/module/utils/clamp.js.map +1 -0
  54. package/lib/module/utils/createFragment.js +10 -0
  55. package/lib/module/utils/createFragment.js.map +1 -0
  56. package/lib/module/utils/getWidthOrHeightValue.js +5 -0
  57. package/lib/module/utils/getWidthOrHeightValue.js.map +1 -0
  58. package/lib/module/utils/index.js +7 -16
  59. package/lib/module/utils/index.js.map +1 -1
  60. package/lib/module/utils/indexOfObjectValue.js +4 -0
  61. package/lib/module/utils/indexOfObjectValue.js.map +1 -0
  62. package/lib/typescript/components/BaseReadiumView.d.ts +14 -0
  63. package/lib/typescript/components/ReadiumView.d.ts +5 -0
  64. package/lib/typescript/index.d.ts +2 -15
  65. package/lib/typescript/interfaces/Link.d.ts +18 -0
  66. package/lib/typescript/interfaces/Locator.d.ts +4 -4
  67. package/lib/typescript/interfaces/index.d.ts +1 -0
  68. package/lib/typescript/utils/COMPONENT_NAME.d.ts +1 -0
  69. package/lib/typescript/utils/LINKING_ERROR.d.ts +1 -0
  70. package/lib/typescript/utils/RANGES.d.ts +8 -0
  71. package/lib/typescript/utils/clamp.d.ts +1 -0
  72. package/lib/typescript/utils/createFragment.d.ts +1 -0
  73. package/lib/typescript/utils/getWidthOrHeightValue.d.ts +1 -0
  74. package/lib/typescript/utils/index.d.ts +7 -10
  75. package/lib/typescript/utils/indexOfObjectValue.d.ts +1 -0
  76. package/package.json +1 -1
  77. package/src/components/BaseReadiumView.tsx +27 -0
  78. package/src/components/ReadiumView.tsx +71 -0
  79. package/src/index.tsx +2 -76
  80. package/src/interfaces/Link.ts +18 -0
  81. package/src/interfaces/Locator.ts +4 -4
  82. package/src/interfaces/index.ts +1 -0
  83. package/src/utils/COMPONENT_NAME.ts +1 -0
  84. package/src/utils/LINKING_ERROR.ts +7 -0
  85. package/src/utils/RANGES.ts +8 -0
  86. package/src/utils/clamp.ts +5 -0
  87. package/src/utils/createFragment.ts +15 -0
  88. package/src/utils/getWidthOrHeightValue.ts +5 -0
  89. package/src/utils/index.ts +7 -18
  90. package/src/utils/indexOfObjectValue.ts +3 -0
package/README.md CHANGED
@@ -1,6 +1,19 @@
1
1
  # react-native-readium
2
2
 
3
- A react-native wrapper for https://readium.org/
3
+ A react-native wrapper for https://readium.org/. At a high level this package
4
+ allows you to do things like:
5
+
6
+ - Render an ebook view.
7
+ - Register for location changes (as the user pages through the book).
8
+ - Register for the Table of Contents (so that you can display things like chapters in your app)
9
+ - Control settings of the Reader. Things like:
10
+ - Dark Mode, Light Mode, Sepia Mode
11
+ - Font Size
12
+ - Page Margins
13
+ - More (see the `Settings` documentation in the [API section](#api))
14
+ - Etc. (read on for more details. :book:)
15
+
16
+ ## Overview
4
17
 
5
18
  - [Installation](#installation)
6
19
  - [Usage](#usage)
@@ -128,6 +141,7 @@ DRM is not supported at this time. However, there is a clear path to [support it
128
141
  | `settings` | [`Partial<Settings>`](https://github.com/5-stones/react-native-readium/blob/main/src/interfaces/Settings.ts) | :white_check_mark: | An object that allows you to control various aspects of the reader's UI (epub only) |
129
142
  | `style` | `ViewStyle` | :white_check_mark: | A traditional style object. |
130
143
  | `onLocationChange` | `(locator: Locator) => void` | :white_check_mark: | A callback that fires whenever the location is changed (e.g. the user transitions to a new page)|
144
+ | `onTableOfContents` | `(toc: Link[] \| null) => void` | :white_check_mark: | A callback that fires once the file is parsed and emits the table of contents embedded in the file. Returns `null` or an empty `[]` if no TOC exists. See the [`Link`](https://github.com/5-stones/react-native-readium/blob/main/src/interfaces/Link.ts) interface for more info. |
131
145
 
132
146
  ## Contributing
133
147
 
@@ -10,6 +10,7 @@ import com.reactnativereadium.reader.BaseReaderFragment
10
10
  import com.reactnativereadium.reader.EpubReaderFragment
11
11
  import com.reactnativereadium.reader.ReaderViewModel
12
12
  import com.reactnativereadium.utils.Dimensions
13
+ import com.reactnativereadium.utils.File
13
14
  import org.readium.r2.shared.extensions.toMap
14
15
  import org.readium.r2.shared.publication.Locator
15
16
 
@@ -17,7 +18,9 @@ class ReadiumView(
17
18
  val reactContext: ThemedReactContext
18
19
  ) : FrameLayout(reactContext) {
19
20
  var dimensions: Dimensions = Dimensions(0,0)
21
+ var file: File? = null
20
22
  var fragment: BaseReaderFragment? = null
23
+ var isViewInitialized: Boolean = false
21
24
 
22
25
  fun updateLocation(locator: Locator) : Boolean {
23
26
  if (fragment == null) {
@@ -42,9 +45,9 @@ class ReadiumView(
42
45
  .replace(this.id, frag, this.id.toString())
43
46
  .commit()
44
47
 
48
+ val module = reactContext.getJSModule(RCTEventEmitter::class.java)
45
49
  // subscribe to reader events
46
50
  frag.channel.receive(frag) { event ->
47
- val module = reactContext.getJSModule(RCTEventEmitter::class.java)
48
51
  when (event) {
49
52
  is ReaderViewModel.Event.LocatorUpdate -> {
50
53
  val json = event.locator.toJSON()
@@ -55,6 +58,15 @@ class ReadiumView(
55
58
  payload
56
59
  )
57
60
  }
61
+ is ReaderViewModel.Event.TableOfContentsLoaded -> {
62
+ val map = event.toc.map { it.toJSON().toMap() }
63
+ val payload = Arguments.makeNativeMap(mapOf("toc" to map))
64
+ module.receiveEvent(
65
+ this.id.toInt(),
66
+ ReadiumViewManager.ON_TABLE_OF_CONTENTS,
67
+ payload
68
+ )
69
+ }
58
70
  }
59
71
  }
60
72
  }
@@ -7,6 +7,7 @@ import com.facebook.react.uimanager.annotations.ReactPropGroup
7
7
  import com.facebook.react.uimanager.ThemedReactContext
8
8
  import com.facebook.react.uimanager.ViewGroupManager
9
9
  import com.reactnativereadium.reader.ReaderService
10
+ import com.reactnativereadium.utils.File
10
11
  import kotlinx.coroutines.runBlocking
11
12
  import org.json.JSONObject
12
13
  import org.readium.r2.shared.publication.Locator
@@ -24,13 +25,44 @@ class ReadiumViewManager(
24
25
  }
25
26
 
26
27
  override fun getExportedCustomBubblingEventTypeConstants(): Map<String, Any> {
27
- return MapBuilder.builder<String, Any>().put(
28
- ON_LOCATION_CHANGE,
29
- MapBuilder.of(
30
- "phasedRegistrationNames",
31
- MapBuilder.of("bubbled", ON_LOCATION_CHANGE)
28
+ return MapBuilder.builder<String, Any>()
29
+ .put(
30
+ ON_LOCATION_CHANGE,
31
+ MapBuilder.of(
32
+ "phasedRegistrationNames",
33
+ MapBuilder.of("bubbled", ON_LOCATION_CHANGE)
34
+ )
32
35
  )
33
- ).build()
36
+ .put(
37
+ ON_TABLE_OF_CONTENTS,
38
+ MapBuilder.of(
39
+ "phasedRegistrationNames",
40
+ MapBuilder.of("bubbled", ON_TABLE_OF_CONTENTS)
41
+ )
42
+ )
43
+ .build()
44
+ }
45
+
46
+ override fun getCommandsMap(): MutableMap<String, Int> {
47
+ return MapBuilder.of("create", COMMAND_CREATE)
48
+ }
49
+
50
+ override fun receiveCommand(view: ReadiumView, commandId: String?, args: ReadableArray?) {
51
+ super.receiveCommand(view, commandId, args)
52
+ val reactNativeViewId = args!!.getInt(0)
53
+ val commandIdInt = commandId!!.toInt()
54
+
55
+ when (commandIdInt) {
56
+ COMMAND_CREATE -> {
57
+ view.isViewInitialized = true
58
+
59
+ if (view.file != null) {
60
+ buildForViewIfReady(view)
61
+ }
62
+ }
63
+ else -> {
64
+ }
65
+ }
34
66
  }
35
67
 
36
68
  @ReactProp(name = "file")
@@ -44,11 +76,8 @@ class ReadiumViewManager(
44
76
  initialLocation = Locator.fromJSON(JSONObject(locatorMap.toHashMap()))
45
77
  }
46
78
 
47
- runBlocking {
48
- svc.openPublication(path, initialLocation) { fragment ->
49
- view.addFragment(fragment)
50
- }
51
- }
79
+ view.file = File(path, initialLocation)
80
+ this.buildForViewIfReady(view)
52
81
  }
53
82
 
54
83
  @ReactProp(name = "location")
@@ -75,7 +104,20 @@ class ReadiumViewManager(
75
104
  }
76
105
  }
77
106
 
107
+ private fun buildForViewIfReady(view: ReadiumView) {
108
+ var file = view.file
109
+ if (file != null && view.isViewInitialized) {
110
+ runBlocking {
111
+ svc.openPublication(file.path, file.initialLocation) { fragment ->
112
+ view.addFragment(fragment)
113
+ }
114
+ }
115
+ }
116
+ }
117
+
78
118
  companion object {
79
119
  var ON_LOCATION_CHANGE = "onLocationChange"
120
+ var ON_TABLE_OF_CONTENTS = "onTableOfContents"
121
+ var COMMAND_CREATE = 1
80
122
  }
81
123
  }
@@ -10,6 +10,7 @@ import org.readium.r2.navigator.*
10
10
  import org.readium.r2.shared.publication.Locator
11
11
  import com.reactnativereadium.utils.EventChannel
12
12
  import kotlinx.coroutines.channels.Channel
13
+ import org.readium.r2.shared.publication.Link
13
14
 
14
15
  /*
15
16
  * Base reader fragment class
@@ -24,37 +25,38 @@ abstract class BaseReaderFragment : Fragment() {
24
25
  )
25
26
 
26
27
  protected abstract val model: ReaderViewModel
27
- protected abstract val navigator: Navigator
28
-
29
- override fun onCreate(savedInstanceState: Bundle?) {
30
- setHasOptionsMenu(true)
31
- super.onCreate(savedInstanceState)
32
- }
33
-
34
- override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
35
- super.onViewCreated(view, savedInstanceState)
36
-
37
- val viewScope = viewLifecycleOwner.lifecycleScope
38
-
39
- navigator.currentLocator
40
- .onEach { channel.send(ReaderViewModel.Event.LocatorUpdate(it)) }
41
- .launchIn(viewScope)
28
+ protected abstract val navigator: Navigator
29
+
30
+ override fun onCreate(savedInstanceState: Bundle?) {
31
+ setHasOptionsMenu(true)
32
+ super.onCreate(savedInstanceState)
33
+ }
34
+
35
+ override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
36
+ super.onViewCreated(view, savedInstanceState)
37
+
38
+ val viewScope = viewLifecycleOwner.lifecycleScope
39
+
40
+ channel.send(ReaderViewModel.Event.TableOfContentsLoaded(model.publication.tableOfContents))
41
+ navigator.currentLocator
42
+ .onEach { channel.send(ReaderViewModel.Event.LocatorUpdate(it)) }
43
+ .launchIn(viewScope)
44
+ }
45
+
46
+ override fun onHiddenChanged(hidden: Boolean) {
47
+ super.onHiddenChanged(hidden)
48
+ setMenuVisibility(!hidden)
49
+ requireActivity().invalidateOptionsMenu()
50
+ }
51
+
52
+ fun go(locator: Locator, animated: Boolean): Boolean {
53
+ // don't attempt to navigate if we're already there
54
+ val currentLocator = navigator.currentLocator.value
55
+ if (locator.hashCode() == currentLocator.hashCode()) {
56
+ return true
42
57
  }
43
58
 
44
- override fun onHiddenChanged(hidden: Boolean) {
45
- super.onHiddenChanged(hidden)
46
- setMenuVisibility(!hidden)
47
- requireActivity().invalidateOptionsMenu()
48
- }
49
-
50
- fun go(locator: Locator, animated: Boolean): Boolean {
51
- // don't attempt to navigate if we're already there
52
- val currentLocator = navigator.currentLocator.value
53
- if (locator.hashCode() == currentLocator.hashCode()) {
54
- return true
55
- }
56
-
57
- return navigator.go(locator, animated)
58
- }
59
+ return navigator.go(locator, animated)
60
+ }
59
61
 
60
62
  }
@@ -38,6 +38,7 @@ class EpubReaderFragment : VisualReaderFragment(), EpubNavigatorFragment.Listene
38
38
  private lateinit var publication: Publication
39
39
  lateinit var navigatorFragment: EpubNavigatorFragment
40
40
  private lateinit var factory: ReaderViewModel.Factory
41
+ private var initialSettingsMap: Map<String, Any>? = null
41
42
 
42
43
  private lateinit var menuScreenReader: MenuItem
43
44
  private lateinit var menuSearch: MenuItem
@@ -61,8 +62,11 @@ class EpubReaderFragment : VisualReaderFragment(), EpubNavigatorFragment.Listene
61
62
  }
62
63
 
63
64
  fun updateSettingsFromMap(map: Map<String, Any>) {
64
- if (userSettings != null) {
65
+ if (this::userSettings.isInitialized) {
65
66
  userSettings.updateSettingsFromMap(map)
67
+ initialSettingsMap = null
68
+ } else {
69
+ initialSettingsMap = map
66
70
  }
67
71
  }
68
72
 
@@ -122,7 +126,11 @@ class EpubReaderFragment : VisualReaderFragment(), EpubNavigatorFragment.Listene
122
126
  super.onViewCreated(view, savedInstanceState)
123
127
 
124
128
  val activity = requireActivity()
125
- userSettings = UserSettings(navigatorFragment.preferences, activity, publication.userSettingsUIPreset)
129
+ userSettings = UserSettings(
130
+ navigatorFragment.preferences,
131
+ activity,
132
+ publication.userSettingsUIPreset
133
+ )
126
134
 
127
135
  // This is a hack to draw the right background color on top and bottom blank spaces
128
136
  navigatorFragment.lifecycleScope.launchWhenStarted {
@@ -137,6 +145,7 @@ class EpubReaderFragment : VisualReaderFragment(), EpubNavigatorFragment.Listene
137
145
  val activity = requireActivity()
138
146
 
139
147
  userSettings.resourcePager = navigatorFragment.resourcePager
148
+ initialSettingsMap?.let { updateSettingsFromMap(it) }
140
149
 
141
150
  // If TalkBack or any touch exploration service is activated we force scroll mode (and
142
151
  // override user preferences)
@@ -20,6 +20,7 @@ import org.readium.r2.shared.publication.services.search.SearchIterator
20
20
  import org.readium.r2.shared.publication.services.search.SearchTry
21
21
  import org.readium.r2.shared.Search
22
22
  import org.readium.r2.shared.UserException
23
+ import org.readium.r2.shared.publication.Link
23
24
  import org.readium.r2.shared.util.Try
24
25
 
25
26
  @OptIn(Search::class, ExperimentalDecorator::class)
@@ -111,6 +112,7 @@ class ReaderViewModel(
111
112
  object StartNewSearch : Event()
112
113
  class Failure(val error: UserException) : Event()
113
114
  class LocatorUpdate(val locator: Locator) : Event()
115
+ class TableOfContentsLoaded(val toc: List<Link>) : Event()
114
116
  }
115
117
 
116
118
  sealed class FeedbackEvent {
@@ -0,0 +1,8 @@
1
+ package com.reactnativereadium.utils
2
+
3
+ import org.readium.r2.shared.publication.Locator
4
+
5
+ class File(
6
+ var path: String,
7
+ var initialLocation: Locator?
8
+ ) {}
@@ -37,6 +37,7 @@ class ReadiumView : UIView, Loggable {
37
37
  }
38
38
  }
39
39
  @objc var onLocationChange: RCTDirectEventBlock?
40
+ @objc var onTableOfContents: RCTDirectEventBlock?
40
41
 
41
42
  func loadBook(url: String) {
42
43
  guard let rootViewController = UIApplication.shared.delegate?.window??.rootViewController else { return }
@@ -128,9 +129,7 @@ class ReadiumView : UIView, Loggable {
128
129
  private func addViewControllerAsSubview(_ vc: ReaderViewController) {
129
130
  vc.publisher.sink(
130
131
  receiveValue: { locator in
131
- if (self.onLocationChange != nil) {
132
- self.onLocationChange!(locator.json)
133
- }
132
+ self.onLocationChange?(locator.json)
134
133
  }
135
134
  )
136
135
  .store(in: &self.subscriptions)
@@ -155,5 +154,11 @@ class ReadiumView : UIView, Loggable {
155
154
  rootView.bottomAnchor.constraint(equalTo: self.bottomAnchor).isActive = true
156
155
  rootView.leftAnchor.constraint(equalTo: self.leftAnchor).isActive = true
157
156
  rootView.rightAnchor.constraint(equalTo: self.rightAnchor).isActive = true
157
+
158
+ self.onTableOfContents?([
159
+ "toc": vc.publication.tableOfContents.map({ link in
160
+ return link.json
161
+ })
162
+ ])
158
163
  }
159
164
  }
@@ -6,5 +6,6 @@ RCT_EXPORT_VIEW_PROPERTY(file, NSDictionary *)
6
6
  RCT_EXPORT_VIEW_PROPERTY(location, NSDictionary *)
7
7
  RCT_EXPORT_VIEW_PROPERTY(settings, NSDictionary *)
8
8
  RCT_EXPORT_VIEW_PROPERTY(onLocationChange, RCTDirectEventBlock)
9
+ RCT_EXPORT_VIEW_PROPERTY(onTableOfContents, RCTDirectEventBlock)
9
10
 
10
11
  @end
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BaseReadiumView = void 0;
7
+
8
+ var _reactNative = require("react-native");
9
+
10
+ var _utils = require("../utils");
11
+
12
+ const BaseReadiumView = _reactNative.UIManager.getViewManagerConfig(_utils.COMPONENT_NAME) != null ? (0, _reactNative.requireNativeComponent)(_utils.COMPONENT_NAME) : () => {
13
+ throw new Error(_utils.LINKING_ERROR);
14
+ };
15
+ exports.BaseReadiumView = BaseReadiumView;
16
+ //# sourceMappingURL=BaseReadiumView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["BaseReadiumView.tsx"],"names":["BaseReadiumView","UIManager","getViewManagerConfig","COMPONENT_NAME","Error","LINKING_ERROR"],"mappings":";;;;;;;AAAA;;AAOA;;AAcO,MAAMA,eAAe,GAC1BC,uBAAUC,oBAAV,CAA+BC,qBAA/B,KAAkD,IAAlD,GACI,yCAA6CA,qBAA7C,CADJ,GAEI,MAAM;AACJ,QAAM,IAAIC,KAAJ,CAAUC,oBAAV,CAAN;AACD,CALA","sourcesContent":["import {\n requireNativeComponent,\n UIManager,\n ViewStyle,\n} from 'react-native';\n\nimport type { Settings, Link, Locator, File, } from '../interfaces';\nimport { COMPONENT_NAME, LINKING_ERROR } from '../utils';\n\nexport type BaseReadiumViewProps = {\n file: File;\n location?: Locator;\n settings?: Partial<Settings>;\n style?: ViewStyle;\n onLocationChange?: (locator: Locator) => void;\n onTableOfContents?: (toc: Link[] | null) => void;\n ref?: any;\n height?: number;\n width?: number;\n};\n\nexport const BaseReadiumView =\n UIManager.getViewManagerConfig(COMPONENT_NAME) != null\n ? requireNativeComponent<BaseReadiumViewProps>(COMPONENT_NAME)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n"]}
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ReadiumView = void 0;
7
+
8
+ var _react = _interopRequireWildcard(require("react"));
9
+
10
+ var _reactNative = require("react-native");
11
+
12
+ var _interfaces = require("../interfaces");
13
+
14
+ var _utils = require("../utils");
15
+
16
+ var _BaseReadiumView = require("./BaseReadiumView");
17
+
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+
20
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
+
22
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
23
+
24
+ const ReadiumView = _ref => {
25
+ let {
26
+ onLocationChange: wrappedOnLocationChange,
27
+ onTableOfContents: wrappedOnTableOfContents,
28
+ settings: unmappedSettings,
29
+ ...props
30
+ } = _ref;
31
+ const ref = (0, _react.useRef)(null);
32
+ const [{
33
+ height,
34
+ width
35
+ }, setDimensions] = (0, _react.useState)({
36
+ width: 0,
37
+ height: 0
38
+ }); // set the view dimensions on layout
39
+
40
+ const onLayout = (0, _react.useCallback)(_ref2 => {
41
+ let {
42
+ nativeEvent: {
43
+ layout: {
44
+ width,
45
+ height
46
+ }
47
+ }
48
+ } = _ref2;
49
+ setDimensions({
50
+ width: (0, _utils.getWidthOrHeightValue)(width),
51
+ height: (0, _utils.getWidthOrHeightValue)(height)
52
+ });
53
+ }, []); // wrap the native onLocationChange and extract the raw event value
54
+
55
+ const onLocationChange = (0, _react.useCallback)(event => {
56
+ if (wrappedOnLocationChange) {
57
+ wrappedOnLocationChange(event.nativeEvent);
58
+ }
59
+ }, [wrappedOnLocationChange]);
60
+ const onTableOfContents = (0, _react.useCallback)(event => {
61
+ if (wrappedOnTableOfContents) {
62
+ const toc = event.nativeEvent.toc || null;
63
+ wrappedOnTableOfContents(toc);
64
+ }
65
+ }, [wrappedOnTableOfContents]);
66
+ (0, _react.useEffect)(() => {
67
+ if (_reactNative.Platform.OS === 'android') {
68
+ const viewId = (0, _reactNative.findNodeHandle)(ref.current);
69
+ (0, _utils.createFragment)(viewId);
70
+ }
71
+ }, []);
72
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
73
+ style: styles.container,
74
+ onLayout: onLayout
75
+ }, /*#__PURE__*/_react.default.createElement(_BaseReadiumView.BaseReadiumView, _extends({
76
+ height: height,
77
+ width: width
78
+ }, props, {
79
+ onLocationChange: onLocationChange,
80
+ onTableOfContents: onTableOfContents,
81
+ settings: unmappedSettings ? _interfaces.Settings.map(unmappedSettings) : undefined,
82
+ ref: ref
83
+ })));
84
+ };
85
+
86
+ exports.ReadiumView = ReadiumView;
87
+
88
+ const styles = _reactNative.StyleSheet.create({
89
+ container: {
90
+ width: '100%',
91
+ height: '100%'
92
+ }
93
+ });
94
+ //# sourceMappingURL=ReadiumView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["ReadiumView.tsx"],"names":["ReadiumView","onLocationChange","wrappedOnLocationChange","onTableOfContents","wrappedOnTableOfContents","settings","unmappedSettings","props","ref","height","width","setDimensions","onLayout","nativeEvent","layout","event","toc","Platform","OS","viewId","current","styles","container","Settings","map","undefined","StyleSheet","create"],"mappings":";;;;;;;AAAA;;AACA;;AAGA;;AACA;;AAEA;;;;;;;;AAIO,MAAMA,WAAmC,GAAG,QAK7C;AAAA,MAL8C;AAClDC,IAAAA,gBAAgB,EAAEC,uBADgC;AAElDC,IAAAA,iBAAiB,EAAEC,wBAF+B;AAGlDC,IAAAA,QAAQ,EAAEC,gBAHwC;AAIlD,OAAGC;AAJ+C,GAK9C;AACJ,QAAMC,GAAG,GAAG,mBAAO,IAAP,CAAZ;AACA,QAAM,CAAC;AAAEC,IAAAA,MAAF;AAAUC,IAAAA;AAAV,GAAD,EAAoBC,aAApB,IAAqC,qBAAqB;AAC9DD,IAAAA,KAAK,EAAE,CADuD;AAE9DD,IAAAA,MAAM,EAAE;AAFsD,GAArB,CAA3C,CAFI,CAMJ;;AACA,QAAMG,QAAQ,GAAG,wBAAY,SAAmD;AAAA,QAAlD;AAAEC,MAAAA,WAAW,EAAE;AAAEC,QAAAA,MAAM,EAAE;AAAEJ,UAAAA,KAAF;AAASD,UAAAA;AAAT;AAAV;AAAf,KAAkD;AAC9EE,IAAAA,aAAa,CAAC;AACZD,MAAAA,KAAK,EAAE,kCAAUA,KAAV,CADK;AAEZD,MAAAA,MAAM,EAAE,kCAAUA,MAAV;AAFI,KAAD,CAAb;AAID,GALgB,EAKd,EALc,CAAjB,CAPI,CAaJ;;AACA,QAAMR,gBAAgB,GAAG,wBAAac,KAAD,IAAgB;AACnD,QAAIb,uBAAJ,EAA6B;AAC3BA,MAAAA,uBAAuB,CAACa,KAAK,CAACF,WAAP,CAAvB;AACD;AACF,GAJwB,EAItB,CAACX,uBAAD,CAJsB,CAAzB;AAMA,QAAMC,iBAAiB,GAAG,wBAAaY,KAAD,IAAgB;AACpD,QAAIX,wBAAJ,EAA8B;AAC5B,YAAMY,GAAG,GAAGD,KAAK,CAACF,WAAN,CAAkBG,GAAlB,IAAyB,IAArC;AACAZ,MAAAA,wBAAwB,CAACY,GAAD,CAAxB;AACD;AACF,GALyB,EAKvB,CAACZ,wBAAD,CALuB,CAA1B;AAOA,wBAAU,MAAM;AACd,QAAIa,sBAASC,EAAT,KAAgB,SAApB,EAA+B;AAC7B,YAAMC,MAAM,GAAG,iCAAeX,GAAG,CAACY,OAAnB,CAAf;AACA,iCAAeD,MAAf;AACD;AACF,GALD,EAKG,EALH;AAOA,sBACE,6BAAC,iBAAD;AACE,IAAA,KAAK,EAAEE,MAAM,CAACC,SADhB;AAEE,IAAA,QAAQ,EAAEV;AAFZ,kBAIE,6BAAC,gCAAD;AACE,IAAA,MAAM,EAAEH,MADV;AAEE,IAAA,KAAK,EAAEC;AAFT,KAGMH,KAHN;AAIE,IAAA,gBAAgB,EAAEN,gBAJpB;AAKE,IAAA,iBAAiB,EAAEE,iBALrB;AAME,IAAA,QAAQ,EAAEG,gBAAgB,GAAGiB,qBAASC,GAAT,CAAalB,gBAAb,CAAH,GAAoCmB,SANhE;AAOE,IAAA,GAAG,EAAEjB;AAPP,KAJF,CADF;AAgBD,CAvDM;;;;AAyDP,MAAMa,MAAM,GAAGK,wBAAWC,MAAX,CAAkB;AAC/BL,EAAAA,SAAS,EAAE;AAAEZ,IAAAA,KAAK,EAAE,MAAT;AAAiBD,IAAAA,MAAM,EAAE;AAAzB;AADoB,CAAlB,CAAf","sourcesContent":["import React, { useCallback, useState, useRef, useEffect } from 'react';\nimport { View, Platform, findNodeHandle, StyleSheet } from 'react-native';\n\nimport type { Dimensions } from '../interfaces';\nimport { Settings } from '../interfaces';\nimport { createFragment, getWidthOrHeightValue as dimension } from '../utils';\nimport type { BaseReadiumViewProps } from './BaseReadiumView';\nimport { BaseReadiumView } from './BaseReadiumView';\n\ntype ReadiumProps = BaseReadiumViewProps;\n\nexport const ReadiumView: React.FC<ReadiumProps> = ({\n onLocationChange: wrappedOnLocationChange,\n onTableOfContents: wrappedOnTableOfContents,\n settings: unmappedSettings,\n ...props\n}) => {\n const ref = useRef(null);\n const [{ height, width }, setDimensions] = useState<Dimensions>({\n width: 0,\n height: 0,\n });\n // set the view dimensions on layout\n const onLayout = useCallback(({ nativeEvent: { layout: { width, height } }}) => {\n setDimensions({\n width: dimension(width),\n height: dimension(height),\n });\n }, []);\n // wrap the native onLocationChange and extract the raw event value\n const onLocationChange = useCallback((event: any) => {\n if (wrappedOnLocationChange) {\n wrappedOnLocationChange(event.nativeEvent);\n }\n }, [wrappedOnLocationChange]);\n\n const onTableOfContents = useCallback((event: any) => {\n if (wrappedOnTableOfContents) {\n const toc = event.nativeEvent.toc || null;\n wrappedOnTableOfContents(toc);\n }\n }, [wrappedOnTableOfContents]);\n\n useEffect(() => {\n if (Platform.OS === 'android') {\n const viewId = findNodeHandle(ref.current);\n createFragment(viewId);\n }\n }, [])\n\n return (\n <View\n style={styles.container}\n onLayout={onLayout}\n >\n <BaseReadiumView\n height={height}\n width={width}\n {...props}\n onLocationChange={onLocationChange}\n onTableOfContents={onTableOfContents}\n settings={unmappedSettings ? Settings.map(unmappedSettings) : undefined}\n ref={ref}\n />\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: { width: '100%', height: '100%' },\n});\n"]}
@@ -4,13 +4,28 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  var _exportNames = {
7
- ReadiumView: true
7
+ RANGES: true
8
8
  };
9
- exports.ReadiumView = void 0;
9
+ Object.defineProperty(exports, "RANGES", {
10
+ enumerable: true,
11
+ get: function () {
12
+ return _utils.RANGES;
13
+ }
14
+ });
10
15
 
11
- var _react = _interopRequireWildcard(require("react"));
16
+ var _enums = require("./enums");
12
17
 
13
- var _reactNative = require("react-native");
18
+ Object.keys(_enums).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
21
+ if (key in exports && exports[key] === _enums[key]) return;
22
+ Object.defineProperty(exports, key, {
23
+ enumerable: true,
24
+ get: function () {
25
+ return _enums[key];
26
+ }
27
+ });
28
+ });
14
29
 
15
30
  var _interfaces = require("./interfaces");
16
31
 
@@ -26,80 +41,19 @@ Object.keys(_interfaces).forEach(function (key) {
26
41
  });
27
42
  });
28
43
 
29
- var _enums = require("./enums");
44
+ var _utils = require("./utils");
30
45
 
31
- Object.keys(_enums).forEach(function (key) {
46
+ var _ReadiumView = require("./components/ReadiumView");
47
+
48
+ Object.keys(_ReadiumView).forEach(function (key) {
32
49
  if (key === "default" || key === "__esModule") return;
33
50
  if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
34
- if (key in exports && exports[key] === _enums[key]) return;
51
+ if (key in exports && exports[key] === _ReadiumView[key]) return;
35
52
  Object.defineProperty(exports, key, {
36
53
  enumerable: true,
37
54
  get: function () {
38
- return _enums[key];
55
+ return _ReadiumView[key];
39
56
  }
40
57
  });
41
58
  });
42
-
43
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
44
-
45
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
46
-
47
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
48
-
49
- const LINKING_ERROR = `The package 'react-native-readium' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
50
- ios: "- You have run 'pod install'\n",
51
- default: ''
52
- }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo managed workflow\n';
53
- const ComponentName = 'ReadiumView';
54
- const BaseReadiumView = _reactNative.UIManager.getViewManagerConfig(ComponentName) != null ? (0, _reactNative.requireNativeComponent)(ComponentName) : () => {
55
- throw new Error(LINKING_ERROR);
56
- };
57
-
58
- const ReadiumView = _ref => {
59
- let {
60
- onLocationChange: wrappedOnLocationChange,
61
- settings: unmappedSettings,
62
- ...props
63
- } = _ref;
64
- const [{
65
- height,
66
- width
67
- }, setDimensions] = (0, _react.useState)({
68
- width: 0,
69
- height: 0
70
- });
71
- const onLocationChange = (0, _react.useCallback)(event => {
72
- if (wrappedOnLocationChange) {
73
- wrappedOnLocationChange(event.nativeEvent);
74
- }
75
- }, [wrappedOnLocationChange]);
76
- return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
77
- style: {
78
- width: '100%',
79
- height: '100%'
80
- },
81
- onLayout: _ref2 => {
82
- let {
83
- nativeEvent: {
84
- layout: {
85
- width,
86
- height
87
- }
88
- }
89
- } = _ref2;
90
- setDimensions({
91
- width: _reactNative.Platform.OS === 'android' ? _reactNative.PixelRatio.getPixelSizeForLayoutSize(width) : width,
92
- height: _reactNative.Platform.OS === 'android' ? _reactNative.PixelRatio.getPixelSizeForLayoutSize(height) : height
93
- });
94
- }
95
- }, /*#__PURE__*/_react.default.createElement(BaseReadiumView, _extends({
96
- height: height,
97
- width: width
98
- }, props, {
99
- onLocationChange: onLocationChange,
100
- settings: unmappedSettings ? _interfaces.Settings.map(unmappedSettings) : undefined
101
- })));
102
- };
103
-
104
- exports.ReadiumView = ReadiumView;
105
59
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":["LINKING_ERROR","Platform","select","ios","default","ComponentName","BaseReadiumView","UIManager","getViewManagerConfig","Error","ReadiumView","onLocationChange","wrappedOnLocationChange","settings","unmappedSettings","props","height","width","setDimensions","event","nativeEvent","layout","OS","PixelRatio","getPixelSizeForLayoutSize","Settings","map","undefined"],"mappings":";;;;;;;;;;AAAA;;AACA;;AAUA;;AAGA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AADA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;;;;;AAGA,MAAMA,aAAa,GAChB,+EAAD,GACAC,sBAASC,MAAT,CAAgB;AAAEC,EAAAA,GAAG,EAAE,gCAAP;AAAyCC,EAAAA,OAAO,EAAE;AAAlD,CAAhB,CADA,GAEA,sDAFA,GAGA,6CAJF;AAiBA,MAAMC,aAAa,GAAG,aAAtB;AAEA,MAAMC,eAAe,GACnBC,uBAAUC,oBAAV,CAA+BH,aAA/B,KAAiD,IAAjD,GACI,yCAAqCA,aAArC,CADJ,GAEI,MAAM;AACJ,QAAM,IAAII,KAAJ,CAAUT,aAAV,CAAN;AACD,CALP;;AAOO,MAAMU,WAAmC,GAAG,QAI7C;AAAA,MAJ8C;AAClDC,IAAAA,gBAAgB,EAAEC,uBADgC;AAElDC,IAAAA,QAAQ,EAAEC,gBAFwC;AAGlD,OAAGC;AAH+C,GAI9C;AAEJ,QAAM,CAAC;AAAEC,IAAAA,MAAF;AAAUC,IAAAA;AAAV,GAAD,EAAoBC,aAApB,IAAqC,qBAAqB;AAC9DD,IAAAA,KAAK,EAAE,CADuD;AAE9DD,IAAAA,MAAM,EAAE;AAFsD,GAArB,CAA3C;AAIA,QAAML,gBAAgB,GAAG,wBAAaQ,KAAD,IAAgB;AACnD,QAAIP,uBAAJ,EAA6B;AAC3BA,MAAAA,uBAAuB,CAACO,KAAK,CAACC,WAAP,CAAvB;AACD;AACF,GAJwB,EAItB,CAACR,uBAAD,CAJsB,CAAzB;AAMA,sBACE,6BAAC,iBAAD;AACE,IAAA,KAAK,EAAE;AAAEK,MAAAA,KAAK,EAAE,MAAT;AAAiBD,MAAAA,MAAM,EAAE;AAAzB,KADT;AAEE,IAAA,QAAQ,EAAE,SAAmD;AAAA,UAAlD;AAAEI,QAAAA,WAAW,EAAE;AAAEC,UAAAA,MAAM,EAAE;AAAEJ,YAAAA,KAAF;AAASD,YAAAA;AAAT;AAAV;AAAf,OAAkD;AAC3DE,MAAAA,aAAa,CAAC;AACZD,QAAAA,KAAK,EAAEhB,sBAASqB,EAAT,KAAgB,SAAhB,GAA4BC,wBAAWC,yBAAX,CAAqCP,KAArC,CAA5B,GAA0EA,KADrE;AAEZD,QAAAA,MAAM,EAAEf,sBAASqB,EAAT,KAAgB,SAAhB,GAA4BC,wBAAWC,yBAAX,CAAqCR,MAArC,CAA5B,GAA2EA;AAFvE,OAAD,CAAb;AAID;AAPH,kBASE,6BAAC,eAAD;AACE,IAAA,MAAM,EAAEA,MADV;AAEE,IAAA,KAAK,EAAEC;AAFT,KAGMF,KAHN;AAIE,IAAA,gBAAgB,EAAEJ,gBAJpB;AAKE,IAAA,QAAQ,EAAEG,gBAAgB,GAAGW,qBAASC,GAAT,CAAaZ,gBAAb,CAAH,GAAoCa;AALhE,KATF,CADF;AAmBD,CAnCM","sourcesContent":["import React, { useCallback, useState } from 'react';\nimport {\n requireNativeComponent,\n UIManager,\n Platform,\n ViewStyle,\n View,\n PixelRatio,\n} from 'react-native';\n\nimport type { Locator, File, Dimensions } from './interfaces';\nimport { Settings } from './interfaces';\n\nexport * from './enums';\nexport * from './interfaces';\n\nconst LINKING_ERROR =\n `The package 'react-native-readium' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\ntype ReadiumProps = {\n file: File;\n location?: Locator;\n settings?: Partial<Settings>;\n style?: ViewStyle;\n onLocationChange?: (locator: Locator) => void;\n ref?: any;\n height?: number;\n width?: number;\n};\n\nconst ComponentName = 'ReadiumView';\n\nconst BaseReadiumView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<ReadiumProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n\nexport const ReadiumView: React.FC<ReadiumProps> = ({\n onLocationChange: wrappedOnLocationChange,\n settings: unmappedSettings,\n ...props\n}) => {\n\n const [{ height, width }, setDimensions] = useState<Dimensions>({\n width: 0,\n height: 0,\n });\n const onLocationChange = useCallback((event: any) => {\n if (wrappedOnLocationChange) {\n wrappedOnLocationChange(event.nativeEvent);\n }\n }, [wrappedOnLocationChange]);\n\n return (\n <View\n style={{ width: '100%', height: '100%' }}\n onLayout={({ nativeEvent: { layout: { width, height } }}) => {\n setDimensions({\n width: Platform.OS === 'android' ? PixelRatio.getPixelSizeForLayoutSize(width) : width,\n height: Platform.OS === 'android' ? PixelRatio.getPixelSizeForLayoutSize(height) : height,\n })\n }}\n >\n <BaseReadiumView\n height={height}\n width={width}\n {...props}\n onLocationChange={onLocationChange}\n settings={unmappedSettings ? Settings.map(unmappedSettings) : undefined}\n />\n </View>\n );\n};\n"]}
1
+ {"version":3,"sources":["index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './enums';\nexport * from './interfaces';\nexport { RANGES } from './utils';\nexport * from './components/ReadiumView';\n"]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=Link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
@@ -30,6 +30,19 @@ Object.keys(_File).forEach(function (key) {
30
30
  });
31
31
  });
32
32
 
33
+ var _Link = require("./Link");
34
+
35
+ Object.keys(_Link).forEach(function (key) {
36
+ if (key === "default" || key === "__esModule") return;
37
+ if (key in exports && exports[key] === _Link[key]) return;
38
+ Object.defineProperty(exports, key, {
39
+ enumerable: true,
40
+ get: function () {
41
+ return _Link[key];
42
+ }
43
+ });
44
+ });
45
+
33
46
  var _Locator = require("./Locator");
34
47
 
35
48
  Object.keys(_Locator).forEach(function (key) {
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './Dimensions';\nexport * from './File';\nexport * from './Locator';\nexport * from './Settings';\n"]}
1
+ {"version":3,"sources":["index.ts"],"names":[],"mappings":";;;;;;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","sourcesContent":["export * from './Dimensions';\nexport * from './File';\nexport * from './Link';\nexport * from './Locator';\nexport * from './Settings';\n"]}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.COMPONENT_NAME = void 0;
7
+ const COMPONENT_NAME = 'ReadiumView';
8
+ exports.COMPONENT_NAME = COMPONENT_NAME;
9
+ //# sourceMappingURL=COMPONENT_NAME.js.map