solid-ui 2.4.22-993ab4aa → 2.4.22-9c4bbef1

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 (105) hide show
  1. package/dist/main.js +1814 -1042
  2. package/dist/main.js.map +1 -1
  3. package/lib/acl/access-controller.js +9 -14
  4. package/lib/acl/access-controller.js.map +1 -1
  5. package/lib/acl/access-groups.js +10 -15
  6. package/lib/acl/access-groups.js.map +1 -1
  7. package/lib/acl/acl-control.js +9 -13
  8. package/lib/acl/acl-control.js.map +1 -1
  9. package/lib/acl/acl.js +7 -11
  10. package/lib/acl/acl.js.map +1 -1
  11. package/lib/acl/add-agent-buttons.js +13 -19
  12. package/lib/acl/add-agent-buttons.js.map +1 -1
  13. package/lib/acl/index.js.map +1 -1
  14. package/lib/acl/styles.js.map +1 -1
  15. package/lib/acl/types.js.map +1 -1
  16. package/lib/chat/bookmarks.js +14 -19
  17. package/lib/chat/bookmarks.js.map +1 -1
  18. package/lib/chat/chatLogic.js +9 -15
  19. package/lib/chat/chatLogic.js.map +1 -1
  20. package/lib/chat/dateFolder.js +12 -17
  21. package/lib/chat/dateFolder.js.map +1 -1
  22. package/lib/chat/infinite.js +29 -37
  23. package/lib/chat/infinite.js.map +1 -1
  24. package/lib/chat/message.js +14 -14
  25. package/lib/chat/message.js.map +1 -1
  26. package/lib/chat/messageTools.js +10 -23
  27. package/lib/chat/messageTools.js.map +1 -1
  28. package/lib/chat/thread.js +4 -9
  29. package/lib/chat/thread.js.map +1 -1
  30. package/lib/create/create.js.map +1 -1
  31. package/lib/create/index.js.map +1 -1
  32. package/lib/create/types.js.map +1 -1
  33. package/lib/debug.js.map +1 -1
  34. package/lib/folders.js.map +1 -1
  35. package/lib/footer/index.js +8 -10
  36. package/lib/footer/index.js.map +1 -1
  37. package/lib/footer/styleMap.js.map +1 -1
  38. package/lib/header/empty-profile.js.map +1 -1
  39. package/lib/header/index.js +9 -17
  40. package/lib/header/index.js.map +1 -1
  41. package/lib/header/styleMap.js.map +1 -1
  42. package/lib/iconBase.js.map +1 -1
  43. package/lib/icons/solid_logo.js.map +1 -1
  44. package/lib/index.js.map +1 -1
  45. package/lib/jss/index.js.map +1 -1
  46. package/lib/log.js.map +1 -1
  47. package/lib/login/login.js +21 -63
  48. package/lib/login/login.js.map +1 -1
  49. package/lib/matrix/index.js.map +1 -1
  50. package/lib/matrix/matrix.js.map +1 -1
  51. package/lib/matrix/types.js.map +1 -1
  52. package/lib/media/index.js.map +1 -1
  53. package/lib/media/media-capture.js +4 -20
  54. package/lib/media/media-capture.js.map +1 -1
  55. package/lib/messageArea.js.map +1 -1
  56. package/lib/noun_Camera_1618446_000000.js.map +1 -1
  57. package/lib/ns.js.map +1 -1
  58. package/lib/pad.js.map +1 -1
  59. package/lib/participation.js.map +1 -1
  60. package/lib/preferences.js.map +1 -1
  61. package/lib/signup/config-default.js.map +1 -1
  62. package/lib/signup/signup.js.map +1 -1
  63. package/lib/stories/decorators.js.map +1 -1
  64. package/lib/style.js.map +1 -1
  65. package/lib/style_multiSelect.js +67 -0
  66. package/lib/style_multiSelect.js.map +1 -0
  67. package/lib/table.js.map +1 -1
  68. package/lib/tabs.d.ts +1 -1
  69. package/lib/tabs.d.ts.map +1 -1
  70. package/lib/tabs.js +34 -21
  71. package/lib/tabs.js.map +1 -1
  72. package/lib/typings.d.js.map +1 -1
  73. package/lib/utils/headerFooterHelpers.js +5 -7
  74. package/lib/utils/headerFooterHelpers.js.map +1 -1
  75. package/lib/utils/index.js.map +1 -1
  76. package/lib/utils/label.js.map +1 -1
  77. package/lib/versionInfo.js +5 -5
  78. package/lib/versionInfo.js.map +1 -1
  79. package/lib/widgets/buttons/iconLinks.js.map +1 -1
  80. package/lib/widgets/buttons.js.map +1 -1
  81. package/lib/widgets/dragAndDrop.js.map +1 -1
  82. package/lib/widgets/error.js.map +1 -1
  83. package/lib/widgets/forms/autocomplete/autocompleteBar.js +17 -15
  84. package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +1 -1
  85. package/lib/widgets/forms/autocomplete/autocompleteField.js +5 -8
  86. package/lib/widgets/forms/autocomplete/autocompleteField.js.map +1 -1
  87. package/lib/widgets/forms/autocomplete/autocompletePicker.js +21 -19
  88. package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +1 -1
  89. package/lib/widgets/forms/autocomplete/language.js +8 -15
  90. package/lib/widgets/forms/autocomplete/language.js.map +1 -1
  91. package/lib/widgets/forms/autocomplete/publicData.js +22 -27
  92. package/lib/widgets/forms/autocomplete/publicData.js.map +1 -1
  93. package/lib/widgets/forms/basic.js.map +1 -1
  94. package/lib/widgets/forms/comment.js.map +1 -1
  95. package/lib/widgets/forms/fieldFunction.js.map +1 -1
  96. package/lib/widgets/forms/fieldParams.js.map +1 -1
  97. package/lib/widgets/forms/formStyle.js.map +1 -1
  98. package/lib/widgets/forms.js +264 -84
  99. package/lib/widgets/forms.js.map +1 -1
  100. package/lib/widgets/index.js.map +1 -1
  101. package/lib/widgets/multiSelect.js +784 -0
  102. package/lib/widgets/multiSelect.js.map +1 -0
  103. package/lib/widgets/peoplePicker.js.map +1 -1
  104. package/lib/widgets/widgetHelpers.js.map +1 -1
  105. package/package.json +5 -3
