Download the PHP package apie/common-value-objects without Composer
On this page you can find all versions of the php package apie/common-value-objects. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download apie/common-value-objects
More information about apie/common-value-objects
Files in apie/common-value-objects
Package common-value-objects
Short Description Composer package of the apie library: common value objects
License MIT
Informations about the package common-value-objects
common-value-objects
This package is part of the Apie library. The code is maintained in a monorepo, so PR's need to be sent to the monorepo
Documentation
A set of common value object classes that can be used right away or can be used as examples how to make common value objects.
Enums
enums are just PHP enums with common values. They are fully supported by Apie.
| Enums | Description |
|---|---|
| Gender | Indicate male or female |
Identifiers
Identifiers are used by Apie entities to tell the id of an entity. To use these as identifiers for your entity, you need to extend one of these and implement the IdentifierInterface. Otherwise you can also use them as property fields on an entity or a composite value object.
Example:
| Class | Description |
|---|---|
| KebabCaseSlug | Slug in the shape of "example-slug" |
| PascalCaseSlug | Slug in the shape of "example_slug" |
| Slug | Slug in the shape of "exampleslug" |
| Uuid | Any string in the shape of an uuid |
| UuidV1 | Uuid in version 1 format |
| UuidV2 | Uuid in version 2 format |
| UuidV3 | Uuid in version 3 format |
| UuidV4 | Uuid in version 4 format |
| UuidV5 | Uuid in version 5 format |
| UuidV6 | Uuid in version 6 format |
Name value objects
Contains value objects related to names. They are very tolerant what is written in them and support unicode characters to avoid wrong assumptions about what is a valid first and last name.
| Class | Description |
|---|---|
| FirstName | First name |
| LastName | Last name |
Range value objects
Ranges often have a restriction related that for example the start should always be lower than the end. They are often a composite of 2 values.
| Class | Description |
|---|---|
| DateTimeRange | A range between dates. The first date should always be lower than the last date |
Text value objects
At first these value objects seem redundant as you wonder why you should not just use string, but the problem with using string is that it has no restriction on the length of a text. The value object will also mean you can tell an application it requires a non-empty text for example.
| Class | Description |
|---|---|
| SmallDatabaseText | A string that fits into a database varchar field (255 characters). The text will be trimmed and can be empty. |
| StrongPasswordField | A string used for passwords that are considered strong passwords. |
All versions of common-value-objects with dependencies
apie/core Version self.version
apie/country-and-phone-number Version self.version
apie/count-words Version self.version
apie/date-value-objects Version self.version
apie/regex-value-objects Version self.version
apie/text-value-objects Version self.version
devizzent/cebe-php-openapi Version ^1.1.2
egulias/email-validator Version ^4.0.2
symfony/html-sanitizer Version ^7.2