1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// Applies DomDistillerJs to the content of the page and returns a
6// DomDistillerResults (as a javascript object/dict).
7(function() {
8  try {
9    // The generated domdistiller.js accesses the window object only explicitly
10    // via the window name. So, we create a new object with the normal window
11    // object as its prototype and initialize the domdistiller.js with that new
12    // context so that it doesn't change the real window object.
13    function initialize(window) {
14      // This include will be processed at build time by grit.
15      <include src="../../../../third_party/dom_distiller_js/package/js/domdistiller.js"/>
16    }
17    context = Object.create(window);
18    initialize(context);
19
20    // The OPTIONS placeholder will be replaced with the DomDistillerOptions at
21    // runtime.
22    res = context.com.dom_distiller.DomDistiller.applyWithOptions($$OPTIONS);
23    return res;
24  } catch (e) {
25    window.console.error("Error during distillation: " + e);
26    if (e.stack != undefined) window.console.error(e.stack);
27  }
28  return undefined;
29})()
30