git0 0.2.11 → 0.2.13

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 (243) hide show
  1. package/docs/assets/js/c3a618e1.965a31da.js +1 -1
  2. package/docs/functions/index.html +2 -2
  3. package/docs-config/src/functions/index.md +1 -1
  4. package/package.json +2 -1
  5. package/readme.md +18 -30
  6. package/src/fm.js +1130 -0
  7. package/src/git0.js +3 -4
  8. package/src/github-api.js +14 -15
  9. package/TypeScript-React-Starter/LICENSE +0 -21
  10. package/TypeScript-React-Starter/README-CRA.md +0 -1281
  11. package/TypeScript-React-Starter/README.md +0 -810
  12. package/TypeScript-React-Starter/package.json +0 -28
  13. package/TypeScript-React-Starter/public/favicon.ico +0 -0
  14. package/TypeScript-React-Starter/public/index.html +0 -31
  15. package/TypeScript-React-Starter/src/App.css +0 -24
  16. package/TypeScript-React-Starter/src/App.test.tsx +0 -8
  17. package/TypeScript-React-Starter/src/App.tsx +0 -23
  18. package/TypeScript-React-Starter/src/actions/index.tsx +0 -24
  19. package/TypeScript-React-Starter/src/components/Hello.css +0 -13
  20. package/TypeScript-React-Starter/src/components/Hello.test.tsx +0 -30
  21. package/TypeScript-React-Starter/src/components/Hello.tsx +0 -35
  22. package/TypeScript-React-Starter/src/constants/index.tsx +0 -6
  23. package/TypeScript-React-Starter/src/containers/Hello.tsx +0 -20
  24. package/TypeScript-React-Starter/src/index.css +0 -5
  25. package/TypeScript-React-Starter/src/index.tsx +0 -22
  26. package/TypeScript-React-Starter/src/logo.svg +0 -7
  27. package/TypeScript-React-Starter/src/reducers/index.tsx +0 -15
  28. package/TypeScript-React-Starter/src/types/index.tsx +0 -5
  29. package/TypeScript-React-Starter/tsconfig.json +0 -29
  30. package/TypeScript-React-Starter/tslint.json +0 -11
  31. package/TypeScript-React-Starter/yarn.lock +0 -4785
  32. package/svelte-nodegui/.all-contributorsrc +0 -60
  33. package/svelte-nodegui/.vscode/launch.json +0 -29
  34. package/svelte-nodegui/CHANGELOG.md +0 -153
  35. package/svelte-nodegui/LICENSE +0 -22
  36. package/svelte-nodegui/README.md +0 -151
  37. package/svelte-nodegui/demo/.editorconfig +0 -15
  38. package/svelte-nodegui/demo/.vscode/extensions.json +0 -3
  39. package/svelte-nodegui/demo/livereload.js +0 -29
  40. package/svelte-nodegui/demo/package-lock.json +0 -3514
  41. package/svelte-nodegui/demo/package.json +0 -35
  42. package/svelte-nodegui/demo/src/App.svelte +0 -29
  43. package/svelte-nodegui/demo/src/app.ts +0 -31
  44. package/svelte-nodegui/demo/tsconfig.json +0 -40
  45. package/svelte-nodegui/demo/webpack.config.js +0 -110
  46. package/svelte-nodegui/extras/assets/kitchen.png +0 -0
  47. package/svelte-nodegui/extras/assets/nodegui.png +0 -0
  48. package/svelte-nodegui/extras/assets/nodegui_white.png +0 -0
  49. package/svelte-nodegui/extras/assets/start_icon.png +0 -0
  50. package/svelte-nodegui/extras/legal/logo/thanks.md +0 -13
  51. package/svelte-nodegui/extras/legal/yode/LICENSE +0 -21
  52. package/svelte-nodegui/extras/legal/yoga/LICENSE +0 -0
  53. package/svelte-nodegui/extras/logo/nodegui-circle.png +0 -0
  54. package/svelte-nodegui/extras/logo/nodegui.png +0 -0
  55. package/svelte-nodegui/extras/logo/nodegui.svg +0 -4
  56. package/svelte-nodegui/nativescript-svelte-todo.gif +0 -0
  57. package/svelte-nodegui/package-lock.json +0 -1749
  58. package/svelte-nodegui/package.json +0 -44
  59. package/svelte-nodegui/repl-workers/bundler/commonjs.js +0 -58
  60. package/svelte-nodegui/repl-workers/bundler/index.js +0 -353
  61. package/svelte-nodegui/repl-workers/package-lock.json +0 -484
  62. package/svelte-nodegui/repl-workers/package.json +0 -21
  63. package/svelte-nodegui/repl-workers/rollup.config.js +0 -21
  64. package/svelte-nodegui/rollup.config.js +0 -81
  65. package/svelte-nodegui/scripts/create-pkg.js +0 -42
  66. package/svelte-nodegui/src/components/AsComponent.svelte +0 -16
  67. package/svelte-nodegui/src/components/SlotComponent.svelte +0 -4
  68. package/svelte-nodegui/src/components/Template.svelte +0 -10
  69. package/svelte-nodegui/src/components/Template.svelte.d.ts +0 -6
  70. package/svelte-nodegui/src/components/index.ts +0 -2
  71. package/svelte-nodegui/src/dom/index.ts +0 -132
  72. package/svelte-nodegui/src/dom/nativescript-vue-next/LICENCE +0 -21
  73. package/svelte-nodegui/src/dom/nativescript-vue-next/index.ts +0 -19
  74. package/svelte-nodegui/src/dom/nativescript-vue-next/runtime/index.ts +0 -21
  75. package/svelte-nodegui/src/dom/nativescript-vue-next/runtime/nodes.ts +0 -890
  76. package/svelte-nodegui/src/dom/nativescript-vue-next/runtime/registry.ts +0 -262
  77. package/svelte-nodegui/src/dom/nativescript-vue-next/runtime/runtimeHelpers.ts +0 -20
  78. package/svelte-nodegui/src/dom/react-nodegui/LICENSE +0 -21
  79. package/svelte-nodegui/src/dom/react-nodegui/src/components/AbstractComponents/RNAbstractButton.ts +0 -67
  80. package/svelte-nodegui/src/dom/react-nodegui/src/components/Action/RNAction.ts +0 -146
  81. package/svelte-nodegui/src/dom/react-nodegui/src/components/Action/index.ts +0 -37
  82. package/svelte-nodegui/src/dom/react-nodegui/src/components/AnimatedImage/RNAnimatedImage.ts +0 -76
  83. package/svelte-nodegui/src/dom/react-nodegui/src/components/AnimatedImage/index.ts +0 -45
  84. package/svelte-nodegui/src/dom/react-nodegui/src/components/BoxView/RNBoxView.ts +0 -99
  85. package/svelte-nodegui/src/dom/react-nodegui/src/components/BoxView/index.ts +0 -49
  86. package/svelte-nodegui/src/dom/react-nodegui/src/components/Button/RNButton.ts +0 -71
  87. package/svelte-nodegui/src/dom/react-nodegui/src/components/Button/index.ts +0 -49
  88. package/svelte-nodegui/src/dom/react-nodegui/src/components/CheckBox/RNCheckBox.ts +0 -71
  89. package/svelte-nodegui/src/dom/react-nodegui/src/components/CheckBox/index.ts +0 -50
  90. package/svelte-nodegui/src/dom/react-nodegui/src/components/ComboBox/RNComboBox.ts +0 -118
  91. package/svelte-nodegui/src/dom/react-nodegui/src/components/ComboBox/index.ts +0 -50
  92. package/svelte-nodegui/src/dom/react-nodegui/src/components/Dial/RNDial.ts +0 -69
  93. package/svelte-nodegui/src/dom/react-nodegui/src/components/Dial/index.ts +0 -41
  94. package/svelte-nodegui/src/dom/react-nodegui/src/components/GridView/GridColumn/RNGridColumn.ts +0 -95
  95. package/svelte-nodegui/src/dom/react-nodegui/src/components/GridView/GridColumn/index.ts +0 -49
  96. package/svelte-nodegui/src/dom/react-nodegui/src/components/GridView/GridRow/RNGridRow.ts +0 -141
  97. package/svelte-nodegui/src/dom/react-nodegui/src/components/GridView/GridRow/index.ts +0 -47
  98. package/svelte-nodegui/src/dom/react-nodegui/src/components/GridView/RNGridView.ts +0 -185
  99. package/svelte-nodegui/src/dom/react-nodegui/src/components/GridView/index.ts +0 -51
  100. package/svelte-nodegui/src/dom/react-nodegui/src/components/GridView/utils.ts +0 -59
  101. package/svelte-nodegui/src/dom/react-nodegui/src/components/Image/RNImage.ts +0 -135
  102. package/svelte-nodegui/src/dom/react-nodegui/src/components/Image/index.ts +0 -46
  103. package/svelte-nodegui/src/dom/react-nodegui/src/components/LineEdit/RNLineEdit.ts +0 -82
  104. package/svelte-nodegui/src/dom/react-nodegui/src/components/LineEdit/index.ts +0 -41
  105. package/svelte-nodegui/src/dom/react-nodegui/src/components/Menu/RNMenu.ts +0 -49
  106. package/svelte-nodegui/src/dom/react-nodegui/src/components/Menu/index.ts +0 -44
  107. package/svelte-nodegui/src/dom/react-nodegui/src/components/MenuBar/RNMenuBar.ts +0 -51
  108. package/svelte-nodegui/src/dom/react-nodegui/src/components/MenuBar/index.ts +0 -42
  109. package/svelte-nodegui/src/dom/react-nodegui/src/components/PlainTextEdit/RNPlainTextEdit.ts +0 -82
  110. package/svelte-nodegui/src/dom/react-nodegui/src/components/PlainTextEdit/index.ts +0 -44
  111. package/svelte-nodegui/src/dom/react-nodegui/src/components/ProgressBar/RNProgressBar.ts +0 -78
  112. package/svelte-nodegui/src/dom/react-nodegui/src/components/ProgressBar/index.ts +0 -43
  113. package/svelte-nodegui/src/dom/react-nodegui/src/components/RadioButton/RNRadioButton.ts +0 -50
  114. package/svelte-nodegui/src/dom/react-nodegui/src/components/RadioButton/index.ts +0 -43
  115. package/svelte-nodegui/src/dom/react-nodegui/src/components/ScrollArea/RNScrollArea.ts +0 -51
  116. package/svelte-nodegui/src/dom/react-nodegui/src/components/ScrollArea/index.ts +0 -44
  117. package/svelte-nodegui/src/dom/react-nodegui/src/components/Slider/RNSlider.ts +0 -97
  118. package/svelte-nodegui/src/dom/react-nodegui/src/components/Slider/index.ts +0 -46
  119. package/svelte-nodegui/src/dom/react-nodegui/src/components/SpinBox/RNSpinBox.ts +0 -88
  120. package/svelte-nodegui/src/dom/react-nodegui/src/components/SpinBox/index.ts +0 -49
  121. package/svelte-nodegui/src/dom/react-nodegui/src/components/Svg/RNSvg.ts +0 -67
  122. package/svelte-nodegui/src/dom/react-nodegui/src/components/Svg/index.ts +0 -43
  123. package/svelte-nodegui/src/dom/react-nodegui/src/components/SystemTrayIcon/RNSystemTrayIcon.ts +0 -141
  124. package/svelte-nodegui/src/dom/react-nodegui/src/components/SystemTrayIcon/index.ts +0 -43
  125. package/svelte-nodegui/src/dom/react-nodegui/src/components/Tab/RNTab.ts +0 -69
  126. package/svelte-nodegui/src/dom/react-nodegui/src/components/Tab/index.ts +0 -48
  127. package/svelte-nodegui/src/dom/react-nodegui/src/components/TabItem/RNTabItem.ts +0 -72
  128. package/svelte-nodegui/src/dom/react-nodegui/src/components/TabItem/index.ts +0 -40
  129. package/svelte-nodegui/src/dom/react-nodegui/src/components/Text/RNText.ts +0 -65
  130. package/svelte-nodegui/src/dom/react-nodegui/src/components/Text/index.ts +0 -49
  131. package/svelte-nodegui/src/dom/react-nodegui/src/components/View/RNView.ts +0 -306
  132. package/svelte-nodegui/src/dom/react-nodegui/src/components/View/index.ts +0 -44
  133. package/svelte-nodegui/src/dom/react-nodegui/src/components/Window/RNWindow.ts +0 -66
  134. package/svelte-nodegui/src/dom/react-nodegui/src/components/Window/index.ts +0 -50
  135. package/svelte-nodegui/src/dom/react-nodegui/src/components/config.ts +0 -95
  136. package/svelte-nodegui/src/dom/react-nodegui/src/index.ts +0 -52
  137. package/svelte-nodegui/src/dom/react-nodegui/src/reconciler/index.ts +0 -226
  138. package/svelte-nodegui/src/dom/react-nodegui/src/utils/decoupleFromReact.ts +0 -2
  139. package/svelte-nodegui/src/dom/react-nodegui/src/utils/helpers.ts +0 -14
  140. package/svelte-nodegui/src/dom/shared/Logger.ts +0 -16
  141. package/svelte-nodegui/src/dom/shared/index.ts +0 -1
  142. package/svelte-nodegui/src/dom/svelte/HeadElement.ts +0 -41
  143. package/svelte-nodegui/src/dom/svelte/RNObject.ts +0 -95
  144. package/svelte-nodegui/src/dom/svelte/StyleElement.ts +0 -92
  145. package/svelte-nodegui/src/dom/svelte/SvelteNodeGUIDocument.ts +0 -124
  146. package/svelte-nodegui/src/dom/svelte/TemplateElement.ts +0 -16
  147. package/svelte-nodegui/src/dom/svelte-elements.ts +0 -111
  148. package/svelte-nodegui/src/index.ts +0 -62
  149. package/svelte-nodegui/src/svelte-nodegui.ts +0 -159
  150. package/svelte-nodegui/src/transitions/bezier.ts +0 -112
  151. package/svelte-nodegui/src/transitions/index.ts +0 -227
  152. package/svelte-nodegui/tsconfig.json +0 -19
  153. package/svelte-nodegui/website/README.md +0 -33
  154. package/svelte-nodegui/website/blog/2019-05-30-welcome.md +0 -12
  155. package/svelte-nodegui/website/docs/api/classes/renderer.md +0 -49
  156. package/svelte-nodegui/website/docs/api/classes/rnaction.md +0 -608
  157. package/svelte-nodegui/website/docs/api/classes/rngridcolumn.md +0 -232
  158. package/svelte-nodegui/website/docs/api/classes/rngridrow.md +0 -247
  159. package/svelte-nodegui/website/docs/api/classes/rnmenu.md +0 -1337
  160. package/svelte-nodegui/website/docs/api/classes/rnmenubar.md +0 -1341
  161. package/svelte-nodegui/website/docs/api/globals.md +0 -832
  162. package/svelte-nodegui/website/docs/api/index.md +0 -0
  163. package/svelte-nodegui/website/docs/api/interfaces/_react_proxy_.reactproxycomponent.md +0 -38
  164. package/svelte-nodegui/website/docs/api/interfaces/abstractbuttonprops.md +0 -306
  165. package/svelte-nodegui/website/docs/api/interfaces/actionprops.md +0 -115
  166. package/svelte-nodegui/website/docs/api/interfaces/animatedimageprops.md +0 -297
  167. package/svelte-nodegui/website/docs/api/interfaces/boxviewprops.md +0 -245
  168. package/svelte-nodegui/website/docs/api/interfaces/buttonprops.md +0 -313
  169. package/svelte-nodegui/website/docs/api/interfaces/checkboxprops.md +0 -313
  170. package/svelte-nodegui/website/docs/api/interfaces/comboboxprops.md +0 -343
  171. package/svelte-nodegui/website/docs/api/interfaces/datawithoffset.md +0 -32
  172. package/svelte-nodegui/website/docs/api/interfaces/dialprops.md +0 -259
  173. package/svelte-nodegui/website/docs/api/interfaces/gridviewprops.md +0 -273
  174. package/svelte-nodegui/website/docs/api/interfaces/imageprops.md +0 -311
  175. package/svelte-nodegui/website/docs/api/interfaces/lineeditprops.md +0 -266
  176. package/svelte-nodegui/website/docs/api/interfaces/menubarprops.md +0 -245
  177. package/svelte-nodegui/website/docs/api/interfaces/menuprops.md +0 -245
  178. package/svelte-nodegui/website/docs/api/interfaces/plaintexteditprops.md +0 -259
  179. package/svelte-nodegui/website/docs/api/interfaces/progressbarprops.md +0 -266
  180. package/svelte-nodegui/website/docs/api/interfaces/radiobuttonprops.md +0 -282
  181. package/svelte-nodegui/website/docs/api/interfaces/scrollareaprops.md +0 -245
  182. package/svelte-nodegui/website/docs/api/interfaces/sliderprops.md +0 -329
  183. package/svelte-nodegui/website/docs/api/interfaces/spinboxprops.md +0 -273
  184. package/svelte-nodegui/website/docs/api/interfaces/systemtrayiconprops.md +0 -97
  185. package/svelte-nodegui/website/docs/api/interfaces/tabitemprops.md +0 -28
  186. package/svelte-nodegui/website/docs/api/interfaces/tabprops.md +0 -245
  187. package/svelte-nodegui/website/docs/api/interfaces/textprops.md +0 -277
  188. package/svelte-nodegui/website/docs/api/interfaces/viewprops.md +0 -261
  189. package/svelte-nodegui/website/docs/api/interfaces/windowprops.md +0 -245
  190. package/svelte-nodegui/website/docs/api/modules/_react_proxy_.md +0 -29
  191. package/svelte-nodegui/website/docs/doc1.md +0 -162
  192. package/svelte-nodegui/website/docs/guides/custom-nodegui-native-plugin.md +0 -6
  193. package/svelte-nodegui/website/docs/guides/debugging-in-vscode.md +0 -39
  194. package/svelte-nodegui/website/docs/guides/debugging.md +0 -59
  195. package/svelte-nodegui/website/docs/guides/getting-started.md +0 -141
  196. package/svelte-nodegui/website/docs/guides/handle-events.md +0 -188
  197. package/svelte-nodegui/website/docs/guides/images.md +0 -62
  198. package/svelte-nodegui/website/docs/guides/layout.md +0 -281
  199. package/svelte-nodegui/website/docs/guides/networking.md +0 -31
  200. package/svelte-nodegui/website/docs/guides/packaging.md +0 -32
  201. package/svelte-nodegui/website/docs/guides/scroll-view.md +0 -69
  202. package/svelte-nodegui/website/docs/guides/styling.md +0 -208
  203. package/svelte-nodegui/website/docs/guides/tutorial.md +0 -82
  204. package/svelte-nodegui/website/docs/guides/using-native-node-modules.md +0 -55
  205. package/svelte-nodegui/website/docs/mdx.md +0 -22
  206. package/svelte-nodegui/website/docs/scripts/fixdocs.js +0 -21
  207. package/svelte-nodegui/website/docusaurus.config.js +0 -131
  208. package/svelte-nodegui/website/package.json +0 -33
  209. package/svelte-nodegui/website/sidebars.js +0 -77
  210. package/svelte-nodegui/website/src/components/CodeExample.js +0 -42
  211. package/svelte-nodegui/website/src/components/CreateNativeApps.js +0 -46
  212. package/svelte-nodegui/website/src/components/Features.js +0 -62
  213. package/svelte-nodegui/website/src/components/Hero.js +0 -85
  214. package/svelte-nodegui/website/src/components/SplitView.js +0 -18
  215. package/svelte-nodegui/website/src/components/Talks.js +0 -68
  216. package/svelte-nodegui/website/src/components/Try.js +0 -83
  217. package/svelte-nodegui/website/src/components/common.js +0 -41
  218. package/svelte-nodegui/website/src/components/styles.css +0 -61
  219. package/svelte-nodegui/website/src/css/custom.css +0 -34
  220. package/svelte-nodegui/website/src/pages/index.js +0 -32
  221. package/svelte-nodegui/website/src/pages/styles.module.css +0 -35
  222. package/svelte-nodegui/website/static/CNAME +0 -1
  223. package/svelte-nodegui/website/static/img/box-layout-1.png +0 -0
  224. package/svelte-nodegui/website/static/img/box-layout-2.png +0 -0
  225. package/svelte-nodegui/website/static/img/code-sample.png +0 -0
  226. package/svelte-nodegui/website/static/img/demo.png +0 -0
  227. package/svelte-nodegui/website/static/img/favicon.ico +0 -0
  228. package/svelte-nodegui/website/static/img/flex-layout-1.png +0 -0
  229. package/svelte-nodegui/website/static/img/grid-layout-1.png +0 -0
  230. package/svelte-nodegui/website/static/img/logo-circle.png +0 -0
  231. package/svelte-nodegui/website/static/img/logo.png +0 -0
  232. package/svelte-nodegui/website/static/img/logo.svg +0 -5
  233. package/svelte-nodegui/website/static/img/logox200.png +0 -0
  234. package/svelte-nodegui/website/static/img/undraw_building_websites.svg +0 -1
  235. package/svelte-nodegui/website/static/img/undraw_code_review.svg +0 -1
  236. package/svelte-nodegui/website/static/img/undraw_docusaurus_mountain.svg +0 -170
  237. package/svelte-nodegui/website/static/img/undraw_docusaurus_react.svg +0 -169
  238. package/svelte-nodegui/website/static/img/undraw_docusaurus_tree.svg +0 -1
  239. package/svelte-nodegui/website/static/img/undraw_react.svg +0 -1
  240. package/svelte-nodegui/website/static/img/undraw_website_setup.svg +0 -1
  241. package/svelte-nodegui/website/static/img/undraw_windows.svg +0 -11
  242. package/svelte-nodegui/website/website/sidebars.js +0 -32
  243. package/svelte-nodegui/website/yarn.lock +0 -10533
