Clean up crusty pasta
authorRandall Leeds <randall@apache.org>
Mon, 13 Nov 2017 00:08:38 +0000 (16:08 -0800)
committerRandall Leeds <randall@apache.org>
Mon, 13 Nov 2017 00:11:27 +0000 (16:11 -0800)
Remove some linter violations that snuck in with the pasta branch.

demo/index.html
demo/index.js
demo/search.js
packages/range/cartesian.js

index fd67f41..2e88fac 100644 (file)
@@ -16,7 +16,7 @@
         background-color: rgba(255, 255, 120, 0.5);;
         border: 0.1px solid rgba(255, 100, 0, 0.8);;
       }
-      #debugField {
+      #debug {
         width: 20rem;
         float: right;
         color: #666;
         overflow-y: scroll;
         resize: vertical;
       }
-      #debugField.error {
+      #debug.error {
         color: red;
       }
-      #selectableText, #corpus {
+      #selectable, #corpus {
         display: inline-block;
         max-width: 15em;
         padding: 1em;
     <p>
       Try select some text in the first paragraph below:
     </p>
-    <p id="selectableText">
+    <p id="selectable">
       Hello, annotated world! To annotate, or not to annotate, that is the question.
     </p>
     <p id="corpus" contenteditable="true">
       Hello, annotated world! To annotate, or not to annotate, that is the question.
     </p>
-    <pre id="debugField"></pre>
+    <pre id="debug"></pre>
     <p>
       Upon a change of selection, a
       <a href="https://www.w3.org/TR/2017/REC-annotation-model-20170223/#text-quote-selector">TextQuoteSelector</a>
index 406591a..26fd3f5 100644 (file)
@@ -13,7 +13,7 @@
  * the License.
  */
 
-/* global corpus, module */
+/* global corpus, debug, module, selectable */
 
 import '@babel/polyfill';
 import * as fragment from '@annotator/fragment-identifier';
@@ -24,55 +24,39 @@ import search from './search.js';
 
 const refresh = async () => {
   corpus.innerHTML = corpus.innerText;
+  debug.classList.remove('error');
+
   const identifier = window.location.hash.slice(1);
-  if (!identifier) {
-    debugInfo();
-    return;
-  }
+  if (!identifier) return;
+
   try {
     const { selector } = fragment.parse(identifier);
-    debugInfo(selector);
+    debug.innerText = JSON.stringify(selector, null, 2);
     const results = search(corpus, selector);
     const ranges = [];
     for await (let range of results) {
       ranges.push(range);
     }
     for (let range of ranges) {
-      try {
-        mark(range);
-      } catch (err) {
-        console.log(`Failed to highlight text: ${range.cloneContents().textContent}`)
-      }
+      mark(range);
     }
   } catch (e) {
-    debugError(e);
+    debug.classList.add('error');
+    debug.innerText = JSON.stringify(e, null, 2);
     if (e instanceof fragment.SyntaxError) return;
     else throw e;
   }
 };
 
-const debugInfo = object => {
-  const debugField = document.getElementById('debugField');
-  debugField.classList.remove('error');
-  debugField.innerText = JSON.stringify(object, null, 2);
-};
-const debugError = object => {
-  const debugField = document.getElementById('debugField');
-  debugField.classList.add('error');
-  debugField.innerText = JSON.stringify(object, null, 2);
-};
-
 document.addEventListener('DOMContentLoaded', () => {
   window.addEventListener('hashchange', refresh);
   refresh();
 });
 
-const editable = document.getElementById('corpus');
-editable.addEventListener('input', function() {
+corpus.addEventListener('input', function() {
   refresh();
 });
 
-const selectable = document.getElementById('selectableText');
 document.addEventListener('selectionchange', onSelectionChange);
 
 async function onSelectionChange() {
@@ -105,21 +89,3 @@ if (module.hot) {
     refresh
   );
 }
-
-/*
- * EXAMPLE
- * async function run() {
- *   let textSelector = createAnySelector([
- *     { type: 'TextQuoteSelector', exact: 'yes' },
- *     { type: 'TextQuoteSelector', exact: 'no' },
- *   ]);
- *
- *   let context = 'what if yes yes what no yes no yes no hurray';
- *
- *   for await (let result of textSelector(context)) {
- *     console.log(result, result.context, result.index);
- *   }
- * }
- *
- * run();
- */
index 99d2a1c..6211714 100644 (file)
@@ -33,11 +33,9 @@ async function* search(root, descriptor) {
       descriptors: [descriptor],
       context: node.nodeValue,
     });
-    console.log('Searching');
     for await (let match of matches) {
       const startIndex = match.index;
       const endIndex = startIndex + match[0].length;
-      console.log(`Match: ${startIndex}–${endIndex}, "${match[0]}"`);
       const range = document.createRange();
       range.setStart(node, startIndex);
       range.setEnd(node, endIndex);
index d7c34ce..b8711b5 100644 (file)
@@ -55,6 +55,7 @@ async function* cartesian(...iterables) {
   }
 }
 
+// eslint-disable-next-line no-unused-vars
 async function test() {
   async function* gen1() {
     yield 1;
@@ -73,6 +74,7 @@ async function test() {
 
   const cart = cartesian(gen1(), gen2(), gen3());
 
+  // eslint-disable-next-line no-unused-vars
   const expected = [
     [1, 4, 5],
     [2, 4, 5],