1.2.0 • Published 2 months ago

idevicedb v1.2.0

Weekly downloads
-
License
ISC
Repository
github
Last release
2 months ago

iDeviceDB

npm

Searchable collection of Apple devices.

Parameters per device: Generation, Model number ("A" Number), Bootrom, Variant, FCC ID, Internal Name, Identifier, Case Material, Color, Storage, Model

Sources:

Install

$ npm install idevicedb

Usage

In node:

var iosDevices = require("idevicedb");

In browser:

<script src="node_modules/idevicedb/dist/idevicedb.min.js"></script>
<script>
  window.iosDeviceList; // Object
</script>

.deviceTypes() : Array

Returns the device type list: airpods, apple_tv, apple_watch, homepod, ipad, ipad_air, ipad_pro, ipad_mini, iphone, ipod_touch

.devices([type]) : Array

Returns the full device list.

With optional type parameter returns the device list of the actual type.

.generations([type]) : Array

Returns the full Generation list.

With optional type parameter returns the generation list of the actual type.

.anumbers([type]) : Array

Returns the full "A" Number list.

With optional type parameter returns the "A" Number list of the actual type.

.fccids([type]) : Array

Returns the full FCC ID list.

With optional type parameter returns the FCC ID list of the actual type.

.internalNames([type]) : Array

Returns the full Internal Name list.

With optional type parameter returns the Internal Name list of the actual type.

.identifiers([type]) : Array

Returns the full Identifier list.

With optional type parameter returns the Identifier list of the actual type.

.colors([type]) : Array

Returns the full Color list.

With optional type parameter returns the Color list of the actual type.

.storages([type]) : Array

Returns the full Storage list.

With optional type parameter returns the Storage list of the actual type.

.models([type]) : Array

Returns the full Model list.

With optional type parameter returns the Model list of the actual type.

.deviceByGeneration(generation, [type], [options]) : Array

Returns a device list with matching Generation.

With optional type parameter the result is filtered by the device type.

options is an Object.

  • caseInsensitive: boolean (default false) - do not care of case type
  • contains: boolean (default false) - return partial (substring) results too

.deviceByANumber(anumber, [type], [options]) : Array

Returns a device list with matching "A" Number.

With optional type parameter the result is filtered by the device type.

.deviceByFCCID(fccid, [type], [options]) : Array

Returns a device list with matching FCC ID.

With optional type parameter the result is filtered by the device type.

.deviceByInternalName(name, [type], [options]) : Array

Returns a device list with matching Internal Name.

With optional type parameter the result is filtered by the device type.

.deviceByIdentifier(id, [type], [options]) : Array

Returns a device list with matching Identifier.

With optional type parameter the result is filtered by the device type.

.deviceByColor(color, [type], [options]) : Array

Returns a device list with matching Color.

With optional type parameter the result is filtered by the device type.

.deviceByStorage(storage, [type], [options]) : Array

Returns a device list with matching Storage.

With optional type parameter the result is filtered by the device type.

.deviceByModel(model, [type], [options]) : Array

Returns a device list with matching Model.

With optional type parameter the result is filtered by the device type.

.generationByIdentifier(id, [type]) : String

Returns the generation name with matching Identifier.

With optional type parameter the result is filtered by the device type.

Example

var iosDevices = require("idevicedb");

var deviceTypes = iosDevices.deviceTypes();
var devices = iosDevices.devices();

console.log(deviceTypes.length);
// 6

console.log(devices.length);
// 727

console.log(devices[500]);
// { Type: 'iphone',
//   Generation: 'iPhone 5c',
//   ANumber: [ 'A1456', 'A1532' ],
//   Bootrom: [ 'Bootrom 1145.3' ],
//   Variant: 'iPhone5,3',
//   FCCID: [ 'BCG‑E2644A' ],
//   InternalName: 'N48AP',
//   Identifier: 'iPhone5,3',
//   Color: 'Yellow',
//   Storage: '32 GB',
//   Model: 'MF135' }

var iphone82;

iphone82 = iosDevices.deviceByIdentifier("iPhone8,2");
console.log(iphone82.length);
// 24

iphone82 = iosDevices.deviceByIdentifier("iphone8,2", null, {
  caseInsensitive: true,
});
console.log(iphone82.length);
// 24

iphone82 = iosDevices.deviceByIdentifier("iPhone8", null, { contains: true });
console.log(iphone82.length);
// 56

var gen = iosDevices.generationByIdentifier("iPhone8,2");
console.log(gen);
// 'iPhone 6s Plus'

License

iDeviceDB is licensed under the Apache license. For more information, see the LICENSE file in this repository.

Note that this software is a continuation of a previous package called "ios-device-list", which was no longer being maintained, see ACKNOWLEDGMENTS file for more information