AIDC Toolkit / GS1 / NumericIdentifierCreator
Interface: NumericIdentifierCreator<TNumericIdentifierType>
Defined in: src/numeric-identifier-creator.ts:13
Numeric identifier creator. Creates one or many numeric identifiers.
Extends
NumericIdentifierValidator<TNumericIdentifierType>.IdentifierCreator<TNumericIdentifierType,NumericIdentifierValidation>
Extended by
Type Parameters
TNumericIdentifierType
TNumericIdentifierType extends NumericIdentifierType = NumericIdentifierType
Numeric identifier type type.
Properties
create()
create: {(
value,sparse?):string; (values,sparse?):Iterable<string>; }
Defined in: src/numeric-identifier-creator.ts:29
Call Signature
(
value,sparse?):string
Create an identifier with a reference based on a numeric value. The value is converted to a reference of the appropriate length using NUMERIC_CREATOR.
Parameters
value
Numeric value.
number | bigint
sparse?
boolean
If true, the value is mapped to a sparse sequence resistant to discovery.
Returns
string
Identifier.
Call Signature
(
values,sparse?):Iterable<string>
Create identifiers with references based on numeric values. The values are converted to references of the appropriate length using NUMERIC_CREATOR.
Parameters
values
Iterable<number | bigint>
Numeric values.
sparse?
boolean
If true, the values are mapped to a sparse sequence resistant to discovery.
Returns
Iterable<string>
Identifiers.
createAll()
createAll: () =>
Iterable<string>
Defined in: src/numeric-identifier-creator.ts:71
Create all identifiers for the prefix from 0 to capacity - 1.
The implementation creates the strings only as needed using an internal generator function. Although the result is equivalent to calling creator.create(new Sequence(0, creator.capacity)), this method is significantly faster.
Returns
Iterable<string>
All identifiers for the prefix.
Accessors
capacity
Get Signature
get capacity():
number
Defined in: src/numeric-identifier-creator.ts:17
Get the capacity (10**referenceLength).
Returns
number
tweak
Get Signature
get tweak():
bigint
Defined in: src/numeric-identifier-creator.ts:22
Get the tweak for sparse creation.
Returns
bigint
Set Signature
set tweak(
value):void
Defined in: src/numeric-identifier-creator.ts:27
Set the tweak for sparse creation.
Parameters
value
bigint
Returns
void
leaderType
Get Signature
get leaderType():
IdentifierTypeDescriptor<TNumericIdentifierType>["leaderType"]
Defined in: src/numeric-identifier-validator.ts:52
Leader type.
Returns
IdentifierTypeDescriptor<TNumericIdentifierType>["leaderType"]
Leader type.
Inherited from
NumericIdentifierValidator.leaderType
identifierType
Get Signature
get identifierType():
IdentifierTypeDescriptor<TIdentifierType>["identifierType"]
Defined in: src/identifier-validator.ts:65
Get the identifier type. Per the GS1 General Specifications, the identifier type determines the remaining properties.
Returns
IdentifierTypeDescriptor<TIdentifierType>["identifierType"]
Identifier type. Per the GS1 General Specifications, the identifier type determines the remaining properties.
Inherited from
NumericIdentifierValidator.identifierType
prefixType
Get Signature
get prefixType():
IdentifierTypeDescriptor<TIdentifierType>["prefixType"]
Defined in: src/identifier-validator.ts:73
Get the prefix type supported by the identifier type. For all identifier types except the GTIN, this is a GS1 Company Prefix. For the GTIN, the prefix type determines the length.
Returns
IdentifierTypeDescriptor<TIdentifierType>["prefixType"]
Prefix type supported by the identifier type. For all identifier types except the GTIN, this is a GS1 Company Prefix. For the GTIN, the prefix type determines the length.
Inherited from
NumericIdentifierValidator.prefixType
length
Get Signature
get length():
IdentifierTypeDescriptor<TIdentifierType>["length"]
Defined in: src/identifier-validator.ts:82
Get the length. For numeric identifier types, the length is fixed; for alphanumeric identifier types, the length is the maximum.
Returns
IdentifierTypeDescriptor<TIdentifierType>["length"]
Length. For numeric identifier types, the length is fixed; for non-numeric identifier types, the length is the maximum.
Inherited from
NumericIdentifierValidator.length
referenceCharacterSet
Get Signature
get referenceCharacterSet():
IdentifierTypeDescriptor<TIdentifierType>["referenceCharacterSet"]
Defined in: src/identifier-validator.ts:89
Get the reference character set.
Returns
IdentifierTypeDescriptor<TIdentifierType>["referenceCharacterSet"]
Reference character set.
Inherited from
NumericIdentifierValidator.referenceCharacterSet
referenceCreator
Get Signature
get referenceCreator():
CharacterSetCreator
Defined in: src/identifier-validator.ts:96
Get the reference creator.
Returns
CharacterSetCreator
Inherited from
NumericIdentifierValidator.referenceCreator
prefixProvider
Get Signature
get prefixProvider():
PrefixProvider
Defined in: src/identifier-creator.ts:21
Get the prefix provider to which this identifier creator is bound.
Returns
Inherited from
IdentifierCreator.prefixProvider
prefix
Get Signature
get prefix():
string
Defined in: src/identifier-creator.ts:27
Get the prefix, equivalent to calling prefixProvider.prefix for a GTIN or prefixProvider.gs1CompanyPrefix for all other identifier types.
Returns
string
Inherited from
referenceLength
Get Signature
get referenceLength():
number
Defined in: src/identifier-creator.ts:32
Get the reference length.
Returns
number
Inherited from
IdentifierCreator.referenceLength
Methods
validate()
validate(
identifier,validation?):void
Defined in: src/numeric-identifier-validator.ts:59
Validate an identifier and throw an error if validation fails.
Parameters
identifier
string
Identifier.
validation?
Identifier validation parameters.
Returns
void
Inherited from
NumericIdentifierValidator.validate
padIdentifier()
protectedpadIdentifier(identifier,positionOffset?):string
Defined in: src/identifier-validator.ts:113
Pad an identifier on the left with zero-value character for validation purposes. This is done to align an identifier with a position offset for any error message that may be thrown by the reference validator.
Parameters
identifier
string
Identifier.
positionOffset?
number
Position offset within a larger string.
Returns
string
Padded identifier.
Inherited from
NumericIdentifierValidator.padIdentifier
validatePrefix()
protectedvalidatePrefix(partialIdentifier):void
Defined in: src/identifier-validator.ts:124
Validate the prefix within an identifier.
Parameters
partialIdentifier
string
Partial identifier.
Returns
void