solid-ui 2.4.14-alpha → 2.4.14-bbf45639-aade069c

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 (257) hide show
  1. package/LICENSE.md +0 -0
  2. package/README.md +0 -0
  3. package/lib/acl/access-controller.d.ts +0 -0
  4. package/lib/acl/access-controller.d.ts.map +0 -0
  5. package/lib/acl/access-controller.js +441 -334
  6. package/lib/acl/access-controller.js.map +1 -1
  7. package/lib/acl/access-groups.d.ts +1 -2
  8. package/lib/acl/access-groups.d.ts.map +1 -1
  9. package/lib/acl/access-groups.js +495 -347
  10. package/lib/acl/access-groups.js.map +1 -1
  11. package/lib/acl/acl-control.d.ts +0 -0
  12. package/lib/acl/acl-control.d.ts.map +0 -0
  13. package/lib/acl/acl-control.js +198 -168
  14. package/lib/acl/acl-control.js.map +1 -1
  15. package/lib/acl/acl.d.ts +1 -2
  16. package/lib/acl/acl.d.ts.map +1 -1
  17. package/lib/acl/acl.js +463 -444
  18. package/lib/acl/acl.js.map +1 -1
  19. package/lib/acl/add-agent-buttons.d.ts +0 -0
  20. package/lib/acl/add-agent-buttons.d.ts.map +0 -0
  21. package/lib/acl/add-agent-buttons.js +515 -318
  22. package/lib/acl/add-agent-buttons.js.map +1 -1
  23. package/lib/acl/index.d.ts +0 -0
  24. package/lib/acl/index.d.ts.map +0 -0
  25. package/lib/acl/index.js +35 -27
  26. package/lib/acl/index.js.map +1 -1
  27. package/lib/acl/styles.d.ts +0 -0
  28. package/lib/acl/styles.d.ts.map +0 -0
  29. package/lib/acl/styles.js +90 -84
  30. package/lib/acl/styles.js.map +1 -1
  31. package/lib/acl/types.d.ts +0 -0
  32. package/lib/acl/types.d.ts.map +0 -0
  33. package/lib/acl/types.js +4 -5
  34. package/lib/acl/types.js.map +1 -1
  35. package/lib/authn/authSession.d.ts +0 -0
  36. package/lib/authn/authSession.d.ts.map +0 -0
  37. package/lib/authn/authSession.js +21 -14
  38. package/lib/authn/authSession.js.map +1 -1
  39. package/lib/authn/authn.d.ts +0 -0
  40. package/lib/authn/authn.d.ts.map +0 -0
  41. package/lib/authn/authn.js +1935 -1391
  42. package/lib/authn/authn.js.map +1 -1
  43. package/lib/authn/config-default.js +0 -0
  44. package/lib/authn/config-default.js.map +0 -0
  45. package/lib/authn/index.d.ts +0 -0
  46. package/lib/authn/index.d.ts.map +0 -0
  47. package/lib/authn/index.js +37 -26
  48. package/lib/authn/index.js.map +1 -1
  49. package/lib/authn/signup.js +0 -0
  50. package/lib/authn/signup.js.map +0 -0
  51. package/lib/authn/types.d.ts +0 -0
  52. package/lib/authn/types.d.ts.map +0 -0
  53. package/lib/authn/types.js +4 -1
  54. package/lib/authn/types.js.map +1 -1
  55. package/lib/chat/bookmarks.js +0 -0
  56. package/lib/chat/bookmarks.js.map +0 -0
  57. package/lib/chat/dateFolder.js +0 -0
  58. package/lib/chat/dateFolder.js.map +0 -0
  59. package/lib/chat/infinite.js +0 -0
  60. package/lib/chat/infinite.js.map +0 -0
  61. package/lib/chat/message.js +0 -0
  62. package/lib/chat/message.js.map +0 -0
  63. package/lib/chat/messageTools.js +0 -0
  64. package/lib/chat/messageTools.js.map +0 -0
  65. package/lib/chat/thread.js +0 -0
  66. package/lib/chat/thread.js.map +0 -0
  67. package/lib/create/create.d.ts +0 -0
  68. package/lib/create/create.d.ts.map +0 -0
  69. package/lib/create/create.js +214 -209
  70. package/lib/create/create.js.map +1 -1
  71. package/lib/create/index.d.ts +0 -0
  72. package/lib/create/index.d.ts.map +0 -0
  73. package/lib/create/index.js +10 -4
  74. package/lib/create/index.js.map +1 -1
  75. package/lib/create/types.d.ts +0 -0
  76. package/lib/create/types.d.ts.map +0 -0
  77. package/lib/create/types.js +4 -1
  78. package/lib/create/types.js.map +1 -1
  79. package/lib/debug.d.ts +0 -0
  80. package/lib/debug.d.ts.map +0 -0
  81. package/lib/debug.js +28 -30
  82. package/lib/debug.js.map +1 -1
  83. package/lib/folders.js +0 -0
  84. package/lib/folders.js.map +0 -0
  85. package/lib/footer/index.d.ts +0 -0
  86. package/lib/footer/index.d.ts.map +0 -0
  87. package/lib/footer/index.js +126 -109
  88. package/lib/footer/index.js.map +1 -1
  89. package/lib/footer/styleMap.d.ts +0 -0
  90. package/lib/footer/styleMap.d.ts.map +0 -0
  91. package/lib/footer/styleMap.js +11 -7
  92. package/lib/footer/styleMap.js.map +1 -1
  93. package/lib/header/empty-profile.d.ts +0 -0
  94. package/lib/header/empty-profile.d.ts.map +0 -0
  95. package/lib/header/empty-profile.js +6 -2
  96. package/lib/header/empty-profile.js.map +1 -1
  97. package/lib/header/index.d.ts +0 -0
  98. package/lib/header/index.d.ts.map +0 -0
  99. package/lib/header/index.js +361 -285
  100. package/lib/header/index.js.map +1 -1
  101. package/lib/header/styleMap.d.ts +0 -0
  102. package/lib/header/styleMap.d.ts.map +0 -0
  103. package/lib/header/styleMap.js +132 -116
  104. package/lib/header/styleMap.js.map +1 -1
  105. package/lib/iconBase.d.ts +0 -0
  106. package/lib/iconBase.d.ts.map +0 -0
  107. package/lib/iconBase.js +30 -23
  108. package/lib/iconBase.js.map +1 -1
  109. package/lib/icons/solid_logo.d.ts +0 -0
  110. package/lib/icons/solid_logo.d.ts.map +0 -0
  111. package/lib/icons/solid_logo.js +0 -0
  112. package/lib/icons/solid_logo.js.map +1 -1
  113. package/lib/index.d.ts +1 -1
  114. package/lib/index.d.ts.map +1 -1
  115. package/lib/index.js +207 -103
  116. package/lib/index.js.map +1 -1
  117. package/lib/jss/index.d.ts +0 -0
  118. package/lib/jss/index.d.ts.map +0 -0
  119. package/lib/jss/index.js +30 -21
  120. package/lib/jss/index.js.map +1 -1
  121. package/lib/log.d.ts +0 -0
  122. package/lib/log.d.ts.map +0 -0
  123. package/lib/log.js +131 -83
  124. package/lib/log.js.map +1 -1
  125. package/lib/logic.d.ts +2 -2
  126. package/lib/logic.d.ts.map +1 -1
  127. package/lib/logic.js +73 -82
  128. package/lib/logic.js.map +1 -1
  129. package/lib/matrix/index.d.ts +0 -0
  130. package/lib/matrix/index.d.ts.map +0 -0
  131. package/lib/matrix/index.js +10 -4
  132. package/lib/matrix/index.js.map +1 -1
  133. package/lib/matrix/matrix.d.ts +0 -0
  134. package/lib/matrix/matrix.d.ts.map +0 -0
  135. package/lib/matrix/matrix.js +237 -210
  136. package/lib/matrix/matrix.js.map +1 -1
  137. package/lib/matrix/types.d.ts +0 -0
  138. package/lib/matrix/types.d.ts.map +0 -0
  139. package/lib/matrix/types.js +4 -1
  140. package/lib/matrix/types.js.map +1 -1
  141. package/lib/media/index.d.ts +0 -0
  142. package/lib/media/index.d.ts.map +0 -0
  143. package/lib/media/index.js +11 -5
  144. package/lib/media/index.js.map +1 -1
  145. package/lib/media/media-capture.d.ts +0 -0
  146. package/lib/media/media-capture.d.ts.map +0 -0
  147. package/lib/media/media-capture.js +181 -187
  148. package/lib/media/media-capture.js.map +1 -1
  149. package/lib/messageArea.js +0 -0
  150. package/lib/messageArea.js.map +0 -0
  151. package/lib/noun_Camera_1618446_000000.js +0 -0
  152. package/lib/noun_Camera_1618446_000000.js.map +0 -0
  153. package/lib/ns.js +0 -0
  154. package/lib/ns.js.map +0 -0
  155. package/lib/pad.d.ts +0 -0
  156. package/lib/pad.d.ts.map +0 -0
  157. package/lib/pad.js +954 -794
  158. package/lib/pad.js.map +1 -1
  159. package/lib/participation.d.ts +0 -0
  160. package/lib/participation.d.ts.map +0 -0
  161. package/lib/participation.js +199 -170
  162. package/lib/participation.js.map +1 -1
  163. package/lib/preferences.js +0 -0
  164. package/lib/preferences.js.map +0 -0
  165. package/lib/stories/decorators.js +0 -0
  166. package/lib/stories/decorators.js.map +0 -0
  167. package/lib/style.js +0 -0
  168. package/lib/style.js.map +0 -0
  169. package/lib/table.js +0 -0
  170. package/lib/table.js.map +0 -0
  171. package/lib/tabs.d.ts +0 -0
  172. package/lib/tabs.d.ts.map +0 -0
  173. package/lib/tabs.js +342 -235
  174. package/lib/tabs.js.map +1 -1
  175. package/lib/typings.d.js +0 -0
  176. package/lib/typings.d.js.map +0 -0
  177. package/lib/utils/headerFooterHelpers.d.ts +0 -0
  178. package/lib/utils/headerFooterHelpers.d.ts.map +0 -0
  179. package/lib/utils/headerFooterHelpers.js +155 -130
  180. package/lib/utils/headerFooterHelpers.js.map +1 -1
  181. package/lib/utils/index.js +0 -0
  182. package/lib/utils/index.js.map +0 -0
  183. package/lib/utils/label.d.ts +0 -0
  184. package/lib/utils/label.d.ts.map +0 -0
  185. package/lib/utils/label.js +113 -121
  186. package/lib/utils/label.js.map +1 -1
  187. package/lib/versionInfo.d.ts +0 -0
  188. package/lib/versionInfo.d.ts.map +0 -0
  189. package/lib/versionInfo.js +28 -23
  190. package/lib/versionInfo.js.map +1 -1
  191. package/lib/webpack-bundle.js +264 -175
  192. package/lib/webpack-bundle.js.map +1 -1
  193. package/lib/widgets/buttons/iconLinks.d.ts +0 -0
  194. package/lib/widgets/buttons/iconLinks.d.ts.map +0 -0
  195. package/lib/widgets/buttons/iconLinks.js +30 -19
  196. package/lib/widgets/buttons/iconLinks.js.map +1 -1
  197. package/lib/widgets/buttons.d.ts +0 -0
  198. package/lib/widgets/buttons.d.ts.map +0 -0
  199. package/lib/widgets/buttons.js +1113 -935
  200. package/lib/widgets/buttons.js.map +1 -1
  201. package/lib/widgets/dragAndDrop.js +0 -0
  202. package/lib/widgets/dragAndDrop.js.map +0 -0
  203. package/lib/widgets/error.d.ts +0 -0
  204. package/lib/widgets/error.d.ts.map +0 -0
  205. package/lib/widgets/error.js +24 -18
  206. package/lib/widgets/error.js.map +1 -1
  207. package/lib/widgets/forms/autocomplete/autocompleteBar.d.ts +0 -0
  208. package/lib/widgets/forms/autocomplete/autocompleteBar.d.ts.map +0 -0
  209. package/lib/widgets/forms/autocomplete/autocompleteBar.js +325 -234
  210. package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +1 -1
  211. package/lib/widgets/forms/autocomplete/autocompleteField.d.ts +0 -0
  212. package/lib/widgets/forms/autocomplete/autocompleteField.d.ts.map +0 -0
  213. package/lib/widgets/forms/autocomplete/autocompleteField.js +280 -246
  214. package/lib/widgets/forms/autocomplete/autocompleteField.js.map +1 -1
  215. package/lib/widgets/forms/autocomplete/autocompletePicker.d.ts +0 -0
  216. package/lib/widgets/forms/autocomplete/autocompletePicker.d.ts.map +0 -0
  217. package/lib/widgets/forms/autocomplete/autocompletePicker.js +497 -317
  218. package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +1 -1
  219. package/lib/widgets/forms/autocomplete/language.d.ts +0 -0
  220. package/lib/widgets/forms/autocomplete/language.d.ts.map +0 -0
  221. package/lib/widgets/forms/autocomplete/language.js +214 -159
  222. package/lib/widgets/forms/autocomplete/language.js.map +1 -1
  223. package/lib/widgets/forms/autocomplete/publicData.d.ts +0 -0
  224. package/lib/widgets/forms/autocomplete/publicData.d.ts.map +0 -0
  225. package/lib/widgets/forms/autocomplete/publicData.js +725 -485
  226. package/lib/widgets/forms/autocomplete/publicData.js.map +1 -1
  227. package/lib/widgets/forms/basic.d.ts +0 -0
  228. package/lib/widgets/forms/basic.d.ts.map +0 -0
  229. package/lib/widgets/forms/basic.js +239 -208
  230. package/lib/widgets/forms/basic.js.map +1 -1
  231. package/lib/widgets/forms/comment.d.ts +0 -0
  232. package/lib/widgets/forms/comment.d.ts.map +0 -0
  233. package/lib/widgets/forms/comment.js +48 -48
  234. package/lib/widgets/forms/comment.js.map +1 -1
  235. package/lib/widgets/forms/fieldFunction.d.ts +0 -0
  236. package/lib/widgets/forms/fieldFunction.d.ts.map +0 -0
  237. package/lib/widgets/forms/fieldFunction.js +50 -31
  238. package/lib/widgets/forms/fieldFunction.js.map +1 -1
  239. package/lib/widgets/forms/fieldParams.d.ts +0 -0
  240. package/lib/widgets/forms/fieldParams.d.ts.map +0 -0
  241. package/lib/widgets/forms/fieldParams.js +81 -102
  242. package/lib/widgets/forms/fieldParams.js.map +1 -1
  243. package/lib/widgets/forms/formStyle.d.ts +0 -0
  244. package/lib/widgets/forms/formStyle.d.ts.map +0 -0
  245. package/lib/widgets/forms/formStyle.js +50 -52
  246. package/lib/widgets/forms/formStyle.js.map +1 -1
  247. package/lib/widgets/forms.js +0 -0
  248. package/lib/widgets/forms.js.map +0 -0
  249. package/lib/widgets/index.js +0 -0
  250. package/lib/widgets/index.js.map +0 -0
  251. package/lib/widgets/peoplePicker.js +0 -0
  252. package/lib/widgets/peoplePicker.js.map +0 -0
  253. package/lib/widgets/widgetHelpers.d.ts +0 -0
  254. package/lib/widgets/widgetHelpers.d.ts.map +0 -0
  255. package/lib/widgets/widgetHelpers.js +30 -18
  256. package/lib/widgets/widgetHelpers.js.map +1 -1
  257. package/package.json +7 -7
