browser-index.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /**
  2. * Copyright 2013 vtt.js Contributors
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. // Default exports for Node. Export the extended versions of VTTCue and
  17. // VTTRegion in Node since we likely want the capability to convert back and
  18. // forth between JSON. If we don't then it's not that big of a deal since we're
  19. // off browser.
  20. var window = require('global/window');
  21. var vttjs = module.exports = {
  22. WebVTT: require("./vtt.js"),
  23. VTTCue: require("./vttcue.js"),
  24. VTTRegion: require("./vttregion.js")
  25. };
  26. window.vttjs = vttjs;
  27. window.WebVTT = vttjs.WebVTT;
  28. var cueShim = vttjs.VTTCue;
  29. var regionShim = vttjs.VTTRegion;
  30. var nativeVTTCue = window.VTTCue;
  31. var nativeVTTRegion = window.VTTRegion;
  32. vttjs.shim = function() {
  33. window.VTTCue = cueShim;
  34. window.VTTRegion = regionShim;
  35. };
  36. vttjs.restore = function() {
  37. window.VTTCue = nativeVTTCue;
  38. window.VTTRegion = nativeVTTRegion;
  39. };
  40. if (!window.VTTCue) {
  41. vttjs.shim();
  42. }