# Copyright 2016 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//third_party/blink/renderer/modules/modules.gni")

blink_modules_sources("nfc") {
  sources = [
    "ndef_message.cc",
    "ndef_message.h",
    "ndef_reader.cc",
    "ndef_reader.h",
    "ndef_reading_event.cc",
    "ndef_reading_event.h",
    "ndef_record.cc",
    "ndef_record.h",
    "nfc_proxy.cc",
    "nfc_proxy.h",
    "nfc_type_converters.cc",
    "nfc_type_converters.h",
  ]
  deps = [ "//third_party/blink/renderer/modules/permissions" ]
}
