All files / lib index.js

97.33% Statements 73/75
75% Branches 3/4
100% Functions 0/0
97.33% Lines 73/75

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 768x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 1x 1x 1x     1x 8x 8x 8x 8x 8x 1x 1x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x 8x  
import createTree from './tree/create';
import parseNewTree from './tasks/parse-new-tree';
import reconcileTrees from './tasks/reconcile-trees';
import internals from './util/internals';
import parse from './util/parse';
import { $$diffHTML } from './util/symbols';
import globalThis from './util/global';
import innerHTML from './inner-html';
import outerHTML from './outer-html';
import toString from './to-string';
import { defaultTasks } from './transaction';
import html from './html';
import release from './release';
import use from './use';
import { addTransitionState, removeTransitionState } from './transition';
import { __VERSION__ as VERSION } from './version';
 
// At startup inject the HTML parser into the default set of tasks.
defaultTasks.splice(defaultTasks.indexOf(reconcileTrees), 0, parseNewTree);
 
// Add build flavor internals when executed.
internals.parse = parse;
internals.VERSION = VERSION;
 
// Build up the full public API.
const api = {};
 
api.VERSION = VERSION;
api.addTransitionState = addTransitionState;
api.removeTransitionState = removeTransitionState;
api.release = release;
api.createTree = createTree;
api.use = use;
api.outerHTML = outerHTML;
api.innerHTML = innerHTML;
api.toString = toString;
api.html = html;
api.Internals = internals;
 
/** @type {any} */
const global = globalThis;
 
// Bind the API into the global scope. Allows middleware and other code to
// reference the core API. Once import maps are more mainstream, we can
// deprecate this.
if ($$diffHTML in globalThis) {
  const existingApi = global[$$diffHTML];
 
  if (VERSION !== existingApi.VERSION) {
    console.log(`Loaded ${VERSION} after ${existingApi.VERSION}`);
  }
}
 
global[$$diffHTML] = api;
 
// Automatically hook up to DevTools if they are present.
if (global.devTools) {
  global.unsubscribeDevTools = use(global.devTools(internals));
}
 
export {
  VERSION,
  addTransitionState,
  removeTransitionState,
  release,
  createTree,
  use,
  outerHTML,
  innerHTML,
  toString,
  html,
  internals as Internals,
};
 
export default api;