nn-widgets 0.1.18 → 0.1.20

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 (254) hide show
  1. package/android/build/.transforms/c5ed6666749162ed9ddcb4d93b73d4f8/results.bin +1 -0
  2. package/android/build/.transforms/c5ed6666749162ed9ddcb4d93b73d4f8/transformed/classes/classes_dex/classes.dex +0 -0
  3. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/results.bin +1 -0
  4. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/BuildConfig.dex +0 -0
  5. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/NNWidgetsModule$Companion.dex +0 -0
  6. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunction$1.dex +0 -0
  7. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunction$2.dex +0 -0
  8. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunction$3.dex +0 -0
  9. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$1.dex +0 -0
  10. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$2.dex +0 -0
  11. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$3.dex +0 -0
  12. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$4.dex +0 -0
  13. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$FunctionWithoutArgs$1.dex +0 -0
  14. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/expo/modules/nnwidgets/NNWidgetsModule.dex +0 -0
  15. package/android/build/.transforms/ec68a81b79c89c82d105758048ccde1e/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  16. package/android/build/generated/source/buildConfig/debug/expo/modules/nnwidgets/BuildConfig.java +10 -0
  17. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +7 -0
  18. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +18 -0
  19. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +6 -0
  20. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +1 -0
  21. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  22. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  23. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -0
  24. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +1 -0
  25. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +2 -0
  26. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +2 -0
  27. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +2 -0
  28. package/android/build/intermediates/incremental/packageDebugAssets/merger.xml +2 -0
  29. package/android/build/intermediates/java_res/debug/processDebugJavaRes/out/META-INF/nn-widgets_debug.kotlin_module +0 -0
  30. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/expo/modules/nnwidgets/BuildConfig.class +0 -0
  31. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +2 -0
  32. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +7 -0
  33. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +7 -0
  34. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +1 -0
  35. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +1 -0
  36. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/META-INF/nn-widgets_debug.kotlin_module +0 -0
  37. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/BuildConfig.class +0 -0
  38. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/NNWidgetsModule$Companion.class +0 -0
  39. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunction$1.class +0 -0
  40. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunction$2.class +0 -0
  41. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunction$3.class +0 -0
  42. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$1.class +0 -0
  43. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$2.class +0 -0
  44. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$3.class +0 -0
  45. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$4.class +0 -0
  46. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$FunctionWithoutArgs$1.class +0 -0
  47. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/expo/modules/nnwidgets/NNWidgetsModule.class +0 -0
  48. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  49. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +1 -0
  50. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  51. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  52. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  53. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  54. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  55. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  56. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  57. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  58. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  59. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  60. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  61. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  62. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  63. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  64. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  65. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  66. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  67. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  68. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  69. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  70. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  71. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  72. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  73. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  74. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  75. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  76. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  77. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  78. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  79. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  80. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  81. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  82. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  83. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  84. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  85. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  86. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  87. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  88. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  89. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  90. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  91. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  92. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  93. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  94. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  95. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  96. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  97. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  98. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  99. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  100. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  101. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  102. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  103. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  104. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  105. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  106. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  107. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  108. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  109. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  110. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  111. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  112. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  113. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +2 -0
  114. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  115. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  116. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  117. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  118. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  119. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  120. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  121. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  122. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  123. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  124. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  125. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  126. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  127. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  128. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  129. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  130. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  131. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  132. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  133. package/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  134. package/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  135. package/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  136. package/android/build/outputs/logs/manifest-merger-debug-report.txt +16 -0
  137. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  138. package/android/build/tmp/kotlin-classes/debug/META-INF/nn-widgets_debug.kotlin_module +0 -0
  139. package/android/build/tmp/kotlin-classes/debug/expo/modules/nnwidgets/NNWidgetsModule$Companion.class +0 -0
  140. package/android/build/tmp/kotlin-classes/debug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunction$1.class +0 -0
  141. package/android/build/tmp/kotlin-classes/debug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunction$2.class +0 -0
  142. package/android/build/tmp/kotlin-classes/debug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunction$3.class +0 -0
  143. package/android/build/tmp/kotlin-classes/debug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$1.class +0 -0
  144. package/android/build/tmp/kotlin-classes/debug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$2.class +0 -0
  145. package/android/build/tmp/kotlin-classes/debug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$3.class +0 -0
  146. package/android/build/tmp/kotlin-classes/debug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$AsyncFunctionWithPromise$4.class +0 -0
  147. package/android/build/tmp/kotlin-classes/debug/expo/modules/nnwidgets/NNWidgetsModule$definition$lambda$5$$inlined$FunctionWithoutArgs$1.class +0 -0
  148. package/android/build/tmp/kotlin-classes/debug/expo/modules/nnwidgets/NNWidgetsModule.class +0 -0
  149. package/android/src/main/java/expo/modules/nnwidgets/NNWidgetsModule.kt +43 -13
  150. package/assets/android/drawable/nn_icon_account.xml +10 -0
  151. package/assets/android/drawable/nn_icon_add.xml +10 -0
  152. package/assets/android/drawable/nn_icon_add_circle.xml +10 -0
  153. package/assets/android/drawable/nn_icon_analytics.xml +10 -0
  154. package/assets/android/drawable/nn_icon_arrow_right.xml +10 -0
  155. package/assets/android/drawable/nn_icon_barcode.xml +10 -0
  156. package/assets/android/drawable/nn_icon_bell.xml +10 -0
  157. package/assets/android/drawable/nn_icon_block.xml +10 -0
  158. package/assets/android/drawable/nn_icon_bolt.xml +10 -0
  159. package/assets/android/drawable/nn_icon_book.xml +10 -0
  160. package/assets/android/drawable/nn_icon_bookmark.xml +10 -0
  161. package/assets/android/drawable/nn_icon_briefcase.xml +10 -0
  162. package/assets/android/drawable/nn_icon_bug.xml +10 -0
  163. package/assets/android/drawable/nn_icon_building.xml +10 -0
  164. package/assets/android/drawable/nn_icon_camera.xml +13 -0
  165. package/assets/android/drawable/nn_icon_card.xml +10 -0
  166. package/assets/android/drawable/nn_icon_cart.xml +10 -0
  167. package/assets/android/drawable/nn_icon_chart.xml +10 -0
  168. package/assets/android/drawable/nn_icon_chat.xml +10 -0
  169. package/assets/android/drawable/nn_icon_check.xml +10 -0
  170. package/assets/android/drawable/nn_icon_check_circle.xml +10 -0
  171. package/assets/android/drawable/nn_icon_chevron_right.xml +10 -0
  172. package/assets/android/drawable/nn_icon_clock.xml +10 -0
  173. package/assets/android/drawable/nn_icon_close.xml +10 -0
  174. package/assets/android/drawable/nn_icon_cloud.xml +10 -0
  175. package/assets/android/drawable/nn_icon_cloud_download.xml +10 -0
  176. package/assets/android/drawable/nn_icon_cloud_upload.xml +10 -0
  177. package/assets/android/drawable/nn_icon_code.xml +10 -0
  178. package/assets/android/drawable/nn_icon_contacts.xml +10 -0
  179. package/assets/android/drawable/nn_icon_delete.xml +10 -0
  180. package/assets/android/drawable/nn_icon_desktop.xml +10 -0
  181. package/assets/android/drawable/nn_icon_devices.xml +10 -0
  182. package/assets/android/drawable/nn_icon_document.xml +10 -0
  183. package/assets/android/drawable/nn_icon_dollar.xml +10 -0
  184. package/assets/android/drawable/nn_icon_download.xml +10 -0
  185. package/assets/android/drawable/nn_icon_edit.xml +10 -0
  186. package/assets/android/drawable/nn_icon_error.xml +10 -0
  187. package/assets/android/drawable/nn_icon_eye.xml +10 -0
  188. package/assets/android/drawable/nn_icon_eye_off.xml +10 -0
  189. package/assets/android/drawable/nn_icon_face.xml +10 -0
  190. package/assets/android/drawable/nn_icon_fast_forward.xml +10 -0
  191. package/assets/android/drawable/nn_icon_flag.xml +10 -0
  192. package/assets/android/drawable/nn_icon_folder.xml +10 -0
  193. package/assets/android/drawable/nn_icon_forum.xml +10 -0
  194. package/assets/android/drawable/nn_icon_gear.xml +10 -0
  195. package/assets/android/drawable/nn_icon_grid.xml +10 -0
  196. package/assets/android/drawable/nn_icon_hammer.xml +10 -0
  197. package/assets/android/drawable/nn_icon_headphones.xml +10 -0
  198. package/assets/android/drawable/nn_icon_heart.xml +10 -0
  199. package/assets/android/drawable/nn_icon_heart_outline.xml +10 -0
  200. package/assets/android/drawable/nn_icon_home.xml +10 -0
  201. package/assets/android/drawable/nn_icon_image.xml +10 -0
  202. package/assets/android/drawable/nn_icon_info.xml +10 -0
  203. package/assets/android/drawable/nn_icon_lightbulb.xml +10 -0
  204. package/assets/android/drawable/nn_icon_link.xml +10 -0
  205. package/assets/android/drawable/nn_icon_location.xml +10 -0
  206. package/assets/android/drawable/nn_icon_lock.xml +10 -0
  207. package/assets/android/drawable/nn_icon_mail.xml +10 -0
  208. package/assets/android/drawable/nn_icon_megaphone.xml +10 -0
  209. package/assets/android/drawable/nn_icon_menu.xml +10 -0
  210. package/assets/android/drawable/nn_icon_message.xml +10 -0
  211. package/assets/android/drawable/nn_icon_mic.xml +10 -0
  212. package/assets/android/drawable/nn_icon_money.xml +10 -0
  213. package/assets/android/drawable/nn_icon_more.xml +10 -0
  214. package/assets/android/drawable/nn_icon_music.xml +10 -0
  215. package/assets/android/drawable/nn_icon_palette.xml +10 -0
  216. package/assets/android/drawable/nn_icon_pause.xml +10 -0
  217. package/assets/android/drawable/nn_icon_people.xml +10 -0
  218. package/assets/android/drawable/nn_icon_person.xml +10 -0
  219. package/assets/android/drawable/nn_icon_phone.xml +10 -0
  220. package/assets/android/drawable/nn_icon_pin.xml +10 -0
  221. package/assets/android/drawable/nn_icon_play.xml +10 -0
  222. package/assets/android/drawable/nn_icon_qrcode.xml +10 -0
  223. package/assets/android/drawable/nn_icon_refresh.xml +10 -0
  224. package/assets/android/drawable/nn_icon_remove_circle.xml +10 -0
  225. package/assets/android/drawable/nn_icon_save.xml +10 -0
  226. package/assets/android/drawable/nn_icon_search.xml +10 -0
  227. package/assets/android/drawable/nn_icon_share.xml +10 -0
  228. package/assets/android/drawable/nn_icon_shield.xml +10 -0
  229. package/assets/android/drawable/nn_icon_star.xml +10 -0
  230. package/assets/android/drawable/nn_icon_star_outline.xml +10 -0
  231. package/assets/android/drawable/nn_icon_task.xml +10 -0
  232. package/assets/android/drawable/nn_icon_trending_down.xml +10 -0
  233. package/assets/android/drawable/nn_icon_trending_up.xml +10 -0
  234. package/assets/android/drawable/nn_icon_unlock.xml +10 -0
  235. package/assets/android/drawable/nn_icon_upload.xml +10 -0
  236. package/assets/android/drawable/nn_icon_video.xml +10 -0
  237. package/assets/android/drawable/nn_icon_volume.xml +10 -0
  238. package/assets/android/drawable/nn_icon_warning.xml +10 -0
  239. package/assets/android/drawable/nn_icon_zoom.xml +10 -0
  240. package/build/icons.d.ts +125 -0
  241. package/build/icons.d.ts.map +1 -0
  242. package/build/icons.js +136 -0
  243. package/build/icons.js.map +1 -0
  244. package/build/index.d.ts +2 -0
  245. package/build/index.d.ts.map +1 -1
  246. package/build/index.js +2 -0
  247. package/build/index.js.map +1 -1
  248. package/package.json +1 -1
  249. package/plugin/build/icons.d.ts +28 -0
  250. package/plugin/build/icons.d.ts.map +1 -0
  251. package/plugin/build/icons.js +197 -0
  252. package/plugin/build/withAndroidWidget.d.ts.map +1 -1
  253. package/plugin/build/withAndroidWidget.js +124 -30
  254. package/plugin/tsconfig.tsbuildinfo +1 -1
