# gutenberg/23.2.0/build/modules/block-library/file/view.js

Gutenberg, version 23.2.0. 46 lines.

- Page: https://pluginprobe.com/plugins/gutenberg/23.2.0/code/build/modules/block-library/file/view.js
- Raw: https://pluginprobe.com/plugins/gutenberg/23.2.0/raw/build/modules/block-library/file/view.js

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/gutenberg/23.2.0/code/build/modules/block-library/file/view.js#L10-L20`.

```javascript
// packages/block-library/build-module/file/view.mjs
import { store } from "@wordpress/interactivity";

// packages/block-library/build-module/file/utils/index.mjs
var browserSupportsPdfs = () => {
  if (window.navigator.pdfViewerEnabled) {
    return true;
  }
  if (window.navigator.userAgent.indexOf("Mobi") > -1) {
    return false;
  }
  if (window.navigator.userAgent.indexOf("Android") > -1) {
    return false;
  }
  if (window.navigator.userAgent.indexOf("Macintosh") > -1 && window.navigator.maxTouchPoints && window.navigator.maxTouchPoints > 2) {
    return false;
  }
  if (!!(window.ActiveXObject || "ActiveXObject" in window) && !(createActiveXObject("AcroPDF.PDF") || createActiveXObject("PDF.PdfCtrl"))) {
    return false;
  }
  return true;
};
var createActiveXObject = (type) => {
  let ax;
  try {
    ax = new window.ActiveXObject(type);
  } catch {
    ax = void 0;
  }
  return ax;
};

// packages/block-library/build-module/file/view.mjs
store(
  "core/file",
  {
    state: {
      get hasPdfPreview() {
        return browserSupportsPdfs();
      }
    }
  },
  { lock: true }
);
//# sourceMappingURL=view.js.map

```
