Skip to content

AIDC Toolkit / GS1 / SerializableNumericIdentifierCreator

Class: SerializableNumericIdentifierCreator ​

Defined in: src/serializable-numeric-identifier-creator.ts:10

Serializable numeric identifier creator.

Extends ​

Properties ​

create() ​

create: <TTransformerInput>(valueOrValues, sparse?) => TransformerOutput<TTransformerInput, string>

Defined in: src/numeric-identifier-creator.ts:45

Create identifier(s) with reference(s) based on numeric value(s). The value(s) is/are converted to references of the appropriate length using NUMERIC_CREATOR.

Type Parameters ​

TTransformerInput ​

TTransformerInput extends TransformerInput<number | bigint>

Transformer input type.

Parameters ​

valueOrValues ​

TTransformerInput

Numeric value(s).

sparse? ​

boolean

If true, the value(s) are mapped to a sparse sequence resistant to discovery. Default is false.

Returns ​

TransformerOutput<TTransformerInput, string>

Identifier(s).

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).create


createAll() ​

createAll: () => Iterable<string>

Defined in: src/numeric-identifier-creator.ts:57

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.

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).createAll

Constructors ​

Constructor ​

abstract new SerializableNumericIdentifierCreator(...args): SerializableNumericIdentifierCreator

Defined in: node_modules/@aidc-toolkit/core/dist/type.d.ts:37

Parameters ​

args ​

[PrefixProvider, "GRAI"] | [PrefixProvider, "GDTI"] | [PrefixProvider, "GCN"]

Returns ​

SerializableNumericIdentifierCreator

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).constructor

Accessors ​

serialComponentLength ​

Get Signature ​

get serialComponentLength(): number

Defined in: src/serializable-numeric-identifier-validator.ts:77

Get the serial component length.

Returns ​

number

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).serialComponentLength


serialComponentCharacterSet ​

Get Signature ​

get serialComponentCharacterSet(): ContentCharacterSet

Defined in: src/serializable-numeric-identifier-validator.ts:84

Get the serial component character set.

Returns ​

ContentCharacterSet

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).serialComponentCharacterSet


serialComponentValidation ​

Get Signature ​

get protected serialComponentValidation(): CharacterSetValidation

Defined in: src/serializable-numeric-identifier-validator.ts:91

Get the serial component validation parameters.

Returns ​

CharacterSetValidation

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).serialComponentValidation


serialComponentCreator ​

Get Signature ​

get serialComponentCreator(): CharacterSetCreator

Defined in: src/serializable-numeric-identifier-validator.ts:98

Get the serial component creator.

Returns ​

CharacterSetCreator

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).serialComponentCreator


leaderType ​

Get Signature ​

get leaderType(): IdentifierTypeDescriptor<TNumericIdentifierType>["leaderType"]

Defined in: src/numeric-identifier-validator.ts:52

Inherit Doc ​
Returns ​

IdentifierTypeDescriptor<TNumericIdentifierType>["leaderType"]

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).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"]

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).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"]

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).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"]

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).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"]

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).referenceCharacterSet


referenceCreator ​

Get Signature ​

get referenceCreator(): CharacterSetCreator

Defined in: src/identifier-validator.ts:96

Get the reference creator.

Returns ​

CharacterSetCreator

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).referenceCreator


capacity ​

Get Signature ​

get capacity(): number

Defined in: src/numeric-identifier-creator.ts:17

Get the capacity (10**referenceLength).

Returns ​

number

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).capacity


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

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).tweak


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 ​

PrefixProvider

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).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 ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).prefix


referenceLength ​

Get Signature ​

get referenceLength(): number

Defined in: src/identifier-creator.ts:32

Get the reference length.

Returns ​

number

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).referenceLength

Methods ​

createSerialized() ​

createSerialized<TTransformerInput>(value, serialComponentOrComponents, sparse?): TransformerOutput<TTransformerInput, string>

Defined in: src/serializable-numeric-identifier-creator.ts:79

Create serialized identifier(s) with a reference based on a numeric value concatenated with serial component(s). The value is converted to a reference of the appropriate length using NUMERIC_CREATOR.

Type Parameters ​

TTransformerInput ​

TTransformerInput extends TransformerInput<string>

Transformer input type.

Parameters ​

value ​

number

Numeric value of the reference.

serialComponentOrComponents ​

TTransformerInput

Serial component(s).

sparse? ​

boolean

If true, the value is mapped to a sparse sequence resistant to discovery. Default is false.

Returns ​

TransformerOutput<TTransformerInput, string>

Serialized identifiers.


concatenate() ​

concatenate<TTransformerInput>(baseIdentifier, serialComponentOrComponents): TransformerOutput<TTransformerInput, string>

Defined in: src/serializable-numeric-identifier-creator.ts:98

Concatenate a base identifier with serial component(s).

Type Parameters ​

TTransformerInput ​

TTransformerInput extends TransformerInput<string>

Transformer input type.

Parameters ​

baseIdentifier ​

string

Base identifier.

serialComponentOrComponents ​

TTransformerInput

Serial component(s).

Returns ​

TransformerOutput<TTransformerInput, string>

Serialized identifier(s).


validate() ​

Inherit Doc ​

Call Signature ​

validate(identifier, validation?): void

Defined in: src/serializable-numeric-identifier-validator.ts:105

Parameters ​
identifier ​

string

validation? ​

IdentifierValidation

Returns ​

void

Inherited from ​

SerializableNumericIdentifierValidator.validate

Call Signature ​

validate(identifier, validation?): void

Defined in: src/numeric-identifier-validator.ts:59

Parameters ​
identifier ​

string

validation? ​

NumericIdentifierValidation

Returns ​

void

Inherit Doc ​
Inherited from ​

SerializableNumericIdentifierValidator.validate


split() ​

split(identifier, validation?): SerializableNumericIdentifierSplit

Defined in: src/serializable-numeric-identifier-validator.ts:125

Split a serializable numeric identifier into its component parts.

Parameters ​

identifier ​

string

Identifier.

validation? ​

IdentifierValidation

Identifier validation parameters.

Returns ​

SerializableNumericIdentifierSplit

Base identifier and serial component (possibly empty) as object.

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).split


padIdentifier() ​

protected padIdentifier(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 ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).padIdentifier


validatePrefix() ​

protected validatePrefix(partialIdentifier): void

Defined in: src/identifier-validator.ts:124

Validate the prefix within an identifier.

Parameters ​

partialIdentifier ​

string

Partial identifier.

Returns ​

void

Inherited from ​

MixinAbstractNonGTINNumericIdentifierCreator< SerializableNumericIdentifierType >(SerializableNumericIdentifierValidator).validatePrefix