package/build/icons.js ADDED
@@ -0,0 +1,136 @@
1
+ /**
2
+ * nn-widgets bundled icons
3
+ *
4
+ * These icons are bundled with nn-widgets and automatically copied
5
+ * to your app during prebuild. Use the simple name in your widget data.
6
+ *
7
+ * Example:
8
+ * ```typescript
9
+ * import { setWidgetData, Icons } from 'nn-widgets';
10
+ *
11
+ * setWidgetData("MyWidget", {
12
+ * items: [
13
+ * { title: "Tasks", icon: Icons.TASK },
14
+ * { title: "Settings", icon: Icons.GEAR },
15
+ * { title: "Profile", icon: Icons.PERSON },
16
+ * ]
17
+ * });
18
+ * ```
19
+ */
20
+ /**
21
+ * Available bundled icon names
22
+ * Use these directly in your widget data
23
+ */
24
+ export const Icons = {
25
+ // Basic
26
+ STAR: "star",
27
+ STAR_OUTLINE: "star-outline",
28
+ HEART: "heart",
29
+ HEART_OUTLINE: "heart-outline",
30
+ BOOKMARK: "bookmark",
31
+ CLOCK: "clock",
32
+ BELL: "bell",
33
+ HOME: "home",
34
+ GEAR: "gear",
35
+ SETTINGS: "gear", // alias
36
+ BOLT: "bolt",
37
+ // People & accounts
38
+ PERSON: "person",
39
+ PEOPLE: "people",
40
+ ACCOUNT: "account",
41
+ CONTACTS: "contacts",
42
+ FACE: "face",
43
+ // Communication
44
+ MAIL: "mail",
45
+ MESSAGE: "message",
46
+ CHAT: "chat",
47
+ FORUM: "forum",
48
+ PHONE: "phone",
49
+ MEGAPHONE: "megaphone",
50
+ // Navigation
51
+ CHEVRON_RIGHT: "chevron-right",
52
+ ARROW_RIGHT: "arrow-right",
53
+ MENU: "menu",
54
+ MORE: "more",
55
+ CLOSE: "close",
56
+ SEARCH: "search",
57
+ ZOOM: "zoom",
58
+ REFRESH: "refresh",
59
+ // Actions
60
+ ADD: "add",
61
+ ADD_CIRCLE: "add-circle",
62
+ REMOVE_CIRCLE: "remove-circle",
63
+ EDIT: "edit",
64
+ DELETE: "delete",
65
+ SHARE: "share",
66
+ DOWNLOAD: "download",
67
+ UPLOAD: "upload",
68
+ SAVE: "save",
69
+ CHECK: "check",
70
+ CHECK_CIRCLE: "check-circle",
71
+ // Media
72
+ PLAY: "play",
73
+ PAUSE: "pause",
74
+ CAMERA: "camera",
75
+ IMAGE: "image",
76
+ VIDEO: "video",
77
+ MUSIC: "music",
78
+ MIC: "mic",
79
+ VOLUME: "volume",
80
+ HEADPHONES: "headphones",
81
+ FAST_FORWARD: "fast-forward",
82
+ // Files & folders
83
+ FOLDER: "folder",
84
+ DOCUMENT: "document",
85
+ BOOK: "book",
86
+ // Business
87
+ BRIEFCASE: "briefcase",
88
+ BUILDING: "building",
89
+ DOLLAR: "dollar",
90
+ MONEY: "money",
91
+ CARD: "card",
92
+ CART: "cart",
93
+ CHART: "chart",
94
+ ANALYTICS: "analytics",
95
+ TRENDING_UP: "trending-up",
96
+ TRENDING_DOWN: "trending-down",
97
+ // Tools & development
98
+ LIGHTBULB: "lightbulb",
99
+ HAMMER: "hammer",
100
+ CODE: "code",
101
+ BUG: "bug",
102
+ TASK: "task",
103
+ GRID: "grid",
104
+ PALETTE: "palette",
105
+ LINK: "link",
106
+ BARCODE: "barcode",
107
+ QRCODE: "qrcode",
108
+ // Location
109
+ LOCATION: "location",
110
+ PIN: "pin",
111
+ // Status
112
+ INFO: "info",
113
+ WARNING: "warning",
114
+ ERROR: "error",
115
+ BLOCK: "block",
116
+ SHIELD: "shield",
117
+ LOCK: "lock",
118
+ UNLOCK: "unlock",
119
+ EYE: "eye",
120
+ EYE_OFF: "eye-off",
121
+ FLAG: "flag",
122
+ // Devices
123
+ DESKTOP: "desktop",
124
+ DEVICES: "devices",
125
+ // Cloud
126
+ CLOUD: "cloud",
127
+ CLOUD_UPLOAD: "cloud-upload",
128
+ CLOUD_DOWNLOAD: "cloud-download",
129
+ };
130
+ /**
131
+ * Get all available icon names
132
+ */
133
+ export function getAvailableIcons() {
134
+ return Object.values(Icons);
135
+ }
136
+ //# sourceMappingURL=icons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.js","sourceRoot":"","sources":["../src/icons.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * nn-widgets bundled icons\n *\n * These icons are bundled with nn-widgets and automatically copied\n * to your app during prebuild. Use the simple name in your widget data.\n *\n * Example:\n * ```typescript\n * import { setWidgetData, Icons } from 'nn-widgets';\n *\n * setWidgetData(\"MyWidget\", {\n * items: [\n * { title: \"Tasks\", icon: Icons.TASK },\n * { title: \"Settings\", icon: Icons.GEAR },\n * { title: \"Profile\", icon: Icons.PERSON },\n * ]\n * });\n * ```\n */\n\n/**\n * Available bundled icon names\n * Use these directly in your widget data\n */\nexport const Icons = {\n // Basic\n STAR: \"star\",\n STAR_OUTLINE: \"star-outline\",\n HEART: \"heart\",\n HEART_OUTLINE: \"heart-outline\",\n BOOKMARK: \"bookmark\",\n CLOCK: \"clock\",\n BELL: \"bell\",\n HOME: \"home\",\n GEAR: \"gear\",\n SETTINGS: \"gear\", // alias\n BOLT: \"bolt\",\n\n // People & accounts\n PERSON: \"person\",\n PEOPLE: \"people\",\n ACCOUNT: \"account\",\n CONTACTS: \"contacts\",\n FACE: \"face\",\n\n // Communication\n MAIL: \"mail\",\n MESSAGE: \"message\",\n CHAT: \"chat\",\n FORUM: \"forum\",\n PHONE: \"phone\",\n MEGAPHONE: \"megaphone\",\n\n // Navigation\n CHEVRON_RIGHT: \"chevron-right\",\n ARROW_RIGHT: \"arrow-right\",\n MENU: \"menu\",\n MORE: \"more\",\n CLOSE: \"close\",\n SEARCH: \"search\",\n ZOOM: \"zoom\",\n REFRESH: \"refresh\",\n\n // Actions\n ADD: \"add\",\n ADD_CIRCLE: \"add-circle\",\n REMOVE_CIRCLE: \"remove-circle\",\n EDIT: \"edit\",\n DELETE: \"delete\",\n SHARE: \"share\",\n DOWNLOAD: \"download\",\n UPLOAD: \"upload\",\n SAVE: \"save\",\n CHECK: \"check\",\n CHECK_CIRCLE: \"check-circle\",\n\n // Media\n PLAY: \"play\",\n PAUSE: \"pause\",\n CAMERA: \"camera\",\n IMAGE: \"image\",\n VIDEO: \"video\",\n MUSIC: \"music\",\n MIC: \"mic\",\n VOLUME: \"volume\",\n HEADPHONES: \"headphones\",\n FAST_FORWARD: \"fast-forward\",\n\n // Files & folders\n FOLDER: \"folder\",\n DOCUMENT: \"document\",\n BOOK: \"book\",\n\n // Business\n BRIEFCASE: \"briefcase\",\n BUILDING: \"building\",\n DOLLAR: \"dollar\",\n MONEY: \"money\",\n CARD: \"card\",\n CART: \"cart\",\n CHART: \"chart\",\n ANALYTICS: \"analytics\",\n TRENDING_UP: \"trending-up\",\n TRENDING_DOWN: \"trending-down\",\n\n // Tools & development\n LIGHTBULB: \"lightbulb\",\n HAMMER: \"hammer\",\n CODE: \"code\",\n BUG: \"bug\",\n TASK: \"task\",\n GRID: \"grid\",\n PALETTE: \"palette\",\n LINK: \"link\",\n BARCODE: \"barcode\",\n QRCODE: \"qrcode\",\n\n // Location\n LOCATION: \"location\",\n PIN: \"pin\",\n\n // Status\n INFO: \"info\",\n WARNING: \"warning\",\n ERROR: \"error\",\n BLOCK: \"block\",\n SHIELD: \"shield\",\n LOCK: \"lock\",\n UNLOCK: \"unlock\",\n EYE: \"eye\",\n EYE_OFF: \"eye-off\",\n FLAG: \"flag\",\n\n // Devices\n DESKTOP: \"desktop\",\n DEVICES: \"devices\",\n\n // Cloud\n CLOUD: \"cloud\",\n CLOUD_UPLOAD: \"cloud-upload\",\n CLOUD_DOWNLOAD: \"cloud-download\",\n} as const;\n\n/**\n * Type for icon names\n */\nexport type IconName = (typeof Icons)[keyof typeof Icons];\n\n/**\n * Get all available icon names\n */\nexport function getAvailableIcons(): string[] {\n return Object.values(Icons);\n}\n"]}
package/build/index.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import type { WidgetData, WidgetDataPayload, WidgetListItem, WidgetItemIcon, WidgetItemText, WidgetUpdateConfig, NNWidgetsModuleType, FlexLayoutConfig } from "./NNWidgets.types";
2
+ import { Icons, getAvailableIcons, type IconName } from "./icons";
3
+ export { Icons, getAvailableIcons, type IconName };
2
4
  export type { WidgetData, WidgetDataPayload, WidgetListItem, WidgetItemIcon, WidgetItemText, WidgetUpdateConfig, NNWidgetsModuleType, FlexLayoutConfig, };