@@ -60,8 +60,6 @@ Object.defineProperty(exports, "renderNameValuePair", {
60
60
  exports.sortByLabel = sortByLabel;
61
61
  exports.sortBySequence = sortBySequence;
62
62
 
63
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
64
-
65
63
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
66
64
 
67
65
  var buttons = _interopRequireWildcard(require("./buttons"));
@@ -94,12 +92,16 @@ var _solidLogic = require("solid-logic");
94
92
 
95
93
  var utils = _interopRequireWildcard(require("../utils"));
96
94
 
95
+ var _multiSelect = require("./multiSelect");
96
+
97
97
  var widgets = _interopRequireWildcard(require("../widgets"));
98
98
 
99
99
  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); }
100
100
 
101
101
  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; }
102
102
 
103
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator["return"] && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, "catch": function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }
104
+
103
105
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
104
106
 
105
107
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
@@ -352,9 +354,9 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
352
354
 
353
355
 
354
356
  function _addItem() {
355
- _addItem = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
357
+ _addItem = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
356
358
  var object, toBeInserted, msg;
357
- return _regenerator["default"].wrap(function _callee6$(_context6) {
359
+ return _regeneratorRuntime().wrap(function _callee6$(_context6) {
358
360
  while (1) {
359
361
  switch (_context6.prev = _context6.next) {
360
362
  case 0:
@@ -417,9 +419,9 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
417
419
 
418
420
 
419
421
  function _deleteThisItem() {
420
- _deleteThisItem = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
422
+ _deleteThisItem = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
421
423
  var i, del;
422
- return _regenerator["default"].wrap(function _callee3$(_context3) {
424
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
423
425
  while (1) {
424
426
  switch (_context3.prev = _context3.next) {
425
427
  case 0:
@@ -492,9 +494,9 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
492
494
 
493
495
 
494
496
  function _moveThisItem() {
495
- _moveThisItem = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(event, upwards) {
497
+ _moveThisItem = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(event, upwards) {
496
498
  var i;
497
- return _regenerator["default"].wrap(function _callee4$(_context4) {
499
+ return _regeneratorRuntime().wrap(function _callee4$(_context4) {
498
500
  while (1) {
499
501
  switch (_context4.prev = _context4.next) {
500
502
  case 0:
@@ -599,8 +601,8 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
599
601
  frame.style.gridTemplateColumns = 'auto 3em';
600
602
  frame.style.gridTemplateRows = '50% 50%';
601
603
  var moveUpButton = buttons.button(dom, _iconBase.icons.iconBase + 'noun_1369237.svg', 'Move Up', /*#__PURE__*/function () {
602
- var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(event) {
603
- return _regenerator["default"].wrap(function _callee$(_context) {
604
+ var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(event) {
605
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
604
606
  while (1) {
605
607
  switch (_context.prev = _context.next) {
606
608
  case 0:
@@ -619,8 +621,8 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
619
621
  };
620
622
  }());
621
623
  var moveDownButton = buttons.button(dom, _iconBase.icons.iconBase + 'noun_1369241.svg', 'Move Down', /*#__PURE__*/function () {
622
- var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(event) {
623
- return _regenerator["default"].wrap(function _callee2$(_context2) {
624
+ var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(event) {
625
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
624
626
  while (1) {
625
627
  switch (_context2.prev = _context2.next) {
626
628
  case 0:
@@ -736,8 +738,8 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
736
738
  var prompt = dom.createElement('span');
737
739
  prompt.textContent = (values.length === 0 ? 'Add another ' : 'Add ') + multipleUIlabel;
738
740
  tail.addEventListener('click', /*#__PURE__*/function () {
739
- var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(_eventNotUsed) {
740
- return _regenerator["default"].wrap(function _callee5$(_context5) {
741
+ var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(_eventNotUsed) {
742
+ return _regeneratorRuntime().wrap(function _callee5$(_context5) {
741
743
  while (1) {
742
744
  switch (_context5.prev = _context5.next) {
743
745
  case 0:
@@ -776,8 +778,8 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
776
778
  }
777
779
 
778
780
  function _saveListThenRefresh() {
779
- _saveListThenRefresh = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
780
- return _regenerator["default"].wrap(function _callee7$(_context7) {
781
+ _saveListThenRefresh = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
782
+ return _regeneratorRuntime().wrap(function _callee7$(_context7) {
781
783
  while (1) {
782
784
  switch (_context7.prev = _context7.next) {
783
785
  case 0:
@@ -834,9 +836,9 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
834
836
  }
835
837
 
836
838
  function _asyncStuff() {
837
- _asyncStuff = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8() {
839
+ _asyncStuff = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
838
840
  var extra, j;
839
- return _regenerator["default"].wrap(function _callee8$(_context8) {
841
+ return _regeneratorRuntime().wrap(function _callee8$(_context8) {
840
842
  while (1) {
841
843
  switch (_context8.prev = _context8.next) {
842
844
  case 0:
@@ -1040,7 +1042,6 @@ _fieldFunction.field[ns.ui('Choice').uri] = function (dom, container, already, s
1040
1042
  var kb = _solidLogic.store;
1041
1043
  var formDoc = form.doc ? form.doc() : null; // @@ if blank no way to know
1042
1044
 
1043
- var multiSelect = false;
1044
1045
  var p;
1045
1046
  var box = dom.createElement('div');
1046
1047
  box.setAttribute('class', 'choiceBox'); // Set flexDirection column?
@@ -1072,7 +1073,6 @@ _fieldFunction.field[ns.ui('Choice').uri] = function (dom, container, already, s
1072
1073
  var opts = {
1073
1074
  form: form,
1074
1075
  subForm: subForm,
1075
- multiSelect: multiSelect,
1076
1076
  disambiguate: false
1077
1077
  };
1078
1078
 
@@ -1081,7 +1081,7 @@ _fieldFunction.field[ns.ui('Choice').uri] = function (dom, container, already, s
1081
1081
  var possibleProperties;
1082
1082
  possible = kb.each(undefined, ns.rdf('type'), uiFrom, formDoc);
1083
1083
 
1084
- for (var x in kb.findMembersNT(uiFrom)) {
1084
+ for (var x in findMembersNT(kb, uiFrom, dataDoc)) {
1085
1085
  possible.push(kb.fromNT(x));
1086
1086
  } // Use rdfs
1087
1087
 
@@ -1121,9 +1121,7 @@ _fieldFunction.field[ns.ui('Choice').uri] = function (dom, container, already, s
1121
1121
  opts.disambiguate = true;
1122
1122
  }
1123
1123
 
1124
- var object = kb.any(subject, property);
1125
- if (object) possible.push(object);
1126
- return sortByLabel(possible);
1124
+ return possible; // return sortByLabel(possible)
1127
1125
  } // TODO: this checks for any occurrence, regardless of true or false setting
1128
1126
 
1129
1127
 
@@ -1131,31 +1129,81 @@ _fieldFunction.field[ns.ui('Choice').uri] = function (dom, container, already, s
1131
1129
  opts.mint = '* Create new *'; // @@ could be better
1132
1130
  }
1133
1131
 
1132
+ var multiSelect = kb.any(form, ui('multiselect')); // Optional
1133
+
1134
+ if (multiSelect) opts.multiSelect = true;
1134
1135
  var selector;
1135
1136
 
1136
1137
  rhs.refresh = function () {
1137
- var selectorOptions = getSelectorOptions();
1138
- selector = makeSelectForChoice(dom, rhs, kb, subject, property, selectorOptions, uiFrom, opts, dataDoc, callbackFunction);
1138
+ // from ui:property
1139
+ var selectedOptions = kb.each(subject, property, null, dataDoc).map(function (object) {
1140
+ return object.value;
1141
+ }); // from ui:from + ui:property
1142
+
1143
+ var possibleOptions = getSelectorOptions();
1144
+ possibleOptions.push(selectedOptions);
1145
+ possibleOptions = sortByLabel(possibleOptions);
1146
+ selector = makeSelectForChoice(dom, rhs, kb, subject, property, possibleOptions, selectedOptions, uiFrom, opts, dataDoc, callbackFunction);
1139
1147
  rhs.innerHTML = '';
1140
1148
  rhs.appendChild(selector);
1149
+
1150
+ if (multiSelect) {
1151
+ var multiSelectDiv = new _multiSelect.IconicMultiSelect({
1152
+ placeholder: selector.selected,
1153
+ select: selector,
1154
+ container: rhs,
1155
+ textField: 'textField',
1156
+ valueField: 'valueField'
1157
+ });
1158
+ multiSelectDiv.init();
1159
+ multiSelectDiv.subscribe(function (event) {
1160
+ if (event.action === 'REMOVE_OPTION') {
1161
+ selectedOptions = selectedOptions.filter(function (value) {
1162
+ return value !== event.value;
1163
+ });
1164
+ }
1165
+
1166
+ if (event.action === 'CLEAR_ALL_OPTIONS') {
1167
+ selectedOptions = [];
1168
+ }
1169
+
1170
+ if (event.action === 'ADD_OPTION') {
1171
+ var stringValue = event.value + '';
1172
+
1173
+ if (stringValue.includes('Create new')) {
1174
+ var newObject = newThing(dataDoc);
1175
+ var is = [];
1176
+ is.push($rdf.st(subject, property, kb.sym(newObject), dataDoc));
1177
+ if (uiFrom) is.push($rdf.st(newObject, ns.rdf('type'), kb.sym(uiFrom), dataDoc));
1178
+
1179
+ if (subForm) {
1180
+ addSubFormChoice(dom, rhs, {}, $rdf.sym(newObject), subForm, dataDoc, function (ok, body) {
1181
+ if (ok) {
1182
+ kb.updater.update([], is, function (uri, success, errorBody) {
1183
+ if (!success) rhs.appendChild((0, _error.errorMessageBlock)(dom, 'Error updating select: ' + errorBody));
1184
+ });
1185
+ selectedOptions.push(newObject);
1186
+ if (callbackFunction) callbackFunction(ok, {
1187
+ widget: 'select',
1188
+ event: 'new'
1189
+ });
1190
+ } else {
1191
+ rhs.appendChild((0, _error.errorMessageBlock)(dom, 'Error updating data in field of select: ' + body));
1192
+ }
1193
+ });
1194
+ }
1195
+ } else selectedOptions.push(event.value);
1196
+ }
1197
+
1198
+ selector.update(selectedOptions);
1199
+ });
1200
+ }
1141
1201
  };
1142
1202
 
1143
1203
  rhs.refresh();
1144
1204
  if (selector && selector.refresh) selector.refresh();
1145
1205
  return box;
1146
1206
  };
1147
- /**
1148
- * Removes all sibling elements after specified
1149
- * @param {HTMLElement} currentElement
1150
- * @private
1151
- */
1152
-
1153
-
1154
- function removeNextSiblingsAfterElement(currentElement) {
1155
- while (currentElement.nextElementSibling) {
1156
- currentElement.nextElementSibling.remove();
1157
- }
1158
- }
1159
1207
 
1160
1208
  function addSubFormChoice(dom, selectDiv, already, subject, subForm, dataDoc, callbackFunction) {
1161
1209
  (0, _fieldFunction.fieldFunction)(dom, subForm)(dom, selectDiv, already, subject, subForm, dataDoc, callbackFunction);
@@ -1878,8 +1926,6 @@ function newThing(doc) {
1878
1926
  // @param subject - a term, the subject of the statement(s) being edited.
1879
1927
  // @param predicate - a term, the predicate of the statement(s) being edited
1880
1928
  // @param possible - a list of terms, the possible value the object can take
1881
- // @param options.multiSelect - Boolean - Whether more than one at a time is allowed
1882
- // @param options.uiMultipleInUse - signals that the ui:choise is used with a ui:multiple
1883
1929
  // @param options.mint - User may create thing if this sent to the prompt string eg "New foo"
1884
1930
  // @param options.subForm - If mint, then the form to be used for minting the new thing
1885
1931
  // @param dataDoc - The web document being edited
@@ -1887,31 +1933,29 @@ function newThing(doc) {
1887
1933
  */
1888
1934
 
1889
1935
 
1890
- function makeSelectForChoice(dom, container, kb, subject, predicate, possible, uiFrom, options, dataDoc, callbackFunction) {
1891
- var n = 0;
1892
- var uris = {}; // Count them
1936
+ function makeSelectForChoice(dom, container, kb, subject, predicate, inputPossibleOptions, selectedOptions, uiFrom, options, dataDoc, callbackFunction) {
1937
+ var optionsFromClassUIfrom = {}; // Count them
1893
1938
 
1894
1939
  var editable = kb.updater.editable(dataDoc.uri);
1895
1940
 
1896
- for (var i = 0; i < possible.length; i++) {
1897
- var sub = possible[i]; // @@ Maybe; make this so it works with blank nodes too
1941
+ for (var i = 0; i < inputPossibleOptions.length; i++) {
1942
+ var sub = inputPossibleOptions[i]; // @@ Maybe; make this so it works with blank nodes too
1943
+ // if (!sub.uri) debug.warn(`makeSelectForChoice: option does not have an uri: ${sub}, with predicate: ${predicate}`)
1898
1944
 
1899
- if (!sub.uri) debug.warn("makeSelectForOptions: option does not have an uri: ".concat(sub, ", with predicate: ").concat(predicate));
1900
- if (!sub.uri || sub.uri in uris) continue;
1901
- uris[sub.uri] = true;
1902
- n++;
1903
- } // uris is now the set of possible options
1945
+ if (!sub.uri || sub.uri in optionsFromClassUIfrom) continue;
1946
+ optionsFromClassUIfrom[sub.uri] = true;
1947
+ }
1904
1948
 
1949
+ var isEmpty = Object.keys(optionsFromClassUIfrom).length === 0;
1905
1950
 
1906
- if (n === 0 && !options.mint) {
1951
+ if (isEmpty && !options.mint) {
1907
1952
  return (0, _error.errorMessageBlock)(dom, "Can't do selector with no options, subject= " + subject + ' property = ' + predicate + '.');
1908
1953
  }
1909
1954
 
1910
- log.debug('makeSelectForOptions: dataDoc=' + dataDoc);
1955
+ log.debug('makeSelectForChoice: dataDoc=' + dataDoc);
1911
1956
 
1912
- function determinFirstSelectOption() {
1913
- var firstSelectOptionText = '--- classify ---';
1914
- var option = dom.createElement('option');
1957
+ function createDefaultSelectOptionText() {
1958
+ var firstSelectOptionText = '--- choice ---';
1915
1959
 
1916
1960
  if (predicate && !(predicate.termType === 'BlankNode')) {
1917
1961
  firstSelectOptionText = '* Select for property: ' + utils.label(predicate) + ' *';
@@ -1921,7 +1965,12 @@ function makeSelectForChoice(dom, container, kb, subject, predicate, possible, u
1921
1965
  firstSelectOptionText = '* Select for ' + utils.label(subject, true) + ' *';
1922
1966
  }
1923
1967
 
1924
- option.appendChild(dom.createTextNode(firstSelectOptionText));
1968
+ return firstSelectOptionText;
1969
+ }
1970
+
1971
+ function createDefaultSelectOption() {
1972
+ var option = dom.createElement('option');
1973
+ option.appendChild(dom.createTextNode(createDefaultSelectOptionText()));
1925
1974
  option.disabled = true;
1926
1975
  option.value = true;
1927
1976
  option.hidden = true;
@@ -1930,15 +1979,16 @@ function makeSelectForChoice(dom, container, kb, subject, predicate, possible, u
1930
1979
  }
1931
1980
 
1932
1981
  var onChange = function onChange(_e) {
1982
+ container.removeChild(container.lastChild);
1933
1983
  select.refresh();
1934
1984
  };
1935
1985
 
1936
1986
  var select = dom.createElement('select');
1937
1987
  select.setAttribute('style', style.formSelectSTyle);
1938
- if (options.multiSelect) select.setAttribute('multiSelect', 'true');
1988
+ select.setAttribute('id', 'formSelect');
1939
1989
  select.currentURI = null;
1940
1990
 
1941
- for (var uri in uris) {
1991
+ for (var uri in optionsFromClassUIfrom) {
1942
1992
  select.appendChild(createOption(uri));
1943
1993
  }
1944
1994
 
@@ -1950,11 +2000,10 @@ function makeSelectForChoice(dom, container, kb, subject, predicate, possible, u
1950
2000
  select.insertBefore(mint, select.firstChild);
1951
2001
  }
1952
2002
 
1953
- if (select.children.length === 0) select.insertBefore(determinFirstSelectOption(), select.firstChild);
1954
-
1955
- select.refresh = function () {
1956
- select.disabled = true; // unlocked any conflict we had got into
2003
+ if (select.children.length === 0) select.insertBefore(createDefaultSelectOption(), select.firstChild);
1957
2004
 
2005
+ select.update = function (newSelectedOptions) {
2006
+ selectedOptions = newSelectedOptions;
1958
2007
  var ds = [];
1959
2008
  var is = [];
1960
2009
 
@@ -1964,6 +2013,62 @@ function makeSelectForChoice(dom, container, kb, subject, predicate, possible, u
1964
2013
  }
1965
2014
  };
1966
2015
 
2016
+ var addValue = function addValue(t) {
2017
+ if (!kb.holds(subject, predicate, t, dataDoc)) {
2018
+ is.push($rdf.st(subject, predicate, t, dataDoc)); // console.log("----value added " + t)
2019
+ }
2020
+
2021
+ if (uiFrom && !kb.holds(t, ns.rdf('type'), kb.sym(uiFrom), dataDoc)) {
2022
+ is.push($rdf.st(t, ns.rdf('type'), kb.sym(uiFrom), dataDoc)); // console.log("----added type to value " + uiFrom)
2023
+ }
2024
+ };
2025
+
2026
+ var existingValues = kb.each(subject, predicate, null, dataDoc).map(function (object) {
2027
+ return object.value;
2028
+ });
2029
+
2030
+ var _iterator2 = _createForOfIteratorHelper(existingValues),
2031
+ _step2;
2032
+
2033
+ try {
2034
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
2035
+ var value = _step2.value;
2036
+ if (!containsObject(value, selectedOptions)) removeValue($rdf.sym(value));
2037
+ }
2038
+ } catch (err) {
2039
+ _iterator2.e(err);
2040
+ } finally {
2041
+ _iterator2.f();
2042
+ }
2043
+
2044
+ var _iterator3 = _createForOfIteratorHelper(selectedOptions),
2045
+ _step3;
2046
+
2047
+ try {
2048
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
2049
+ var _value = _step3.value;
2050
+ if (!(_value in existingValues)) addValue($rdf.sym(_value));
2051
+ }
2052
+ } catch (err) {
2053
+ _iterator3.e(err);
2054
+ } finally {
2055
+ _iterator3.f();
2056
+ }
2057
+
2058
+ kb.updater.update(ds, is, function (uri, ok, body) {
2059
+ if (!ok) return select.parentNode.appendChild((0, _error.errorMessageBlock)(dom, 'Error updating data in select: ' + body));
2060
+ select.refresh();
2061
+ if (callbackFunction) callbackFunction(ok, {
2062
+ widget: 'select',
2063
+ event: 'change'
2064
+ });
2065
+ });
2066
+ };
2067
+
2068
+ select.refresh = function () {
2069
+ select.disabled = true; // unlocked any conflict we had got into
2070
+
2071
+ var is = [];
1967
2072
  var newObject;
1968
2073
 
1969
2074
  for (var _i3 = 0; _i3 < select.options.length; _i3++) {
@@ -1972,7 +2077,7 @@ function makeSelectForChoice(dom, container, kb, subject, predicate, possible, u
1972
2077
  if (opt.selected && opt.AJAR_mint) {
1973
2078
  // not sure if this 'if' is used because I cannot find mintClass
1974
2079
  if (options.mintClass) {
1975
- var thisForm = promptForNew(dom, kb, subject, predicate, options.mintClass, null, dataDoc, function (ok, body) {
2080
+ var thisForm = promptForNew(dom, kb, subject, predicate, uiFrom, options.subForm, dataDoc, function (ok, body) {
1976
2081
  if (!ok) {
1977
2082
  callbackFunction(ok, body, {
1978
2083
  change: 'new'
@@ -1997,36 +2102,26 @@ function makeSelectForChoice(dom, container, kb, subject, predicate, possible, u
1997
2102
 
1998
2103
  if (!opt.AJAR_uri) continue; // a prompt or mint
1999
2104
 
2000
- if (opt.selected) select.currentURI = opt.AJAR_uri;
2001
- }
2002
-
2003
- var sel = select.subSelect; // All subclasses must also go
2004
-
2005
- while (sel && sel.currentURI) {
2006
- removeValue(kb.sym(sel.currentURI));
2007
- sel = sel.subSelect;
2008
- }
2009
-
2010
- sel = select.superSelect; // All superclasses are redundant
2105
+ if (opt.selected && containsObject(opt.AJAR_uri, selectedOptions)) {
2106
+ select.currentURI = opt.AJAR_uri;
2107
+ }
2011
2108
 
2012
- while (sel && sel.currentURI) {
2013
- removeValue(kb.sym(sel.currentURI));
2014
- sel = sel.superSelect;
2109
+ if (!containsObject(opt.AJAR_uri, selectedOptions)) opt.removeAttribute('selected');
2110
+ if (containsObject(opt.AJAR_uri, selectedOptions)) opt.setAttribute('selected', 'true');
2015
2111
  }
2016
2112
 
2017
2113
  log.info('selectForOptions: data doc = ' + dataDoc);
2018
2114
 
2019
- if (select.currentURI) {
2020
- removeNextSiblingsAfterElement(select);
2115
+ if (select.currentURI && options.subForm && !options.multiSelect) {
2021
2116
  addSubFormChoice(dom, container, {}, $rdf.sym(select.currentURI), options.subForm, dataDoc, function (ok, body) {
2022
2117
  if (ok) {
2023
- kb.updater.update(ds, is, function (uri, success, errorBody) {
2118
+ kb.updater.update([], is, function (uri, success, errorBody) {
2024
2119
  if (!success) container.appendChild((0, _error.errorMessageBlock)(dom, 'Error updating select: ' + errorBody));
2025
2120
  });
2026
2121
  if (callbackFunction) callbackFunction(ok, {
2027
2122
  widget: 'select',
2028
2123
  event: 'new'
2029
- }); // widgets.refreshTree(container)
2124
+ });
2030
2125
  } else {
2031
2126
  container.appendChild((0, _error.errorMessageBlock)(dom, 'Error updating data in field of select: ' + body));
2032
2127
  }
@@ -2039,13 +2134,17 @@ function makeSelectForChoice(dom, container, kb, subject, predicate, possible, u
2039
2134
  function createOption(uri) {
2040
2135
  var option = dom.createElement('option');
2041
2136
  var c = kb.sym(uri);
2137
+ var label;
2042
2138
 
2043
2139
  if (options.disambiguate) {
2044
- option.appendChild(dom.createTextNode(utils.labelWithOntology(c, true))); // Init. cap
2140
+ label = utils.labelWithOntology(c, true); // Init. cap
2045
2141
  } else {
2046
- option.appendChild(dom.createTextNode(utils.label(c, true))); // Init.
2142
+ label = utils.label(c, true);
2047
2143
  }
2048
2144
 
2145
+ option.appendChild(dom.createTextNode(label)); // Init.
2146
+
2147
+ option.setAttribute('value', uri);
2049
2148
  var backgroundColor = kb.any(c, kb.sym('http://www.w3.org/ns/ui#backgroundColor'));
2050
2149
 
2051
2150
  if (backgroundColor) {
@@ -2053,7 +2152,11 @@ function makeSelectForChoice(dom, container, kb, subject, predicate, possible, u
2053
2152
  }
2054
2153
 
2055
2154
  option.AJAR_uri = uri;
2056
- if (c.toString() === '' + select.currentURI) option.selected = true;
2155
+
2156
+ if (containsObject(c.value, selectedOptions)) {
2157
+ option.setAttribute('selected', 'true');
2158
+ }
2159
+
2057
2160
  return option;
2058
2161
  }
2059
2162
 
@@ -2063,4 +2166,81 @@ function makeSelectForChoice(dom, container, kb, subject, predicate, possible, u
2063
2166
 
2064
2167
  return select;
2065
2168
  } // makeSelectForChoice
2169
+
2170
+
2171
+ function containsObject(obj, list) {
2172
+ var i;
2173
+
2174
+ for (i = 0; i < list.length; i++) {
2175
+ if (list[i] === obj) {
2176
+ return true;
2177
+ }
2178
+ }
2179
+
2180
+ return false;
2181
+ } // This functions replaces the findMembersNT (thisClass) from rdflib until we fix: https://github.com/linkeddata/rdflib.js/issues/565
2182
+
2183
+ /**
2184
+ * For anything which has thisClass (or any subclass) as its type,
2185
+ * or is the object of something which has thisClass (or any subclass) as its range,
2186
+ * or subject of something which has thisClass (or any subclass) as its domain
2187
+ * We don't bother doing subproperty (yet?) as it doesn't seem to be used
2188
+ * much.
2189
+ * Get all the Classes of which we can RDFS-infer the subject is a member
2190
+ * @return a hash of URIs
2191
+ */
2192
+
2193
+
2194
+ function findMembersNT(store, thisClass, quad) {
2195
+ var len2;
2196
+ var len4;
2197
+ var m;
2198
+ var pred;
2199
+ var ref1;
2200
+ var ref2;
2201
+ var ref3;
2202
+ var ref4;
2203
+ var ref5;
2204
+ var st;
2205
+ var u;
2206
+ var seeds = {};
2207
+ seeds[thisClass.toNT()] = true;
2208
+ var members = {};
2209
+ var ref = store.transitiveClosure(seeds, store.rdfFactory.namedNode('http://www.w3.org/2000/01/rdf-schema#subClassOf'), true);
2210
+
2211
+ for (var t in ref) {
2212
+ ref1 = store.statementsMatching(null, store.rdfFactory.namedNode('http://www.w3.org/1999/02/22-rdf-syntax-ns#type'), store.fromNT(t), quad);
2213
+
2214
+ for (var i = 0, len = ref1.length; i < len; i++) {
2215
+ st = ref1[i];
2216
+ members[st.subject.toNT()] = st;
2217
+ }
2218
+
2219
+ ref2 = store.each(null, store.rdfFactory.namedNode('http://www.w3.org/2000/01/rdf-schema#domain'), store.fromNT(t), quad);
2220
+
2221
+ for (var l = 0, len1 = ref2.length; l < len1; l++) {
2222
+ pred = ref2[l];
2223
+ ref3 = store.statementsMatching(null, pred, null, quad);
2224
+
2225
+ for (m = 0, len2 = ref3.length; m < len2; m++) {
2226
+ st = ref3[m];
2227
+ members[st.subject.toNT()] = st;
2228
+ }
2229
+ }
2230
+
2231
+ ref4 = store.each(null, store.rdfFactory.namedNode('http://www.w3.org/2000/01/rdf-schema#range'), store.fromNT(t), quad);
2232
+
2233
+ for (var q = 0, len3 = ref4.length; q < len3; q++) {
2234
+ pred = ref4[q];
2235
+ ref5 = store.statementsMatching(null, pred, null, quad);
2236
+
2237
+ for (u = 0, len4 = ref5.length; u < len4; u++) {
2238
+ st = ref5[u];
2239
+ members[st.object.toNT()] = st;
2240
+ }
2241
+ }
2242
+ }
2243
+
2244
+ return members;
2245
+ }
2066
2246
  //# sourceMappingURL=forms.js.map