solid-ui 2.4.22-6ae4df24 → 2.4.22-72a79d76

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.
package/dist/main.js CHANGED
@@ -15192,8 +15192,8 @@ Object.defineProperty(exports, "__esModule", ({
15192
15192
  }));
15193
15193
  exports.versionInfo = void 0;
15194
15194
  var versionInfo = {
15195
- buildTime: '2022-05-10T15:38:52Z',
15196
- commit: '6ae4df243e825dee4607d8bde360d12bd9de6925',
15195
+ buildTime: '2022-05-12T08:02:04Z',
15196
+ commit: '72a79d76854cb0ab80dc23c045af3269a676c463',
15197
15197
  npmInfo: {
15198
15198
  'solid-ui': '2.4.22',
15199
15199
  npm: '6.14.16',
@@ -16280,6 +16280,7 @@ function openHrefInOutlineMode(e) {
16280
16280
 
16281
16281
  if (dom.outlineManager) {
16282
16282
  // @@ TODO Remove the use of document as a global object
16283
+ // TODO fix dependency cycle to solid-panes by calling outlineManager
16283
16284
  ;
16284
16285
  dom.outlineManager.GotoSubject(_solidLogic.store.sym(uri), true, undefined, true, undefined);
16285
16286
  } else if (window && window.panes && window.panes.getOutliner) {
@@ -16407,6 +16408,7 @@ function linkButton(dom, object) {
16407
16408
  b.textContent = 'Goto ' + utils.label(object);
16408
16409
  b.addEventListener('click', function (_event) {
16409
16410
  // b.parentNode.removeChild(b)
16411
+ // TODO fix dependency cycle to solid-panes by calling outlineManager
16410
16412
  ;
16411
16413
  dom.outlineManager.GotoSubject(object, true, undefined, true, undefined);
16412
16414
  }, true);
@@ -17262,10 +17264,11 @@ _fieldFunction.field[ns.ui('Form').uri] = _fieldFunction.field[ns.ui('Group').ur
17262
17264
 
17263
17265
  if (already[key]) {
17264
17266
  // been there done that
17265
- box.appendChild(dom.createTextNode('Group: see above ' + key));
17266
- var plist = [$rdf.st(subject, ns.owl('sameAs'), subject)]; // @@ need prev subject
17267
+ box.appendChild(dom.createTextNode('Group: see above ' + key)); // TODO fix dependency cycle to solid-panes by calling outlineManager
17268
+ // const plist = [$rdf.st(subject, ns.owl('sameAs'), subject)] // @@ need prev subject
17269
+ // dom.outlineManager.appendPropertyTRs(box, plist)
17270
+ // dom.appendChild(plist)
17267
17271
 
17268
- dom.outlineManager.appendPropertyTRs(box, plist);
17269
17272
  return box;
17270
17273
  }
17271
17274
 
@@ -17694,7 +17697,7 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
17694
17697
  // delete button and move buttons
17695
17698
 
17696
17699
  if (kb.updater.editable(dataDoc.uri)) {
17697
- buttons.deleteButtonWithCheck(dom, subField, utils.label(property), deleteThisItem);
17700
+ buttons.deleteButtonWithCheck(dom, subField, multipleUIlabel, deleteThisItem);
17698
17701
 
17699
17702
  if (ordered) {
17700
17703
  // Add controsl in a frame
@@ -17794,6 +17797,8 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
17794
17797
  return shim;
17795
17798
  }
17796
17799
 
17800
+ var multipleUIlabel = kb.any(form, ui('label'));
17801
+ if (!multipleUIlabel) multipleUIlabel = utils.label(property);
17797
17802
  var min = kb.any(form, ui('min')); // This is the minimum number -- default 0
17798
17803
 
17799
17804
  min = min ? 0 + min.value : 0;
@@ -17830,16 +17835,13 @@ _fieldFunction.field[ns.ui('Multiple').uri] = function (dom, container, already,
17830
17835
  if (kb.updater.editable(dataDoc.uri)) {
17831
17836
  var tail = box.appendChild(dom.createElement('div'));
17832
17837
  tail.style.padding = '0.5em';
17833
- var label = kb.any(form, ui('label'));
17834
- if (!label) label = utils.label(property, true); // Init capital
17835
-
17836
17838
  var img = tail.appendChild(dom.createElement('img'));
17837
17839
  img.setAttribute('src', plusIconURI); // plus sign
17838
17840
 
17839
17841
  img.setAttribute('style', 'margin: 0.2em; width: 1.5em; height:1.5em');
17840
- img.title = 'Click to add one or more ' + label;
17842
+ img.title = 'Click to add another ' + multipleUIlabel;
17841
17843
  var prompt = dom.createElement('span');
17842
- prompt.textContent = (values.length === 0 ? 'Add one or more ' : 'Add more ') + utils.predicateLabel(property, reverse);
17844
+ prompt.textContent = (values.length === 0 ? 'Add another ' : 'Add ') + multipleUIlabel;
17843
17845
  tail.addEventListener('click', /*#__PURE__*/function () {
17844
17846
  var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(_eventNotUsed) {
17845
17847
  return _regenerator["default"].wrap(function _callee5$(_context5) {
@@ -18136,7 +18138,7 @@ _fieldFunction.field[ns.ui('Classifier').uri] = function (dom, container, alread
18136
18138
  ** -- radio buttons
18137
18139
  ** -- auto-complete typing
18138
18140
  **
18139
- ** Todo: Deal with multiple. Maybe merge with multiple code.
18141
+ ** TODO: according to ontology ui:choice can also have ns.ui('default') - this is not implemented yet
18140
18142
  */
18141
18143
 
18142
18144
 
@@ -18145,6 +18147,9 @@ _fieldFunction.field[ns.ui('Choice').uri] = function (dom, container, already, s
18145
18147
  var kb = _solidLogic.store;
18146
18148
  var formDoc = form.doc ? form.doc() : null; // @@ if blank no way to know
18147
18149
 
18150
+ var uiMultipleInUse = false; // this signals to ui:choice that it is part of a ui:multiple
18151
+
18152
+ var multiSelect = false;
18148
18153
  var p;
18149
18154
  var box = dom.createElement('div');
18150
18155
  box.setAttribute('class', 'choiceBox'); // Set flexDirection column?
@@ -18175,20 +18180,24 @@ _fieldFunction.field[ns.ui('Choice').uri] = function (dom, container, already, s
18175
18180
 
18176
18181
  var possible = [];
18177
18182
  var possibleProperties;
18178
- var multiple = false;
18179
18183
  var firstSelectOptionText = '* Select for ' + utils.label(subject, true) + ' *'; // if we do NOT have a container it means it is a ui:Multiple
18180
18184
  // only important for the first option text in select
18181
18185
 
18182
18186
  if (!container) {
18183
- multiple = true;
18187
+ uiMultipleInUse = true;
18184
18188
  firstSelectOptionText = utils.label(subject, true);
18185
18189
  }
18186
18190
 
18191
+ if (subject.termType === 'BlankNode') {
18192
+ firstSelectOptionText = '* Select for ' + utils.label(property) + ' *';
18193
+ }
18194
+
18187
18195
  var opts = {
18188
18196
  form: form,
18189
18197
  subForm: subForm,
18190
- multiple: multiple,
18198
+ multiSelect: multiSelect,
18191
18199
  firstSelectOptionText: firstSelectOptionText,
18200
+ uiMultipleInUse: uiMultipleInUse,
18192
18201
  disambiguate: false
18193
18202
  };
18194
18203
  possible = kb.each(undefined, ns.rdf('type'), uiFrom, formDoc);
@@ -18474,7 +18483,8 @@ function promptForNew(dom, kb, subject, predicate, theClass, form, dataDoc, call
18474
18483
  b.setAttribute('type', 'button');
18475
18484
  b.setAttribute('style', 'float: right;');
18476
18485
  b.innerHTML = 'Goto ' + utils.label(theClass);
18477
- b.addEventListener('click', function (_e) {
18486
+ b.addEventListener('click', // TODO fix dependency cycle to solid-panes by calling outlineManager
18487
+ function (_e) {
18478
18488
  dom.outlineManager.GotoSubject(theClass, true, undefined, true, undefined);
18479
18489
  }, false);
18480
18490
  return box;
@@ -18609,9 +18619,10 @@ function makeDescription(dom, kb, subject, predicate, dataDoc, callbackFunction)
18609
18619
  // @param subject - a term, the subject of the statement(s) being edited.
18610
18620
  // @param predicate - a term, the predicate of the statement(s) being edited
18611
18621
  // @param possible - a list of terms, the possible value the object can take
18612
- // @param options.multiple - Boolean - Whether more than one at a time is allowed
18622
+ // @param options.multiSelect - Boolean - Whether more than one at a time is allowed
18613
18623
  // @param options.firstSelectOptionText - a string to be displayed as the
18614
- // option for none selected (for non multiple)
18624
+ // option for none selected (for non multiSelect)
18625
+ // @param options.uiMultipleInUse - signals that the ui:choise is used with a ui:multiple
18615
18626
  // @param options.mint - User may create thing if this sent to the prompt string eg "New foo"
18616
18627
  // @param options.subForm - If mint, then the form to be used for minting the new thing
18617
18628
  // @param dataDoc - The web document being edited
@@ -18748,8 +18759,8 @@ function makeSelectForOptions(dom, kb, subject, predicate, possible, uiFrom, opt
18748
18759
  };
18749
18760
 
18750
18761
  var select = dom.createElement('select');
18751
- select.setAttribute('style', style.formSelectSTyle); // if (options.multiple) select.setAttribute('multiple', 'true') // use case merged with ui:Multiple
18752
-
18762
+ select.setAttribute('style', style.formSelectSTyle);
18763
+ if (options.multiSelect) select.setAttribute('multiSelect', 'true');
18753
18764
  select.currentURI = null;
18754
18765
 
18755
18766
  select.refresh = function () {
@@ -18800,7 +18811,7 @@ function makeSelectForOptions(dom, kb, subject, predicate, possible, uiFrom, opt
18800
18811
  select.insertBefore(mint, select.firstChild);
18801
18812
  }
18802
18813
 
18803
- if (!select.currentURI && options.multiple) {
18814
+ if (!select.currentURI && options.uiMultipleInUse) {
18804
18815
  var prompt = dom.createElement('option');
18805
18816
  prompt.appendChild(dom.createTextNode(options.firstSelectOptionText));
18806
18817
  prompt.disabled = true;
@@ -18826,11 +18837,11 @@ function makeSelectForOptions(dom, kb, subject, predicate, possible, uiFrom, opt
18826
18837
  function makeSelectForCategory(dom, kb, subject, category, dataDoc, callbackFunction) {
18827
18838
  var du = kb.any(category, ns.owl('disjointUnionOf'));
18828
18839
  var subs;
18829
- var multiple = false;
18840
+ var multiSelect = false;
18830
18841
 
18831
18842
  if (!du) {
18832
18843
  subs = kb.each(undefined, ns.rdfs('subClassOf'), category);
18833
- multiple = true;
18844
+ multiSelect = true;
18834
18845
  } else {
18835
18846
  subs = du.elements;
18836
18847
  }
@@ -18838,15 +18849,15 @@ function makeSelectForCategory(dom, kb, subject, category, dataDoc, callbackFunc
18838
18849
  log.debug('Select list length ' + subs.length);
18839
18850
 
18840
18851
  if (subs.length === 0) {
18841
- return (0, _error.errorMessageBlock)(dom, "Can't do " + (multiple ? 'multiple ' : '') + 'selector with no subclasses of category: ' + category);
18852
+ return (0, _error.errorMessageBlock)(dom, "Can't do " + (multiSelect ? 'multiple ' : '') + 'selector with no subclasses of category: ' + category);
18842
18853
  }
18843
18854
 
18844
18855
  if (subs.length === 1) {
18845
- return (0, _error.errorMessageBlock)(dom, "Can't do " + (multiple ? 'multiple ' : '') + 'selector with only 1 subclass of category: ' + category + ':' + subs[1]);
18856
+ return (0, _error.errorMessageBlock)(dom, "Can't do " + (multiSelect ? 'multiple ' : '') + 'selector with only 1 subclass of category: ' + category + ':' + subs[1]);
18846
18857
  }
18847
18858
 
18848
18859
  return makeSelectForOptions(dom, kb, subject, ns.rdf('type'), subs, null, {
18849
- multiple: multiple
18860
+ multiSelect: multiSelect
18850
18861
  }, dataDoc, callbackFunction);
18851
18862
  }
18852
18863
  /** Make SELECT element to select subclasses recurively