3
5
  /**
4
6
  * NNWidgets - Native widget integration for React Native / Expo
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,GACjB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,EAAE,mBAyJvB,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAC;AAElE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,QAAQ,EAAE,CAAC;AAEnD,YAAY,EACV,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,GACjB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,EAAE,mBAyJvB,CAAC;AAEF,eAAe,SAAS,CAAC"}
package/build/index.js CHANGED
@@ -1,4 +1,6 @@
1
1
  import NNWidgetsModule from "./NNWidgetsModule";
2
+ import { Icons, getAvailableIcons } from "./icons";
3
+ export { Icons, getAvailableIcons };
2
4
  /**
3
5
  * NNWidgets - Native widget integration for React Native / Expo
4
6
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import NNWidgetsModule from \"./NNWidgetsModule\";\nimport type {\n WidgetData,\n WidgetDataPayload,\n WidgetListItem,\n WidgetItemIcon,\n WidgetItemText,\n WidgetUpdateConfig,\n NNWidgetsModuleType,\n FlexLayoutConfig,\n} from \"./NNWidgets.types\";\n\nexport type {\n WidgetData,\n WidgetDataPayload,\n WidgetListItem,\n WidgetItemIcon,\n WidgetItemText,\n WidgetUpdateConfig,\n NNWidgetsModuleType,\n FlexLayoutConfig,\n};\n\n/**\n * NNWidgets - Native widget integration for React Native / Expo\n *\n * This module provides APIs to communicate between your React Native app\n * and native widgets (iOS WidgetKit & Android App Widgets).\n */\nexport const NNWidgets: NNWidgetsModuleType = {\n /**\n * Set shared data that widgets can read (legacy flat key-value format).\n * Data is stored in App Groups (iOS) or SharedPreferences (Android).\n *\n * @param data - Key-value pairs to share with widget\n * @returns Promise<boolean> - Success status\n *\n * @example\n * ```ts\n * await NNWidgets.setWidgetData({\n * userName: 'John',\n * points: 100,\n * isLoggedIn: true\n * });\n * ```\n */\n async setWidgetData(data: WidgetData): Promise<boolean> {\n try {\n return await NNWidgetsModule.setWidgetData(data);\n } catch (error) {\n console.error(\"[NNWidgets] Failed to set widget data:\", error);\n return false;\n }\n },\n\n /**\n * Get current shared widget data.\n *\n * @returns Promise<WidgetData> - Current shared data\n */\n async getWidgetData(): Promise<WidgetData> {\n try {\n return await NNWidgetsModule.getWidgetData();\n } catch (error) {\n console.error(\"[NNWidgets] Failed to get widget data:\", error);\n return {};\n }\n },\n\n /**\n * Update a specific widget with structured data.\n * Automatically serializes items to JSON, stores data with proper key prefixes,\n * and reloads the widget timeline.\n *\n * @param widgetName - The widget kind identifier (matches `name` in app.json widgets config)\n * @param data - Structured widget data payload\n * @returns Promise<boolean> - Success status\n *\n * @example\n * ```ts\n * // Update a list-type widget\n * await NNWidgets.updateWidget('SessionsWidget', {\n * items: [\n * {\n * icon: 'brainstorm',\n * title: { text: 'Morning Focus', color: '#1E1E2E', fontWeight: 'bold' },\n * description: '25 min session',\n * deepLink: 'myapp://session/123',\n * },\n * {\n * icon: { url: 'meditation', size: 28, radius: 14 },\n * title: 'Evening Wind Down',\n * description: { text: '15 min', color: '#888888' },\n * },\n * ],\n * });\n *\n * // Update a single-type widget\n * await NNWidgets.updateWidget('StatsWidget', {\n * title: 'Focus Time',\n * subtitle: 'This week',\n * value: 142,\n * });\n * ```\n */\n async updateWidget(\n widgetName: string,\n data: WidgetDataPayload,\n ): Promise<boolean> {\n try {\n const flatData: WidgetData = {};\n\n if (data.title !== undefined) {\n flatData[`${widgetName}_title`] = data.title;\n }\n if (data.subtitle !== undefined) {\n flatData[`${widgetName}_subtitle`] = data.subtitle;\n }\n if (data.value !== undefined) {\n flatData[`${widgetName}_value`] = data.value;\n }\n if (data.items !== undefined) {\n // Serialize items array to JSON string for native storage\n flatData[`${widgetName}_items`] = JSON.stringify(data.items);\n }\n if (data.layout !== undefined) {\n // Serialize layout config to JSON for flex-grid widgets\n flatData[`${widgetName}_layout`] = JSON.stringify(data.layout);\n }\n\n const success = await NNWidgetsModule.setWidgetData(flatData);\n if (success) {\n await NNWidgetsModule.reloadWidget(widgetName);\n }\n return success;\n } catch (error) {\n console.error(\n `[NNWidgets] Failed to update widget \"${widgetName}\":`,\n error,\n );\n return false;\n }\n },\n\n /**\n * Request widget to reload/update.\n * - iOS: Reloads widget timeline\n * - Android: Triggers widget update broadcast\n *\n * @param config - Optional configuration\n * @returns Promise<boolean> - Success status\n *\n * @example\n * ```ts\n * // Update all widgets\n * await NNWidgets.reloadWidget();\n *\n * // Update specific widget\n * await NNWidgets.reloadWidget({ widgetName: 'MyWidget' });\n * ```\n */\n async reloadWidget(config?: WidgetUpdateConfig): Promise<boolean> {\n try {\n return await NNWidgetsModule.reloadWidget(config?.widgetName || null);\n } catch (error) {\n console.error(\"[NNWidgets] Failed to reload widget:\", error);\n return false;\n }\n },\n\n /**\n * Check if widgets are supported on this device.\n *\n * @returns boolean - True if widgets are supported\n */\n isSupported(): boolean {\n try {\n return NNWidgetsModule.isSupported();\n } catch (error) {\n return false;\n }\n },\n};\n\nexport default NNWidgets;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["import NNWidgetsModule from \"./NNWidgetsModule\";\nimport type {\n WidgetData,\n WidgetDataPayload,\n WidgetListItem,\n WidgetItemIcon,\n WidgetItemText,\n WidgetUpdateConfig,\n NNWidgetsModuleType,\n FlexLayoutConfig,\n} from \"./NNWidgets.types\";\nimport { Icons, getAvailableIcons, type IconName } from \"./icons\";\n\nexport { Icons, getAvailableIcons, type IconName };\n\nexport type {\n WidgetData,\n WidgetDataPayload,\n WidgetListItem,\n WidgetItemIcon,\n WidgetItemText,\n WidgetUpdateConfig,\n NNWidgetsModuleType,\n FlexLayoutConfig,\n};\n\n/**\n * NNWidgets - Native widget integration for React Native / Expo\n *\n * This module provides APIs to communicate between your React Native app\n * and native widgets (iOS WidgetKit & Android App Widgets).\n */\nexport const NNWidgets: NNWidgetsModuleType = {\n /**\n * Set shared data that widgets can read (legacy flat key-value format).\n * Data is stored in App Groups (iOS) or SharedPreferences (Android).\n *\n * @param data - Key-value pairs to share with widget\n * @returns Promise<boolean> - Success status\n *\n * @example\n * ```ts\n * await NNWidgets.setWidgetData({\n * userName: 'John',\n * points: 100,\n * isLoggedIn: true\n * });\n * ```\n */\n async setWidgetData(data: WidgetData): Promise<boolean> {\n try {\n return await NNWidgetsModule.setWidgetData(data);\n } catch (error) {\n console.error(\"[NNWidgets] Failed to set widget data:\", error);\n return false;\n }\n },\n\n /**\n * Get current shared widget data.\n *\n * @returns Promise<WidgetData> - Current shared data\n */\n async getWidgetData(): Promise<WidgetData> {\n try {\n return await NNWidgetsModule.getWidgetData();\n } catch (error) {\n console.error(\"[NNWidgets] Failed to get widget data:\", error);\n return {};\n }\n },\n\n /**\n * Update a specific widget with structured data.\n * Automatically serializes items to JSON, stores data with proper key prefixes,\n * and reloads the widget timeline.\n *\n * @param widgetName - The widget kind identifier (matches `name` in app.json widgets config)\n * @param data - Structured widget data payload\n * @returns Promise<boolean> - Success status\n *\n * @example\n * ```ts\n * // Update a list-type widget\n * await NNWidgets.updateWidget('SessionsWidget', {\n * items: [\n * {\n * icon: 'brainstorm',\n * title: { text: 'Morning Focus', color: '#1E1E2E', fontWeight: 'bold' },\n * description: '25 min session',\n * deepLink: 'myapp://session/123',\n * },\n * {\n * icon: { url: 'meditation', size: 28, radius: 14 },\n * title: 'Evening Wind Down',\n * description: { text: '15 min', color: '#888888' },\n * },\n * ],\n * });\n *\n * // Update a single-type widget\n * await NNWidgets.updateWidget('StatsWidget', {\n * title: 'Focus Time',\n * subtitle: 'This week',\n * value: 142,\n * });\n * ```\n */\n async updateWidget(\n widgetName: string,\n data: WidgetDataPayload,\n ): Promise<boolean> {\n try {\n const flatData: WidgetData = {};\n\n if (data.title !== undefined) {\n flatData[`${widgetName}_title`] = data.title;\n }\n if (data.subtitle !== undefined) {\n flatData[`${widgetName}_subtitle`] = data.subtitle;\n }\n if (data.value !== undefined) {\n flatData[`${widgetName}_value`] = data.value;\n }\n if (data.items !== undefined) {\n // Serialize items array to JSON string for native storage\n flatData[`${widgetName}_items`] = JSON.stringify(data.items);\n }\n if (data.layout !== undefined) {\n // Serialize layout config to JSON for flex-grid widgets\n flatData[`${widgetName}_layout`] = JSON.stringify(data.layout);\n }\n\n const success = await NNWidgetsModule.setWidgetData(flatData);\n if (success) {\n await NNWidgetsModule.reloadWidget(widgetName);\n }\n return success;\n } catch (error) {\n console.error(\n `[NNWidgets] Failed to update widget \"${widgetName}\":`,\n error,\n );\n return false;\n }\n },\n\n /**\n * Request widget to reload/update.\n * - iOS: Reloads widget timeline\n * - Android: Triggers widget update broadcast\n *\n * @param config - Optional configuration\n * @returns Promise<boolean> - Success status\n *\n * @example\n * ```ts\n * // Update all widgets\n * await NNWidgets.reloadWidget();\n *\n * // Update specific widget\n * await NNWidgets.reloadWidget({ widgetName: 'MyWidget' });\n * ```\n */\n async reloadWidget(config?: WidgetUpdateConfig): Promise<boolean> {\n try {\n return await NNWidgetsModule.reloadWidget(config?.widgetName || null);\n } catch (error) {\n console.error(\"[NNWidgets] Failed to reload widget:\", error);\n return false;\n }\n },\n\n /**\n * Check if widgets are supported on this device.\n *\n * @returns boolean - True if widgets are supported\n */\n isSupported(): boolean {\n try {\n return NNWidgetsModule.isSupported();\n } catch (error) {\n return false;\n }\n },\n};\n\nexport default NNWidgets;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nn-widgets",
3
- "version": "0.1.18",
3
+ "version": "0.1.20",
4
4
  "description": "Expo config plugin for adding native widgets (iOS WidgetKit & Android App Widgets)",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Icon mapping for nn-widgets
3
+ * Maps simple icon names to iOS SF Symbols and Android drawable names
4
+ *
5
+ * Usage in JS: Just use the simple name like "star", "heart", "bookmark"
6
+ * The plugin will automatically map to the correct platform-specific icon
7
+ */
8
+ export interface IconMapping {
9
+ name: string;
10
+ ios: string;
11
+ android: string;
12
+ }
13
+ export declare const ICON_MAPPINGS: IconMapping[];
14
+ export declare const ICON_MAP_BY_NAME: Record<string, IconMapping>;
15
+ export declare const ICON_MAP_IOS_TO_ANDROID: Record<string, string>;
16
+ /**
17
+ * Get the Android drawable name for a given icon name
18
+ */
19
+ export declare function getAndroidIconName(iconName: string): string;
20
+ /**
21
+ * Get the iOS SF Symbol name for a given icon name
22
+ */
23
+ export declare function getIOSIconName(iconName: string): string;
24
+ /**
25
+ * Get all available icon names
26
+ */
27
+ export declare function getAvailableIcons(): string[];
28
+ //# sourceMappingURL=icons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../src/icons.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,aAAa,EAAE,WAAW,EAyItC,CAAC;AAGF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAM,CAAC;AAChE,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,CAAC;AAOlE;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA2B3D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgBvD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C"}
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+ /**
3
+ * Icon mapping for nn-widgets
4
+ * Maps simple icon names to iOS SF Symbols and Android drawable names
5
+ *
6
+ * Usage in JS: Just use the simple name like "star", "heart", "bookmark"
7
+ * The plugin will automatically map to the correct platform-specific icon
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.ICON_MAP_IOS_TO_ANDROID = exports.ICON_MAP_BY_NAME = exports.ICON_MAPPINGS = void 0;
11
+ exports.getAndroidIconName = getAndroidIconName;
12
+ exports.getIOSIconName = getIOSIconName;
13
+ exports.getAvailableIcons = getAvailableIcons;
14
+ exports.ICON_MAPPINGS = [
15
+ // Basic icons
16
+ { name: "star", ios: "star.fill", android: "star" },
17
+ { name: "star-outline", ios: "star", android: "star_outline" },
18
+ { name: "heart", ios: "heart.fill", android: "heart" },
19
+ { name: "heart-outline", ios: "heart", android: "heart_outline" },
20
+ { name: "bookmark", ios: "bookmark.fill", android: "bookmark" },
21
+ { name: "clock", ios: "clock.fill", android: "clock" },
22
+ { name: "bell", ios: "bell.fill", android: "bell" },
23
+ { name: "home", ios: "house.fill", android: "home" },
24
+ { name: "gear", ios: "gearshape.fill", android: "gear" },
25
+ { name: "settings", ios: "gearshape.fill", android: "gear" },
26
+ { name: "bolt", ios: "bolt.fill", android: "bolt" },
27
+ // People & accounts
28
+ { name: "person", ios: "person.fill", android: "person" },
29
+ { name: "people", ios: "person.2.fill", android: "people" },
30
+ { name: "account", ios: "person.circle.fill", android: "account" },
31
+ {
32
+ name: "contacts",
33
+ ios: "person.crop.rectangle.stack.fill",
34
+ android: "contacts",
35
+ },
36
+ { name: "face", ios: "face.smiling.fill", android: "face" },
37
+ // Communication
38
+ { name: "mail", ios: "envelope.fill", android: "mail" },
39
+ { name: "message", ios: "message.fill", android: "message" },
40
+ { name: "chat", ios: "bubble.left.fill", android: "chat" },
41
+ { name: "forum", ios: "bubble.left.and.bubble.right.fill", android: "forum" },
42
+ { name: "phone", ios: "phone.fill", android: "phone" },
43
+ { name: "megaphone", ios: "megaphone.fill", android: "megaphone" },
44
+ // Navigation
45
+ { name: "chevron-right", ios: "chevron.right", android: "chevron_right" },
46
+ { name: "arrow-right", ios: "arrow.right", android: "arrow_right" },
47
+ { name: "menu", ios: "line.horizontal.3", android: "menu" },
48
+ { name: "more", ios: "ellipsis", android: "more" },
49
+ { name: "close", ios: "xmark", android: "close" },
50
+ { name: "search", ios: "magnifyingglass", android: "search" },
51
+ { name: "zoom", ios: "plus.magnifyingglass", android: "zoom" },
52
+ { name: "refresh", ios: "arrow.clockwise", android: "refresh" },
53
+ // Actions
54
+ { name: "add", ios: "plus", android: "add" },
55
+ { name: "add-circle", ios: "plus.circle.fill", android: "add_circle" },
56
+ { name: "remove-circle", ios: "minus.circle.fill", android: "remove_circle" },
57
+ { name: "edit", ios: "pencil", android: "edit" },
58
+ { name: "delete", ios: "trash.fill", android: "delete" },
59
+ { name: "share", ios: "square.and.arrow.up", android: "share" },
60
+ { name: "download", ios: "arrow.down.circle.fill", android: "download" },
61
+ { name: "upload", ios: "arrow.up.circle.fill", android: "upload" },
62
+ { name: "save", ios: "square.and.arrow.down.fill", android: "save" },
63
+ { name: "check", ios: "checkmark", android: "check" },
64
+ {
65
+ name: "check-circle",
66
+ ios: "checkmark.circle.fill",
67
+ android: "check_circle",
68
+ },
69
+ // Media
70
+ { name: "play", ios: "play.fill", android: "play" },
71
+ { name: "pause", ios: "pause.fill", android: "pause" },
72
+ { name: "camera", ios: "camera.fill", android: "camera" },
73
+ { name: "image", ios: "photo.fill", android: "image" },
74
+ { name: "video", ios: "video.fill", android: "video" },
75
+ { name: "music", ios: "music.note", android: "music" },
76
+ { name: "mic", ios: "mic.fill", android: "mic" },
77
+ { name: "volume", ios: "speaker.wave.3.fill", android: "volume" },
78
+ { name: "headphones", ios: "headphones", android: "headphones" },
79
+ { name: "fast-forward", ios: "forward.fill", android: "fast_forward" },
80
+ // Files & folders
81
+ { name: "folder", ios: "folder.fill", android: "folder" },
82
+ { name: "document", ios: "doc.fill", android: "document" },
83
+ { name: "book", ios: "book.fill", android: "book" },
84
+ // Business
85
+ { name: "briefcase", ios: "briefcase.fill", android: "briefcase" },
86
+ { name: "building", ios: "building.2.fill", android: "building" },
87
+ { name: "dollar", ios: "dollarsign.circle.fill", android: "dollar" },
88
+ { name: "money", ios: "banknote.fill", android: "money" },
89
+ { name: "card", ios: "creditcard.fill", android: "card" },
90
+ { name: "cart", ios: "cart.fill", android: "cart" },
91
+ { name: "chart", ios: "chart.bar.fill", android: "chart" },
92
+ { name: "analytics", ios: "chart.xyaxis.line", android: "analytics" },
93
+ { name: "trending-up", ios: "arrow.up.right", android: "trending_up" },
94
+ { name: "trending-down", ios: "arrow.down.right", android: "trending_down" },
95
+ // Tools & development
96
+ { name: "lightbulb", ios: "lightbulb.fill", android: "lightbulb" },
97
+ { name: "hammer", ios: "hammer.fill", android: "hammer" },
98
+ {
99
+ name: "code",
100
+ ios: "chevron.left.forwardslash.chevron.right",
101
+ android: "code",
102
+ },
103
+ { name: "bug", ios: "ladybug.fill", android: "bug" },
104
+ { name: "task", ios: "checklist", android: "task" },
105
+ { name: "grid", ios: "square.grid.2x2.fill", android: "grid" },
106
+ { name: "palette", ios: "paintpalette.fill", android: "palette" },
107
+ { name: "link", ios: "link", android: "link" },
108
+ { name: "barcode", ios: "barcode", android: "barcode" },
109
+ { name: "qrcode", ios: "qrcode", android: "qrcode" },
110
+ // Location
111
+ { name: "location", ios: "location.fill", android: "location" },
112
+ { name: "pin", ios: "mappin.fill", android: "pin" },
113
+ // Status
114
+ { name: "info", ios: "info.circle.fill", android: "info" },
115
+ { name: "warning", ios: "exclamationmark.triangle.fill", android: "warning" },
116
+ { name: "error", ios: "xmark.circle.fill", android: "error" },
117
+ { name: "block", ios: "nosign", android: "block" },
118
+ { name: "shield", ios: "shield.checkered", android: "shield" },
119
+ { name: "lock", ios: "lock.fill", android: "lock" },
120
+ { name: "unlock", ios: "lock.open.fill", android: "unlock" },
121
+ { name: "eye", ios: "eye.fill", android: "eye" },
122
+ { name: "eye-off", ios: "eye.slash.fill", android: "eye_off" },
123
+ { name: "flag", ios: "flag.fill", android: "flag" },
124
+ // Devices
125
+ { name: "desktop", ios: "desktopcomputer", android: "desktop" },
126
+ { name: "devices", ios: "macbook.and.iphone", android: "devices" },
127
+ // Cloud
128
+ { name: "cloud", ios: "cloud.fill", android: "cloud" },
129
+ {
130
+ name: "cloud-upload",
131
+ ios: "icloud.and.arrow.up.fill",
132
+ android: "cloud_upload",
133
+ },
134
+ {
135
+ name: "cloud-download",
136
+ ios: "icloud.and.arrow.down.fill",
137
+ android: "cloud_download",
138
+ },
139
+ ];
140
+ // Create lookup maps for quick access
141
+ exports.ICON_MAP_BY_NAME = {};
142
+ exports.ICON_MAP_IOS_TO_ANDROID = {};
143
+ exports.ICON_MAPPINGS.forEach((mapping) => {
144
+ exports.ICON_MAP_BY_NAME[mapping.name] = mapping;
145
+ exports.ICON_MAP_IOS_TO_ANDROID[mapping.ios] = `nn_icon_${mapping.android}`;
146
+ });
147
+ /**
148
+ * Get the Android drawable name for a given icon name
149
+ */
150
+ function getAndroidIconName(iconName) {
151
+ // Check if it's already an Android drawable name
152
+ if (iconName.startsWith("nn_icon_")) {
153
+ return iconName;
154
+ }
155
+ // Check direct mapping by simple name
156
+ const mapping = exports.ICON_MAP_BY_NAME[iconName];
157
+ if (mapping) {
158
+ return `nn_icon_${mapping.android}`;
159
+ }
160
+ // Check if it's an iOS SF Symbol
161
+ const androidName = exports.ICON_MAP_IOS_TO_ANDROID[iconName];
162
+ if (androidName) {
163
+ return androidName;
164
+ }
165
+ // Fallback: try to convert the name to Android format
166
+ // e.g., "star.fill" -> "nn_icon_star"
167
+ const simpleName = iconName
168
+ .replace(/\.fill$/, "")
169
+ .replace(/\./g, "_")
170
+ .replace(/-/g, "_")
171
+ .toLowerCase();
172
+ return `nn_icon_${simpleName}`;
173
+ }
174
+ /**
175
+ * Get the iOS SF Symbol name for a given icon name
176
+ */
177
+ function getIOSIconName(iconName) {
178
+ // Check if it looks like an SF Symbol (contains dots)
179
+ if (iconName.includes(".")) {
180
+ return iconName;
181
+ }
182
+ // Check if it's an Android drawable name
183
+ if (iconName.startsWith("nn_icon_")) {
184
+ const simpleName = iconName.replace("nn_icon_", "").replace(/_/g, "-");
185
+ const mapping = exports.ICON_MAP_BY_NAME[simpleName];
186
+ return mapping?.ios || iconName;
187
+ }
188
+ // Check direct mapping by simple name
189
+ const mapping = exports.ICON_MAP_BY_NAME[iconName];
190
+ return mapping?.ios || iconName;
191
+ }
192
+ /**
193
+ * Get all available icon names
194
+ */
195
+ function getAvailableIcons() {
196
+ return exports.ICON_MAPPINGS.map((m) => m.name);
197
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"withAndroidWidget.d.ts","sourceRoot":"","sources":["../src/withAndroidWidget.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAuB,MAAM,sBAAsB,CAAC;AAGzE,OAAO,KAAK,EACV,oBAAoB,EAGrB,MAAM,SAAS,CAAC;AAmgCjB,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,oBAAoB,CAyQhE,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"withAndroidWidget.d.ts","sourceRoot":"","sources":["../src/withAndroidWidget.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAuB,MAAM,sBAAsB,CAAC;AAGzE,OAAO,KAAK,EACV,oBAAoB,EAGrB,MAAM,SAAS,CAAC;AAknCjB,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,oBAAoB,CAwQhE,CAAC;AAEF,eAAe,iBAAiB,CAAC"}