@@ -1,306 +0,0 @@
1
- import {
2
- QWidget,
3
- WindowState,
4
- QCursor,
5
- CursorShape,
6
- NodeWidget,
7
- QIcon,
8
- FlexLayout,
9
- WidgetEventTypes,
10
- QWidgetSignals,
11
- } from "@nodegui/nodegui";
12
- import { NativeRawPointer } from "@nodegui/nodegui/dist/lib/core/Component";
13
- import { RNWidget, RNProps } from "../config";
14
-
15
- /**
16
- * The View component can be used to encapsulate other components and provide structure.
17
- * It functions similar to a div in the web world. It is based on
18
- * [NodeGui's QWidget](https://docs.nodegui.org/docs/api/QWidget).
19
- * ## Example
20
- * ```javascript
21
- *import React from "react";
22
- *import { Renderer, Button, Window, View } from "./index";
23
- *const App = () => {
24
- * return (
25
- * <Window>
26
- * <View>
27
- * <Button style={buttonStyle} text={"Hello"} />
28
- * <Button style={buttonStyle} text={"World"} />
29
- * </View>
30
- * </Window>
31
- * );
32
- *};
33
- *const buttonStyle = `
34
- * color: white;
35
- *`;
36
- *Renderer.render(<App />);
37
- * ```
38
- */
39
-
40
- export interface ViewProps<Signals extends {}> extends RNProps {
41
- /**
42
- * Shows or hides the widget and its children. [QWidget: show](https://docs.nodegui.org/docs/api/NodeWidget#widgetshow)
43
- */
44
- visible?: boolean;
45
- /**
46
- * Sets the property that holds the widget's style sheet. [QWidget: setStyleSheet](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetstylesheetstylesheet)
47
- */
48
- styleSheet?: string;
49
- /**
50
- * Sets the inline stylesheet property. [QWidget: setInlineStyle](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetinlinestylestyle)
51
- */
52
- style?: string;
53
- /**
54
- * Sets the screen position as well as size of the widget. [QWidget: setGeometry](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetgeometryx-y-width-height)
55
- */
56
- geometry?: Geometry;
57
- /**
58
- * Sets the object name (id) of the widget in Qt. Object name can be analogous to id of an element in the web world. Using the objectName of the widget one can reference it in the Qt's stylesheet much like what we do with id in the web world. [QWidget: setObjectName](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetobjectnameobjectname)
59
- */
60
- id?: string;
61
- /**
62
- * Sets the property that tells whether mouseTracking is enabled for the widget. [QWidget: setMouseTracking](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetmousetrackingismousetracked)
63
- */
64
- mouseTracking?: boolean;
65
- /**
66
- * Sets the property that tells whether the widget is enabled. In general an enabled widget handles keyboard and mouse events; a disabled widget does not. [QWidget: setEnabled](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetenabledenabled)
67
- */
68
- enabled?: boolean;
69
- /**
70
- * This property holds the level of opacity for the window. [QWidget: setWindowOpacity](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetwindowopacityopacity)
71
- */
72
- windowOpacity?: number;
73
- /**
74
- * Sets the window title property. [QWidget: setWindowTitle](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetwindowtitletitle)
75
- */
76
- windowTitle?: string;
77
- /**
78
- * Sets the window state. [QWidget: setWindowState](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetwindowstatestate)
79
- */
80
- windowState?: WindowState;
81
- /**
82
- * Sets the window mouse cursor. [QWidget: setCursor](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetcursorcursor)
83
- */
84
- cursor?: CursorShape | QCursor;
85
- /**
86
- * Sets the window icon. [QWidget: setWindowIcon](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetwindowiconicon)
87
- */
88
- windowIcon?: QIcon;
89
- /**
90
- * Sets the minimum size of the widget. [QWidget: setMinimumSize](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetminimumsizewidth-height)
91
- */
92
- minSize?: Size;
93
- /**
94
- * Sets the maximum size of the widget. [QWidget: setMaximumSize](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetmaximumsizewidth-height)
95
- */
96
- maxSize?: Size;
97
- /**
98
- * Sets both the minimum and maximum sizes of the widget. [QWidget: setFixedSize](https://docs.nodegui.org/docs/api/NodeWidget#widgetsetfixedsizewidth-height)
99
- */
100
- size?: ViewSize;
101
- /**
102
- * Sets the screen position of the widget. [QWidget: move](https://docs.nodegui.org/docs/api/NodeWidget#widgetmovex-y)
103
- */
104
- pos?: Position;
105
- /**
106
- * Prop to set the event listener map. See [Handlong Events](/docs/guides/handle-events)
107
- */
108
- on?: Partial<WidgetEventListeners | Signals>;
109
- /**
110
- * Prop to set the ref. The ref will return the underlying nodegui widget.
111
- */
112
- ref?: any;
113
- /**
114
- * Prop to set the Widget Attributes. example:
115
- * `<View attributes={{[WidgetAttributes.WA_Disabled]: true}} />`
116
- */
117
- attributes?: WidgetAttributesMap;
118
-
119
- /**
120
- * Prop to set the Widget flags. example:
121
- * `<View windowFlags={{[WindowType.SplashScreen]: true}} />`
122
- */
123
- windowFlags?: WindowFlagsMap;
124
- }
125
-
126
- /**
127
- * @ignore
128
- */
129
- export function setViewProps<Signals extends {}>(
130
- widget: NodeWidget<any>,
131
- newProps: ViewProps<Signals>,
132
- oldProps: ViewProps<Signals>
133
- ) {
134
- const setter: ViewProps<Signals> = {
135
- set visible(shouldShow: boolean) {
136
- shouldShow ? widget.show() : widget.hide();
137
- },
138
- set styleSheet(styleSheet: string) {
139
- widget.setStyleSheet(styleSheet);
140
- },
141
- set style(inlineStyle: string) {
142
- if (newProps.styleSheet) {
143
- console.warn("Both styleSheet and inlineStyle can't be used together");
144
- }
145
- widget.setInlineStyle(inlineStyle);
146
- },
147
- set geometry(geometry: Geometry) {
148
- widget.setGeometry(
149
- geometry.x,
150
- geometry.y,
151
- geometry.width,
152
- geometry.height
153
- );
154
- },
155
- set id(id: string) {
156
- widget.setObjectName(id);
157
- },
158
- set mouseTracking(isMouseTracked: boolean) {
159
- widget.setMouseTracking(isMouseTracked);
160
- },
161
- set enabled(enable: boolean) {
162
- widget.setEnabled(enable);
163
- },
164
- set windowOpacity(opacity: number) {
165
- widget.setWindowOpacity(opacity);
166
- },
167
- set windowTitle(title: string) {
168
- widget.setWindowTitle(title);
169
- },
170
- set windowState(state: WindowState) {
171
- widget.setWindowState(state);
172
- },
173
- set cursor(cursor: CursorShape | QCursor) {
174
- widget.setCursor(cursor);
175
- },
176
- set windowIcon(icon: QIcon) {
177
- widget.setWindowIcon(icon);
178
- },
179
- set minSize(size: Size) {
180
- widget.setMinimumSize(size.width, size.height);
181
- },
182
- set maxSize(size: Size) {
183
- widget.setMaximumSize(size.width, size.height);
184
- },
185
- set size(size: ViewSize) {
186
- if (size.fixed) {
187
- widget.setFixedSize(size.width, size.height);
188
- } else {
189
- const minSize = newProps.minSize || { width: 0, height: 0 };
190
- const maxSize = newProps.maxSize || {
191
- width: 16777215,
192
- height: 16777215,
193
- };
194
- widget.setMinimumSize(minSize.width, minSize.height);
195
- widget.setMaximumSize(maxSize.width, maxSize.height);
196
- widget.resize(size.width, size.height);
197
- }
198
- },
199
- set pos(position: Position) {
200
- widget.move(position.x, position.y);
201
- },
202
- set on(listenerMap: Partial<WidgetEventListeners | Signals>) {
203
- const listenerMapLatest: any = Object.assign({}, listenerMap);
204
- const oldListenerMap = Object.assign({}, oldProps.on);
205
- Object.entries(oldListenerMap).forEach(([eventType, oldEvtListener]) => {
206
- const newEvtListener = listenerMapLatest[eventType];
207
- if (oldEvtListener !== newEvtListener) {
208
- widget.removeEventListener(eventType as any, oldEvtListener);
209
- } else {
210
- delete listenerMapLatest[eventType];
211
- }
212
- });
213
-
214
- Object.entries(listenerMapLatest).forEach(
215
- ([eventType, newEvtListener]) => {
216
- widget.addEventListener(eventType as any, newEvtListener);
217
- }
218
- );
219
- },
220
- set attributes(attributesMap: WidgetAttributesMap) {
221
- Object.entries(attributesMap).forEach(([attribute, value]) => {
222
- widget.setAttribute(Number(attribute), value);
223
- });
224
- },
225
- set windowFlags(windowFlagsMap: WindowFlagsMap) {
226
- Object.entries(windowFlagsMap).forEach(([flag, value]) => {
227
- widget.setWindowFlag(Number(flag), value);
228
- });
229
- },
230
- };
231
- Object.assign(setter, newProps);
232
- }
233
-
234
- /**
235
- * @ignore
236
- */
237
- export class RNView extends QWidget implements RNWidget {
238
- setProps(
239
- newProps: ViewProps<QWidgetSignals>,
240
- oldProps: ViewProps<QWidgetSignals>
241
- ): void {
242
- setViewProps(this, newProps, oldProps);
243
- }
244
- insertBefore(child: NodeWidget<any>, beforeChild: NodeWidget<any>): void {
245
- if (!this.layout) {
246
- console.warn("parent has no layout to insert child before another child");
247
- return;
248
- }
249
- (this.layout as FlexLayout).insertChildBefore(child, beforeChild);
250
- }
251
- static tagName = "view";
252
- appendInitialChild(child: NodeWidget<any>): void {
253
- this.appendChild(child);
254
- }
255
- appendChild(child: NodeWidget<any>): void {
256
- if (!child) {
257
- return;
258
- }
259
- if (!this.layout) {
260
- const flexLayout = new FlexLayout();
261
- flexLayout.setFlexNode(this.getFlexNode());
262
- this.setLayout(flexLayout);
263
- this.layout = flexLayout;
264
- }
265
- this.layout.addWidget(child);
266
- }
267
- removeChild(child: NodeWidget<any>) {
268
- if (!this.layout) {
269
- console.warn("parent has no layout to remove child from");
270
- return;
271
- }
272
- this.layout.removeWidget(child);
273
- child.close();
274
- }
275
- }
276
-
277
- type Geometry = {
278
- x: number;
279
- y: number;
280
- width: number;
281
- height: number;
282
- };
283
-
284
- type Size = {
285
- width: number;
286
- height: number;
287
- };
288
- type ViewSize = Size & {
289
- fixed?: boolean;
290
- };
291
- type Position = {
292
- x: number;
293
- y: number;
294
- };
295
-
296
- type WidgetAttributesMap = {
297
- [key: number]: boolean;
298
- };
299
-
300
- type WindowFlagsMap = {
301
- [key: number]: boolean;
302
- };
303
-
304
- export type WidgetEventListeners = {
305
- [key in WidgetEventTypes]: (event?: NativeRawPointer<"QEvent">) => void;
306
- };
@@ -1,44 +0,0 @@
1
- import { registerComponent, ComponentConfig } from "../config";
2
- import type { Fiber } from "../../utils/decoupleFromReact";
3
- import { RNView, ViewProps } from "./RNView";
4
- import { AppContainer } from "../../reconciler";
5
- import { QWidgetSignals } from "@nodegui/nodegui";
6
- class ViewConfig extends ComponentConfig {
7
- tagName = RNView.tagName;
8
- shouldSetTextContent() {
9
- return false;
10
- }
11
- createInstance(
12
- newProps: ViewProps<QWidgetSignals>,
13
- rootInstance: AppContainer,
14
- context: any,
15
- workInProgress: Fiber
16
- ): RNView {
17
- const widget = new RNView();
18
- widget.setProps(newProps, {});
19
- return widget;
20
- }
21
- commitMount(
22
- instance: RNView,
23
- newProps: ViewProps<QWidgetSignals>,
24
- internalInstanceHandle: any
25
- ): void {
26
- if (newProps.visible !== false) {
27
- instance.show();
28
- }
29
- return;
30
- }
31
- commitUpdate(
32
- instance: RNView,
33
- updatePayload: any,
34
- oldProps: ViewProps<QWidgetSignals>,
35
- newProps: ViewProps<QWidgetSignals>,
36
- finishedWork: Fiber
37
- ): void {
38
- instance.setProps(newProps, oldProps);
39
- }
40
- }
41
-
42
- export const View = registerComponent<ViewProps<QWidgetSignals>>(
43
- new ViewConfig()
44
- );
@@ -1,66 +0,0 @@
1
- import {
2
- QMainWindow,
3
- NodeWidget,
4
- QMainWindowSignals,
5
- QMenuBar,
6
- } from "@nodegui/nodegui";
7
- import { setViewProps, ViewProps } from "../View/RNView";
8
- import { RNWidget } from "../config";
9
-
10
- export interface WindowProps extends ViewProps<QMainWindowSignals> {
11
- menuBar?: QMenuBar;
12
- }
13
-
14
- const setWindowProps = (
15
- window: RNWindow,
16
- newProps: WindowProps,
17
- oldProps: WindowProps
18
- ) => {
19
- const setter: WindowProps = {
20
- set menuBar(menubar: QMenuBar) {
21
- window.setMenuBar(menubar);
22
- console.log("menubar was set");
23
- },
24
- };
25
- Object.assign(setter, newProps);
26
- setViewProps(window, newProps, oldProps);
27
- };
28
-
29
- /**
30
- * @ignore
31
- */
32
- export class RNWindow extends QMainWindow implements RNWidget {
33
- setProps(newProps: WindowProps, oldProps: WindowProps): void {
34
- setWindowProps(this, newProps, oldProps);
35
- }
36
- removeChild(child: NodeWidget<any>) {
37
- const removedChild = this.takeCentralWidget();
38
- if (removedChild) {
39
- removedChild.close();
40
- }
41
- child.close();
42
- }
43
- appendInitialChild(child: NodeWidget<any> | QMenuBar): void {
44
- if (child instanceof QMenuBar) {
45
- if (!this.menuBar()) {
46
- this.setMenuBar(child);
47
- } else {
48
- console.warn("MainWindow can't have more than one menubar.");
49
- }
50
- return;
51
- }
52
-
53
- if (!this.centralWidget) {
54
- this.setCentralWidget(child);
55
- } else {
56
- console.warn("MainWindow can't have more than one child node");
57
- }
58
- }
59
- appendChild(child: NodeWidget<any>): void {
60
- this.appendInitialChild(child);
61
- }
62
- insertBefore(child: NodeWidget<any>, beforeChild: NodeWidget<any>): void {
63
- this.appendInitialChild(child);
64
- }
65
- static tagName = "mainwindow";
66
- }
@@ -1,50 +0,0 @@
1
- import { registerComponent, ComponentConfig } from "../config";
2
- import type { Fiber } from "../../utils/decoupleFromReact";
3
- import { WindowProps, RNWindow } from "./RNWindow";
4
- import { AppContainer } from "../../reconciler";
5
-
6
- class WindowConfig extends ComponentConfig {
7
- tagName = RNWindow.tagName;
8
- shouldSetTextContent(nextProps: WindowProps): boolean {
9
- return false;
10
- }
11
- createInstance(
12
- newProps: WindowProps,
13
- rootInstance: AppContainer,
14
- context: any,
15
- workInProgress: Fiber
16
- ): RNWindow {
17
- const window = new RNWindow();
18
- window.setProps(newProps, {});
19
- return window;
20
- }
21
- finalizeInitialChildren(
22
- instance: RNWindow,
23
- newProps: WindowProps,
24
- rootContainerInstance: AppContainer,
25
- context: any
26
- ): boolean {
27
- return true;
28
- }
29
- commitMount(
30
- instance: RNWindow,
31
- newProps: WindowProps,
32
- internalInstanceHandle: any
33
- ): void {
34
- if (newProps.visible !== false) {
35
- instance.show();
36
- }
37
- return;
38
- }
39
- commitUpdate(
40
- instance: RNWindow,
41
- updatePayload: any,
42
- oldProps: WindowProps,
43
- newProps: WindowProps,
44
- finishedWork: Fiber
45
- ): void {
46
- instance.setProps(newProps, oldProps);
47
- }
48
- }
49
-
50
- export const Window = registerComponent<WindowProps>(new WindowConfig());
@@ -1,95 +0,0 @@
1
- import { NodeWidget, Component } from "@nodegui/nodegui";
2
- import type { Fiber } from "../utils/decoupleFromReact";
3
- import { AppContainer } from "../reconciler";
4
-
5
- type UpdatePayload = any;
6
-
7
- export interface RNProps {}
8
-
9
- export abstract class RNComponent {
10
- static tagName: string;
11
- abstract setProps(newProps: RNProps, oldProps: RNProps): void;
12
- abstract appendInitialChild(child: Component): void;
13
- abstract appendChild(child: Component): void;
14
- abstract insertBefore(child: Component, beforeChild: Component): void;
15
- abstract removeChild(child: Component): void;
16
- }
17
- export abstract class RNWidget extends NodeWidget<any> implements RNComponent {
18
- static tagName: string;
19
- abstract setProps(newProps: RNProps, oldProps: RNProps): void;
20
- abstract appendInitialChild(child: NodeWidget<any>): void;
21
- abstract appendChild(child: NodeWidget<any>): void;
22
- abstract insertBefore(
23
- child: NodeWidget<any>,
24
- beforeChild: NodeWidget<any>
25
- ): void;
26
- abstract removeChild(child: NodeWidget<any>): void;
27
- }
28
- export abstract class ComponentConfig {
29
- abstract tagName: string;
30
- getContext(parentContext: any, rootInstance: AppContainer) {
31
- return {};
32
- }
33
- abstract shouldSetTextContent(nextProps: RNProps): boolean;
34
- abstract createInstance(
35
- newProps: RNProps,
36
- rootInstance?: AppContainer,
37
- context?: any,
38
- workInProgress?: Fiber
39
- ): RNComponent;
40
- finalizeInitialChildren(
41
- instance: RNComponent,
42
- newProps: RNProps,
43
- rootContainerInstance: AppContainer,
44
- context: any
45
- ) {
46
- return false;
47
- }
48
- commitMount(
49
- instance: RNComponent,
50
- newProps: RNProps,
51
- internalInstanceHandle: any
52
- ) {
53
- return;
54
- }
55
- // Update methods:
56
- prepareUpdate(
57
- instance: RNComponent,
58
- oldProps: RNProps,
59
- newProps: RNProps,
60
- rootContainerInstance: AppContainer,
61
- hostContext: any
62
- ): UpdatePayload {
63
- return true;
64
- }
65
- abstract commitUpdate(
66
- instance: RNComponent,
67
- updatePayload: any,
68
- oldProps: RNProps,
69
- newProps: RNProps,
70
- finishedWork: Fiber
71
- ): void;
72
- }
73
-
74
- // type ReactNodeGuiTag<P> = string | React.ComponentType<P>;
75
- type ReactNodeGuiTag<P> = string;
76
-
77
- const components = new Map<string, ComponentConfig>();
78
-
79
- export const getComponentByTagName = (tagName: string): ComponentConfig => {
80
- const config = components.get(tagName);
81
- if (!config) {
82
- throw `Unknown component ${tagName}`;
83
- }
84
- return config;
85
- };
86
-
87
- export function registerComponent<Props>(
88
- config: ComponentConfig
89
- ): ReactNodeGuiTag<Props> {
90
- if (components.has(config.tagName)) {
91
- throw `A component with tagName: ${config.tagName} already exists. This base component will be ignored`;
92
- }
93
- components.set(config.tagName, config);
94
- return config.tagName;
95
- }
@@ -1,52 +0,0 @@
1
- export { Action } from "./components/Action";
2
- export { BoxView } from "./components/BoxView";
3
- export { GridView } from "./components/GridView";
4
- export { GridRow } from "./components/GridView/GridRow";
5
- export { GridColumn } from "./components/GridView/GridColumn";
6
- export { Slider } from "./components/Slider";
7
- export { Svg } from "./components/Svg";
8
- export { View } from "./components/View";
9
- export { Window } from "./components/Window";
10
- export { Text } from "./components/Text";
11
- export { Image } from "./components/Image";
12
- export { AnimatedImage } from "./components/AnimatedImage";
13
- export { Button } from "./components/Button";
14
- export { CheckBox } from "./components/CheckBox";
15
- export { LineEdit } from "./components/LineEdit";
16
- export { Menu } from "./components/Menu";
17
- export { MenuBar } from "./components/MenuBar";
18
- export { PlainTextEdit } from "./components/PlainTextEdit";
19
- export { ProgressBar } from "./components/ProgressBar";
20
- export { RadioButton } from "./components/RadioButton";
21
- export { Dial } from "./components/Dial";
22
- export { SpinBox } from "./components/SpinBox";
23
- export { ScrollArea } from "./components/ScrollArea";
24
- export { ComboBox } from "./components/ComboBox";
25
- export { SystemTrayIcon } from "./components/SystemTrayIcon";
26
- export { Tabs } from "./components/Tab";
27
- export { TabItem } from "./components/TabItem";
28
-
29
- export { ImageProps, RNImage } from "./components/Image/RNImage";
30
- export { AnimatedImageProps, RNAnimatedImage } from "./components/AnimatedImage/RNAnimatedImage";
31
- export { ViewProps, RNView } from "./components/View/RNView";
32
- export { CheckBoxProps, RNCheckBox } from "./components/CheckBox/RNCheckBox";
33
- export { TextProps, RNText } from "./components/Text/RNText";
34
- export { DialProps, RNDial } from "./components/Dial/RNDial";
35
- export { LineEditProps, RNLineEdit } from "./components/LineEdit/RNLineEdit";
36
- export { WindowProps, RNWindow } from "./components/Window/RNWindow";
37
- export { ProgressBarProps, RNProgressBar } from "./components/ProgressBar/RNProgressBar";
38
- export { ComboBoxProps, RNComboBox } from "./components/ComboBox/RNComboBox";
39
- export { ButtonProps, RNButton } from "./components/Button/RNButton";
40
- export { SpinBoxProps, RNSpinBox } from "./components/SpinBox/RNSpinBox";
41
- export { RadioButtonProps, RNRadioButton } from "./components/RadioButton/RNRadioButton";
42
- export { TabProps, RNTab } from "./components/Tab/RNTab";
43
- export { MenuProps, RNMenu } from "./components/Menu/RNMenu";
44
- export { MenuBarProps, RNMenuBar } from "./components/MenuBar/RNMenuBar";
45
- export { PlainTextEditProps, RNPlainTextEdit } from "./components/PlainTextEdit/RNPlainTextEdit";
46
- export { SliderProps, RNSlider } from "./components/Slider/RNSlider";
47
- export { SvgProps, RNSvg } from "./components/Svg/RNSvg";
48
- export { SystemTrayIconProps, RNSystemTrayIcon } from "./components/SystemTrayIcon/RNSystemTrayIcon";
49
- export { ActionProps, RNAction } from "./components/Action/RNAction";
50
- export { BoxViewProps, RNBoxView } from "./components/BoxView/RNBoxView";
51
- export { GridViewProps, RNGridView } from "./components/GridView/RNGridView";
52
- export { ScrollAreaProps, RNScrollArea } from "./components/ScrollArea/RNScrollArea";