idevicedb
v1.2.0
Published
Searchable collection of Apple devices
Downloads
35
Maintainers
Readme
iDeviceDB
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:
- https://en.wikipedia.org/wiki/List_of_iOS_devices
- https://www.theiphonewiki.com/wiki/Models
- https://developer.apple.com/reference/uikit/uidevice
- https://support.apple.com/en-ph/HT201296
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 typecontains
: 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