@@ -1,61 +1,29 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
13
9
  });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23
- return new (P || (P = Promise))(function (resolve, reject) {
24
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27
- step((generator = generator.apply(thisArg, _arguments || [])).next());
28
- });
29
- };
30
- var __generator = (this && this.__generator) || function (thisArg, body) {
31
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
32
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
33
- function verb(n) { return function (v) { return step([n, v]); }; }
34
- function step(op) {
35
- if (f) throw new TypeError("Generator is already executing.");
36
- while (_) try {
37
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
38
- if (y = 0, t) op = [op[0] & 2, t.value];
39
- switch (op[0]) {
40
- case 0: case 1: t = op; break;
41
- case 4: _.label++; return { value: op[1], done: false };
42
- case 5: _.label++; y = op[1]; op = [0]; continue;
43
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
44
- default:
45
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
46
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
47
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
48
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
49
- if (t[2]) _.ops.pop();
50
- _.trys.pop(); continue;
51
- }
52
- op = body.call(thisArg, _);
53
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
54
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
55
- }
56
- };
57
- Object.defineProperty(exports, "__esModule", { value: true });
58
- exports.cameraButton = exports.cameraCaptureControl = void 0;
10
+ exports.cameraButton = cameraButton;
11
+ exports.cameraCaptureControl = cameraCaptureControl;
12
+
13
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
14
+
15
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
16
+
17
+ var debug = _interopRequireWildcard(require("../debug"));
18
+
19
+ var _iconBase = require("../iconBase");
20
+
21
+ var widgets = _interopRequireWildcard(require("../widgets"));
22
+
23
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
+
25
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
26
+
59
27
  /// /////////////////////////////////////////////
60
28
  //
61
29
  // Media input widget
@@ -70,16 +38,16 @@ exports.cameraButton = exports.cameraCaptureControl = void 0;
70
38
  // or access cemra roll (etc) OR to access solid cloud storage of favorite photo almbums.
71
39
  // (Especially latest taken ones)
72
40
  //
73
- var debug = __importStar(require("../debug"));
41
+
74
42
  /** @module mediaCapture */
75
- var iconBase_1 = require("../iconBase");
76
- var widgets = __importStar(require("../widgets"));
77
- var cameraIcon = iconBase_1.icons.iconBase + 'noun_Camera_1618446_000000.svg'; // Get it from github
78
- var retakeIcon = iconBase_1.icons.iconBase + 'noun_479395.svg'; // Get it from github
43
+ var cameraIcon = _iconBase.icons.iconBase + 'noun_Camera_1618446_000000.svg'; // Get it from github
44
+
45
+ var retakeIcon = _iconBase.icons.iconBase + 'noun_479395.svg'; // Get it from github
46
+
79
47
  var canvasWidth = '640';
80
48
  var canvasHeight = '480';
81
- var controlStyle = "border-radius: 0.5em; margin: 0.8em; width: ".concat(canvasWidth, "; height:").concat(canvasHeight, ";");
82
- // const controlStyle = 'border-radius: 0.5em; margin: 0.8em; width: 320; height:240;'
49
+ var controlStyle = "border-radius: 0.5em; margin: 0.8em; width: ".concat(canvasWidth, "; height:").concat(canvasHeight, ";"); // const controlStyle = 'border-radius: 0.5em; margin: 0.8em; width: 320; height:240;'
50
+
83
51
  var contentType = 'image/png';
84
52
  /** A control to capture a picture using camera
85
53
  * @param {Docuemnt} dom - The Document object
@@ -87,114 +55,124 @@ var contentType = 'image/png';
87
55
  * @param {NamedNode} getImageDoc() - NN of the image file to be created
88
56
  * @param {function} doneCallback - Called when a picture has been taken
89
57
  */
58
+
90
59
  function cameraCaptureControl(dom, store, getImageDoc, doneCallback) {
91
- var div = dom.createElement('div');
92
- var destination, imageBlob, player, canvas;
93
- var table = div.appendChild(dom.createElement('table'));
94
- var mainTR = table.appendChild(dom.createElement('tr'));
95
- var main = mainTR.appendChild(dom.createElement('td'));
96
- main.setAttribute('colspan', '4');
97
- var buttons = table.appendChild(dom.createElement('tr'));
98
- buttons
99
- .appendChild(dom.createElement('td')) // Cancel button
100
- .appendChild(widgets.cancelButton(dom))
101
- .addEventListener('click', function (_event) {
102
- stopVideo();
103
- doneCallback(null);
104
- });
105
- var retakeButton = buttons
106
- .appendChild(dom.createElement('td')) // Retake button
107
- .appendChild(widgets.button(dom, retakeIcon, 'Retake'));
108
- retakeButton.addEventListener('click', function (_event) {
109
- retake();
60
+ var div = dom.createElement('div');
61
+ var destination, imageBlob, player, canvas;
62
+ var table = div.appendChild(dom.createElement('table'));
63
+ var mainTR = table.appendChild(dom.createElement('tr'));
64
+ var main = mainTR.appendChild(dom.createElement('td'));
65
+ main.setAttribute('colspan', '4');
66
+ var buttons = table.appendChild(dom.createElement('tr'));
67
+ buttons.appendChild(dom.createElement('td')) // Cancel button
68
+ .appendChild(widgets.cancelButton(dom)).addEventListener('click', function (_event) {
69
+ stopVideo();
70
+ doneCallback(null);
71
+ });
72
+ var retakeButton = buttons.appendChild(dom.createElement('td')) // Retake button
73
+ .appendChild(widgets.button(dom, retakeIcon, 'Retake'));
74
+ retakeButton.addEventListener('click', function (_event) {
75
+ retake();
76
+ });
77
+ retakeButton.style.visibility = 'collapse'; // Hide for now
78
+
79
+ var shutterButton = buttons.appendChild(dom.createElement('td')) // Trigger capture button
80
+ .appendChild(widgets.button(dom, _iconBase.icons.iconBase + 'noun_10636.svg', 'Snap'));
81
+ shutterButton.addEventListener('click', grabCanvas);
82
+ shutterButton.style.visibility = 'collapse'; // Hide for now
83
+
84
+ var sendButton = buttons.appendChild(dom.createElement('td')) // Confirm and save button
85
+ .appendChild(widgets.continueButton(dom)); // @@ or send icon??
86
+
87
+ sendButton.addEventListener('click', function (_event) {
88
+ saveBlob(imageBlob, destination);
89
+ });
90
+ sendButton.style.visibility = 'collapse'; // Hide for now
91
+
92
+ function displayPlayer() {
93
+ player = main.appendChild(dom.createElement('video'));
94
+ player.setAttribute('controls', '1');
95
+ player.setAttribute('autoplay', '1');
96
+ player.setAttribute('style', controlStyle);
97
+
98
+ if (!navigator.mediaDevices) {
99
+ throw new Error('navigator.mediaDevices not available');
100
+ }
101
+
102
+ navigator.mediaDevices.getUserMedia(constraints).then(function (stream) {
103
+ player.srcObject = stream;
104
+ shutterButton.style.visibility = 'visible'; // Enable
105
+
106
+ sendButton.style.visibility = 'collapse';
107
+ retakeButton.style.visibility = 'collapse';
110
108
  });
111
- retakeButton.style.visibility = 'collapse'; // Hide for now
112
- var shutterButton = buttons
113
- .appendChild(dom.createElement('td')) // Trigger capture button
114
- .appendChild(widgets.button(dom, iconBase_1.icons.iconBase + 'noun_10636.svg', 'Snap'));
115
- shutterButton.addEventListener('click', grabCanvas);
109
+ }
110
+
111
+ var constraints = {
112
+ video: true
113
+ };
114
+
115
+ function retake() {
116
+ main.removeChild(canvas);
117
+ displayPlayer(); // Make new one as old one is stuck black
118
+ }
119
+
120
+ function grabCanvas() {
121
+ // Draw the video frame to the canvas.
122
+ canvas = dom.createElement('canvas');
123
+ canvas.setAttribute('width', canvasWidth);
124
+ canvas.setAttribute('height', canvasHeight);
125
+ canvas.setAttribute('style', controlStyle);
126
+ main.appendChild(canvas);
127
+ var context = canvas.getContext('2d');
128
+ context.drawImage(player, 0, 0, canvas.width, canvas.height);
129
+ player.parentNode.removeChild(player);
130
+ canvas.toBlob(function (blob) {
131
+ var msg = "got blob type ".concat(blob.type, " size ").concat(blob.size);
132
+ debug.log(msg);
133
+ destination = getImageDoc();
134
+ imageBlob = blob; // save for review
135
+
136
+ reviewImage(); // alert(msg)
137
+ }, contentType); // toBlob
138
+ }
139
+
140
+ function reviewImage() {
141
+ sendButton.style.visibility = 'visible';
142
+ retakeButton.style.visibility = 'visible';
116
143
  shutterButton.style.visibility = 'collapse'; // Hide for now
117
- var sendButton = buttons
118
- .appendChild(dom.createElement('td')) // Confirm and save button
119
- .appendChild(widgets.continueButton(dom)); // @@ or send icon??
120
- sendButton.addEventListener('click', function (_event) {
121
- saveBlob(imageBlob, destination);
122
- });
123
- sendButton.style.visibility = 'collapse'; // Hide for now
124
- function displayPlayer() {
125
- player = main.appendChild(dom.createElement('video'));
126
- player.setAttribute('controls', '1');
127
- player.setAttribute('autoplay', '1');
128
- player.setAttribute('style', controlStyle);
129
- if (!navigator.mediaDevices) {
130
- throw new Error('navigator.mediaDevices not available');
131
- }
132
- navigator.mediaDevices.getUserMedia(constraints).then(function (stream) {
133
- player.srcObject = stream;
134
- shutterButton.style.visibility = 'visible'; // Enable
135
- sendButton.style.visibility = 'collapse';
136
- retakeButton.style.visibility = 'collapse';
137
- });
138
- }
139
- var constraints = {
140
- video: true
141
- };
142
- function retake() {
143
- main.removeChild(canvas);
144
- displayPlayer(); // Make new one as old one is stuck black
145
- }
146
- function grabCanvas() {
147
- // Draw the video frame to the canvas.
148
- canvas = dom.createElement('canvas');
149
- canvas.setAttribute('width', canvasWidth);
150
- canvas.setAttribute('height', canvasHeight);
151
- canvas.setAttribute('style', controlStyle);
152
- main.appendChild(canvas);
153
- var context = canvas.getContext('2d');
154
- context.drawImage(player, 0, 0, canvas.width, canvas.height);
155
- player.parentNode.removeChild(player);
156
- canvas.toBlob(function (blob) {
157
- var msg = "got blob type ".concat(blob.type, " size ").concat(blob.size);
158
- debug.log(msg);
159
- destination = getImageDoc();
160
- imageBlob = blob; // save for review
161
- reviewImage();
162
- // alert(msg)
163
- }, contentType); // toBlob
144
+ }
145
+
146
+ function stopVideo() {
147
+ if (player && player.srcObject) {
148
+ player.srcObject.getVideoTracks().forEach(function (track) {
149
+ return track.stop();
150
+ });
164
151
  }
165
- function reviewImage() {
166
- sendButton.style.visibility = 'visible';
167
- retakeButton.style.visibility = 'visible';
168
- shutterButton.style.visibility = 'collapse'; // Hide for now
169
- }
170
- function stopVideo() {
171
- if (player && player.srcObject) {
172
- player.srcObject.getVideoTracks().forEach(function (track) { return track.stop(); });
173
- }
174
- }
175
- function saveBlob(blob, destination) {
176
- var contentType = blob.type;
177
- // if (!confirm('Save picture to ' + destination + ' ?')) return
178
- debug.log('Putting ' + blob.size + ' bytes of ' + contentType + ' to ' + destination);
179
- store.fetcher
180
- .webOperation('PUT', destination.uri, {
181
- data: blob,
182
- contentType: contentType
183
- })
184
- .then(function (_resp) {
185
- debug.log('ok saved ' + destination);
186
- stopVideo();
187
- doneCallback(destination);
188
- }, function (err) {
189
- stopVideo();
190
- alert(err);
191
- });
192
- }
193
- // Attach the video stream to the video element and autoplay.
194
- displayPlayer();
195
- return div;
152
+ }
153
+
154
+ function saveBlob(blob, destination) {
155
+ var contentType = blob.type; // if (!confirm('Save picture to ' + destination + ' ?')) return
156
+
157
+ debug.log('Putting ' + blob.size + ' bytes of ' + contentType + ' to ' + destination) // @@ TODO Remove casting
158
+ ;
159
+ store.fetcher.webOperation('PUT', destination.uri, {
160
+ data: blob,
161
+ contentType: contentType
162
+ }).then(function (_resp) {
163
+ debug.log('ok saved ' + destination);
164
+ stopVideo();
165
+ doneCallback(destination);
166
+ }, function (err) {
167
+ stopVideo();
168
+ alert(err);
169
+ });
170
+ } // Attach the video stream to the video element and autoplay.
171
+
172
+
173
+ displayPlayer();
174
+ return div;
196
175
  }
197
- exports.cameraCaptureControl = cameraCaptureControl;
198
176
  /** A button to capture a picture using camera
199
177
  * @param {Docuemnt} dom - The Document object
200
178
  * @param {IndexedForumla} store - The quadstore to store data in
@@ -204,27 +182,43 @@ exports.cameraCaptureControl = cameraCaptureControl;
204
182
  *
205
183
  * This expacts the buttton to a large control when it is pressed
206
184
  */
185
+
186
+
207
187
  function cameraButton(dom, store, getImageDoc, doneCallback) {
208
- var div = dom.createElement('div');
209
- var but = widgets.button(dom, cameraIcon, 'Take picture');
210
- var control;
211
- function restoreButton(imageDoc) {
212
- return __awaiter(this, void 0, void 0, function () {
213
- return __generator(this, function (_a) {
214
- div.removeChild(control);
215
- div.appendChild(but);
216
- doneCallback(imageDoc);
217
- return [2 /*return*/];
218
- });
219
- });
220
- }
221
- div.appendChild(but);
222
- but.addEventListener('click', function (_event) {
223
- div.removeChild(but);
224
- control = cameraCaptureControl(dom, store, getImageDoc, restoreButton);
225
- div.appendChild(control);
226
- });
227
- return div;
188
+ var div = dom.createElement('div');
189
+ var but = widgets.button(dom, cameraIcon, 'Take picture');
190
+ var control;
191
+
192
+ function restoreButton(_x) {
193
+ return _restoreButton.apply(this, arguments);
194
+ }
195
+
196
+ function _restoreButton() {
197
+ _restoreButton = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(imageDoc) {
198
+ return _regenerator["default"].wrap(function _callee$(_context) {
199
+ while (1) {
200
+ switch (_context.prev = _context.next) {
201
+ case 0:
202
+ div.removeChild(control);
203
+ div.appendChild(but);
204
+ doneCallback(imageDoc);
205
+
206
+ case 3:
207
+ case "end":
208
+ return _context.stop();
209
+ }
210
+ }
211
+ }, _callee);
212
+ }));
213
+ return _restoreButton.apply(this, arguments);
214
+ }
215
+
216
+ div.appendChild(but);
217
+ but.addEventListener('click', function (_event) {
218
+ div.removeChild(but);
219
+ control = cameraCaptureControl(dom, store, getImageDoc, restoreButton);
220
+ div.appendChild(control);
221
+ });
222
+ return div;
228
223
  }
229
- exports.cameraButton = cameraButton;
230
224
  //# sourceMappingURL=media-capture.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"media-capture.js","sourceRoot":"","sources":["../../src/media/media-capture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/media/media-capture.ts"],"names":["cameraIcon","icons","iconBase","retakeIcon","canvasWidth","canvasHeight","controlStyle","contentType","cameraCaptureControl","dom","store","getImageDoc","doneCallback","div","createElement","destination","imageBlob","player","canvas","table","appendChild","mainTR","main","setAttribute","buttons","widgets","cancelButton","addEventListener","_event","stopVideo","retakeButton","button","retake","style","visibility","shutterButton","grabCanvas","sendButton","continueButton","saveBlob","displayPlayer","navigator","mediaDevices","Error","getUserMedia","constraints","then","stream","srcObject","video","removeChild","context","getContext","drawImage","width","height","parentNode","toBlob","blob","msg","type","size","debug","log","reviewImage","getVideoTracks","forEach","track","stop","fetcher","webOperation","uri","data","_resp","err","alert","cameraButton","but","control","restoreButton","imageDoc"],"mappings":";;;;;;;;;;;;;;;;AAcA;;AAIA;;AACA;;;;;;AAnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA;AAMA,IAAMA,UAAU,GAAGC,gBAAMC,QAAN,GAAiB,gCAApC,C,CAAqE;;AACrE,IAAMC,UAAU,GAAGF,gBAAMC,QAAN,GAAiB,iBAApC,C,CAAsD;;AAEtD,IAAME,WAAW,GAAG,KAApB;AACA,IAAMC,YAAY,GAAG,KAArB;AAEA,IAAMC,YAAY,yDAAkDF,WAAlD,sBAAyEC,YAAzE,MAAlB,C,CACA;;AACA,IAAME,WAAW,GAAG,WAApB;AAEA;AACA;AACA;AACA;AACA;AACA;;AACO,SAASC,oBAAT,CACLC,GADK,EAELC,KAFK,EAGLC,WAHK,EAILC,YAJK,EAKL;AACA,MAAMC,GAAG,GAAGJ,GAAG,CAACK,aAAJ,CAAkB,KAAlB,CAAZ;AACA,MAAIC,WAAJ,EAAiBC,SAAjB,EAA4BC,MAA5B,EAAoCC,MAApC;AAEA,MAAMC,KAAK,GAAGN,GAAG,CAACO,WAAJ,CAAgBX,GAAG,CAACK,aAAJ,CAAkB,OAAlB,CAAhB,CAAd;AACA,MAAMO,MAAM,GAAGF,KAAK,CAACC,WAAN,CAAkBX,GAAG,CAACK,aAAJ,CAAkB,IAAlB,CAAlB,CAAf;AACA,MAAMQ,IAAI,GAAGD,MAAM,CAACD,WAAP,CAAmBX,GAAG,CAACK,aAAJ,CAAkB,IAAlB,CAAnB,CAAb;AACAQ,EAAAA,IAAI,CAACC,YAAL,CAAkB,SAAlB,EAA6B,GAA7B;AAEA,MAAMC,OAAO,GAAGL,KAAK,CAACC,WAAN,CAAkBX,GAAG,CAACK,aAAJ,CAAkB,IAAlB,CAAlB,CAAhB;AAEAU,EAAAA,OAAO,CACJJ,WADH,CACeX,GAAG,CAACK,aAAJ,CAAkB,IAAlB,CADf,EACwC;AADxC,GAEGM,WAFH,CAEeK,OAAO,CAACC,YAAR,CAAqBjB,GAArB,CAFf,EAGGkB,gBAHH,CAGoB,OAHpB,EAG6B,UAAAC,MAAM,EAAI;AACnCC,IAAAA,SAAS;AACTjB,IAAAA,YAAY,CAAC,IAAD,CAAZ;AACD,GANH;AAQA,MAAMkB,YAAY,GAAGN,OAAO,CACzBJ,WADkB,CACNX,GAAG,CAACK,aAAJ,CAAkB,IAAlB,CADM,EACmB;AADnB,GAElBM,WAFkB,CAENK,OAAO,CAACM,MAAR,CAAetB,GAAf,EAAoBN,UAApB,EAAgC,QAAhC,CAFM,CAArB;AAGA2B,EAAAA,YAAY,CAACH,gBAAb,CAA8B,OAA9B,EAAuC,UAAAC,MAAM,EAAI;AAC/CI,IAAAA,MAAM;AACP,GAFD;AAGAF,EAAAA,YAAY,CAACG,KAAb,CAAmBC,UAAnB,GAAgC,UAAhC,CAzBA,CAyB2C;;AAE3C,MAAMC,aAAa,GAAGX,OAAO,CAC1BJ,WADmB,CACPX,GAAG,CAACK,aAAJ,CAAkB,IAAlB,CADO,EACkB;AADlB,GAEnBM,WAFmB,CAGlBK,OAAO,CAACM,MAAR,CAAetB,GAAf,EAAoBR,gBAAMC,QAAN,GAAiB,gBAArC,EAAuD,MAAvD,CAHkB,CAAtB;AAKAiC,EAAAA,aAAa,CAACR,gBAAd,CAA+B,OAA/B,EAAwCS,UAAxC;AACAD,EAAAA,aAAa,CAACF,KAAd,CAAoBC,UAApB,GAAiC,UAAjC,CAjCA,CAiC4C;;AAE5C,MAAMG,UAAU,GAAGb,OAAO,CACvBJ,WADgB,CACJX,GAAG,CAACK,aAAJ,CAAkB,IAAlB,CADI,EACqB;AADrB,GAEhBM,WAFgB,CAEJK,OAAO,CAACa,cAAR,CAAuB7B,GAAvB,CAFI,CAAnB,CAnCA,CAqC4C;;AAC5C4B,EAAAA,UAAU,CAACV,gBAAX,CAA4B,OAA5B,EAAqC,UAAAC,MAAM,EAAI;AAC7CW,IAAAA,QAAQ,CAACvB,SAAD,EAAYD,WAAZ,CAAR;AACD,GAFD;AAGAsB,EAAAA,UAAU,CAACJ,KAAX,CAAiBC,UAAjB,GAA8B,UAA9B,CAzCA,CAyCyC;;AAEzC,WAASM,aAAT,GAA0B;AACxBvB,IAAAA,MAAM,GAAGK,IAAI,CAACF,WAAL,CAAiBX,GAAG,CAACK,aAAJ,CAAkB,OAAlB,CAAjB,CAAT;AACAG,IAAAA,MAAM,CAACM,YAAP,CAAoB,UAApB,EAAgC,GAAhC;AACAN,IAAAA,MAAM,CAACM,YAAP,CAAoB,UAApB,EAAgC,GAAhC;AACAN,IAAAA,MAAM,CAACM,YAAP,CAAoB,OAApB,EAA6BjB,YAA7B;;AACA,QAAI,CAACmC,SAAS,CAACC,YAAf,EAA6B;AAC3B,YAAM,IAAIC,KAAJ,CAAU,sCAAV,CAAN;AACD;;AACDF,IAAAA,SAAS,CAACC,YAAV,CAAuBE,YAAvB,CAAoCC,WAApC,EAAiDC,IAAjD,CAAsD,UAAAC,MAAM,EAAI;AAC9D9B,MAAAA,MAAM,CAAC+B,SAAP,GAAmBD,MAAnB;AACAZ,MAAAA,aAAa,CAACF,KAAd,CAAoBC,UAApB,GAAiC,SAAjC,CAF8D,CAEnB;;AAC3CG,MAAAA,UAAU,CAACJ,KAAX,CAAiBC,UAAjB,GAA8B,UAA9B;AACAJ,MAAAA,YAAY,CAACG,KAAb,CAAmBC,UAAnB,GAAgC,UAAhC;AACD,KALD;AAMD;;AAED,MAAMW,WAAW,GAAG;AAClBI,IAAAA,KAAK,EAAE;AADW,GAApB;;AAIA,WAASjB,MAAT,GAAmB;AACjBV,IAAAA,IAAI,CAAC4B,WAAL,CAAiBhC,MAAjB;AACAsB,IAAAA,aAAa,GAFI,CAED;AACjB;;AAED,WAASJ,UAAT,GAAuB;AACrB;AACAlB,IAAAA,MAAM,GAAGT,GAAG,CAACK,aAAJ,CAAkB,QAAlB,CAAT;AACAI,IAAAA,MAAM,CAACK,YAAP,CAAoB,OAApB,EAA6BnB,WAA7B;AACAc,IAAAA,MAAM,CAACK,YAAP,CAAoB,QAApB,EAA8BlB,YAA9B;AACAa,IAAAA,MAAM,CAACK,YAAP,CAAoB,OAApB,EAA6BjB,YAA7B;AACAgB,IAAAA,IAAI,CAACF,WAAL,CAAiBF,MAAjB;AAEA,QAAMiC,OAAO,GAAGjC,MAAM,CAACkC,UAAP,CAAkB,IAAlB,CAAhB;AACAD,IAAAA,OAAO,CAACE,SAAR,CAAkBpC,MAAlB,EAA0B,CAA1B,EAA6B,CAA7B,EAAgCC,MAAM,CAACoC,KAAvC,EAA8CpC,MAAM,CAACqC,MAArD;AAEAtC,IAAAA,MAAM,CAACuC,UAAP,CAAkBN,WAAlB,CAA8BjC,MAA9B;AAEAC,IAAAA,MAAM,CAACuC,MAAP,CAAc,UAAAC,IAAI,EAAI;AACpB,UAAMC,GAAG,2BAAoBD,IAAI,CAACE,IAAzB,mBAAsCF,IAAI,CAACG,IAA3C,CAAT;AACAC,MAAAA,KAAK,CAACC,GAAN,CAAUJ,GAAV;AACA5C,MAAAA,WAAW,GAAGJ,WAAW,EAAzB;AACAK,MAAAA,SAAS,GAAG0C,IAAZ,CAJoB,CAIH;;AACjBM,MAAAA,WAAW,GALS,CAMpB;AACD,KAPD,EAOGzD,WAPH,EAbqB,CAoBL;AACjB;;AAED,WAASyD,WAAT,GAAwB;AACtB3B,IAAAA,UAAU,CAACJ,KAAX,CAAiBC,UAAjB,GAA8B,SAA9B;AACAJ,IAAAA,YAAY,CAACG,KAAb,CAAmBC,UAAnB,GAAgC,SAAhC;AACAC,IAAAA,aAAa,CAACF,KAAd,CAAoBC,UAApB,GAAiC,UAAjC,CAHsB,CAGsB;AAC7C;;AAED,WAASL,SAAT,GAAsB;AACpB,QAAIZ,MAAM,IAAIA,MAAM,CAAC+B,SAArB,EAAgC;AAC9B/B,MAAAA,MAAM,CAAC+B,SAAP,CAAiBiB,cAAjB,GAAkCC,OAAlC,CAA0C,UAAAC,KAAK;AAAA,eAAIA,KAAK,CAACC,IAAN,EAAJ;AAAA,OAA/C;AACD;AACF;;AACD,WAAS7B,QAAT,CAAmBmB,IAAnB,EAAyB3C,WAAzB,EAAsC;AACpC,QAAMR,WAAW,GAAGmD,IAAI,CAACE,IAAzB,CADoC,CAEpC;;AACAE,IAAAA,KAAK,CAACC,GAAN,CACE,aAAaL,IAAI,CAACG,IAAlB,GAAyB,YAAzB,GAAwCtD,WAAxC,GAAsD,MAAtD,GAA+DQ,WADjE,EAGA;AAHA;AAIEL,IAAAA,KAAD,CAAe2D,OAAf,CACEC,YADF,CACe,KADf,EACsBvD,WAAW,CAACwD,GADlC,EACuC;AACpCC,MAAAA,IAAI,EAAEd,IAD8B;AAEpCnD,MAAAA,WAAW,EAAEA;AAFuB,KADvC,EAKEuC,IALF,CAMG,UAAA2B,KAAK,EAAI;AACPX,MAAAA,KAAK,CAACC,GAAN,CAAU,cAAchD,WAAxB;AACAc,MAAAA,SAAS;AACTjB,MAAAA,YAAY,CAACG,WAAD,CAAZ;AACD,KAVJ,EAWG,UAAA2D,GAAG,EAAI;AACL7C,MAAAA,SAAS;AACT8C,MAAAA,KAAK,CAACD,GAAD,CAAL;AACD,KAdJ;AAgBF,GA7HD,CA+HA;;;AACAlC,EAAAA,aAAa;AACb,SAAO3B,GAAP;AACD;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAEO,SAAS+D,YAAT,CACLnE,GADK,EAELC,KAFK,EAGLC,WAHK,EAILC,YAJK,EAKQ;AACb,MAAMC,GAAG,GAAGJ,GAAG,CAACK,aAAJ,CAAkB,KAAlB,CAAZ;AACA,MAAM+D,GAAG,GAAGpD,OAAO,CAACM,MAAR,CAAetB,GAAf,EAAoBT,UAApB,EAAgC,cAAhC,CAAZ;AACA,MAAI8E,OAAJ;;AAHa,WAIEC,aAJF;AAAA;AAAA;;AAAA;AAAA,mGAIb,iBAA8BC,QAA9B;AAAA;AAAA;AAAA;AAAA;AACEnE,cAAAA,GAAG,CAACqC,WAAJ,CAAgB4B,OAAhB;AACAjE,cAAAA,GAAG,CAACO,WAAJ,CAAgByD,GAAhB;AACAjE,cAAAA,YAAY,CAACoE,QAAD,CAAZ;;AAHF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAJa;AAAA;AAAA;;AASbnE,EAAAA,GAAG,CAACO,WAAJ,CAAgByD,GAAhB;AACAA,EAAAA,GAAG,CAAClD,gBAAJ,CAAqB,OAArB,EAA8B,UAAAC,MAAM,EAAI;AACtCf,IAAAA,GAAG,CAACqC,WAAJ,CAAgB2B,GAAhB;AACAC,IAAAA,OAAO,GAAGtE,oBAAoB,CAC5BC,GAD4B,EAE5BC,KAF4B,EAG5BC,WAH4B,EAI5BoE,aAJ4B,CAA9B;AAMAlE,IAAAA,GAAG,CAACO,WAAJ,CAAgB0D,OAAhB;AACD,GATD;AAUA,SAAOjE,GAAP;AACD","sourcesContent":["/// /////////////////////////////////////////////\n//\n// Media input widget\n//\n//\n// Workflow:\n// The HTML5 functionality (on mobille) is to prompt for either\n// a realtime camera capture , OR a selection from images already ont the device\n// (eg camera roll).\n//\n// The solid alternative is to either take a phtoto\n// or access cemra roll (etc) OR to access solid cloud storage of favorite photo almbums.\n// (Especially latest taken ones)\n//\nimport * as debug from '../debug'\n\n/** @module mediaCapture */\n\nimport { icons } from '../iconBase'\nimport * as widgets from '../widgets'\nimport { IndexedFormula, NamedNode } from 'rdflib'\n\nconst cameraIcon = icons.iconBase + 'noun_Camera_1618446_000000.svg' // Get it from github\nconst retakeIcon = icons.iconBase + 'noun_479395.svg' // Get it from github\n\nconst canvasWidth = '640'\nconst canvasHeight = '480'\n\nconst controlStyle = `border-radius: 0.5em; margin: 0.8em; width: ${canvasWidth}; height:${canvasHeight};`\n// const controlStyle = 'border-radius: 0.5em; margin: 0.8em; width: 320; height:240;'\nconst contentType = 'image/png'\n\n/** A control to capture a picture using camera\n * @param {Docuemnt} dom - The Document object\n * @param {IndexedForumla} store - The quadstore to store data in\n * @param {NamedNode} getImageDoc() - NN of the image file to be created\n * @param {function} doneCallback - Called when a picture has been taken\n */\nexport function cameraCaptureControl (\n dom: HTMLDocument,\n store: IndexedFormula,\n getImageDoc: () => NamedNode,\n doneCallback: (imageDoc) => Promise<void>\n) {\n const div = dom.createElement('div')\n let destination, imageBlob, player, canvas\n\n const table = div.appendChild(dom.createElement('table'))\n const mainTR = table.appendChild(dom.createElement('tr'))\n const main = mainTR.appendChild(dom.createElement('td'))\n main.setAttribute('colspan', '4')\n\n const buttons = table.appendChild(dom.createElement('tr'))\n\n buttons\n .appendChild(dom.createElement('td')) // Cancel button\n .appendChild(widgets.cancelButton(dom))\n .addEventListener('click', _event => {\n stopVideo()\n doneCallback(null)\n })\n\n const retakeButton = buttons\n .appendChild(dom.createElement('td')) // Retake button\n .appendChild(widgets.button(dom, retakeIcon, 'Retake'))\n retakeButton.addEventListener('click', _event => {\n retake()\n })\n retakeButton.style.visibility = 'collapse' // Hide for now\n\n const shutterButton = buttons\n .appendChild(dom.createElement('td')) // Trigger capture button\n .appendChild(\n widgets.button(dom, icons.iconBase + 'noun_10636.svg', 'Snap')\n )\n shutterButton.addEventListener('click', grabCanvas)\n shutterButton.style.visibility = 'collapse' // Hide for now\n\n const sendButton = buttons\n .appendChild(dom.createElement('td')) // Confirm and save button\n .appendChild(widgets.continueButton(dom)) // @@ or send icon??\n sendButton.addEventListener('click', _event => {\n saveBlob(imageBlob, destination)\n })\n sendButton.style.visibility = 'collapse' // Hide for now\n\n function displayPlayer () {\n player = main.appendChild(dom.createElement('video'))\n player.setAttribute('controls', '1')\n player.setAttribute('autoplay', '1')\n player.setAttribute('style', controlStyle)\n if (!navigator.mediaDevices) {\n throw new Error('navigator.mediaDevices not available')\n }\n navigator.mediaDevices.getUserMedia(constraints).then(stream => {\n player.srcObject = stream\n shutterButton.style.visibility = 'visible' // Enable\n sendButton.style.visibility = 'collapse'\n retakeButton.style.visibility = 'collapse'\n })\n }\n\n const constraints = {\n video: true\n }\n\n function retake () {\n main.removeChild(canvas)\n displayPlayer() // Make new one as old one is stuck black\n }\n\n function grabCanvas () {\n // Draw the video frame to the canvas.\n canvas = dom.createElement('canvas')\n canvas.setAttribute('width', canvasWidth)\n canvas.setAttribute('height', canvasHeight)\n canvas.setAttribute('style', controlStyle)\n main.appendChild(canvas)\n\n const context = canvas.getContext('2d')\n context.drawImage(player, 0, 0, canvas.width, canvas.height)\n\n player.parentNode.removeChild(player)\n\n canvas.toBlob(blob => {\n const msg = `got blob type ${blob.type} size ${blob.size}`\n debug.log(msg)\n destination = getImageDoc()\n imageBlob = blob // save for review\n reviewImage()\n // alert(msg)\n }, contentType) // toBlob\n }\n\n function reviewImage () {\n sendButton.style.visibility = 'visible'\n retakeButton.style.visibility = 'visible'\n shutterButton.style.visibility = 'collapse' // Hide for now\n }\n\n function stopVideo () {\n if (player && player.srcObject) {\n player.srcObject.getVideoTracks().forEach(track => track.stop())\n }\n }\n function saveBlob (blob, destination) {\n const contentType = blob.type\n // if (!confirm('Save picture to ' + destination + ' ?')) return\n debug.log(\n 'Putting ' + blob.size + ' bytes of ' + contentType + ' to ' + destination\n )\n // @@ TODO Remove casting\n ;(store as any).fetcher\n .webOperation('PUT', destination.uri, {\n data: blob,\n contentType: contentType\n })\n .then(\n _resp => {\n debug.log('ok saved ' + destination)\n stopVideo()\n doneCallback(destination)\n },\n err => {\n stopVideo()\n alert(err)\n }\n )\n }\n\n // Attach the video stream to the video element and autoplay.\n displayPlayer()\n return div\n}\n\n/** A button to capture a picture using camera\n * @param {Docuemnt} dom - The Document object\n * @param {IndexedForumla} store - The quadstore to store data in\n * @param {fuunction} getImageDoc - returns NN of the image file to be created\n * @param {function<Node>} doneCallback - called with the image taken\n * @returns {DomElement} - A div element with the buton in it\n *\n * This expacts the buttton to a large control when it is pressed\n */\n\nexport function cameraButton (\n dom: HTMLDocument,\n store: IndexedFormula,\n getImageDoc: () => NamedNode,\n doneCallback: (imageDoc) => Promise<void>\n): HTMLElement {\n const div = dom.createElement('div')\n const but = widgets.button(dom, cameraIcon, 'Take picture')\n let control\n async function restoreButton (imageDoc) {\n div.removeChild(control)\n div.appendChild(but)\n doneCallback(imageDoc)\n }\n div.appendChild(but)\n but.addEventListener('click', _event => {\n div.removeChild(but)\n control = cameraCaptureControl(\n dom,\n store,\n getImageDoc,\n restoreButton\n )\n div.appendChild(control)\n })\n return div\n}\n"],"file":"media-capture.js"}
File without changes
File without changes
File without changes
File without changes
package/lib/ns.js CHANGED
File without changes
package/lib/ns.js.map CHANGED
File without changes
package/lib/pad.d.ts CHANGED
File without changes
package/lib/pad.d.ts.map CHANGED
File without changes