diff --git a/README-ru_RU.md b/README-ru_RU.md index 6ceeb9c..fafb912 100644 --- a/README-ru_RU.md +++ b/README-ru_RU.md @@ -1,7 +1,25 @@ +
+Compass logo +

+
+

+
+Создавайте повторно используемые приложения. +
+Библиотека с открытым исходным кодом. +

+
+ +
+ [![codecov](https://codecov.io/gh/vinogradsoft/compass/graph/badge.svg?token=S1XRZ1GEY8)](https://codecov.io/gh/vinogradsoft/compass) -# Compass + + +
-> Compass - это библиотека, предназначенная для работы с URL-адресами и путями к файлам на жестком диске. В ее состав +## Что такое Compass? + +> 👉 Compass - это библиотека, предназначенная для работы с URL-адресами и путями к файлам на жестком диске. В ее состав > входят инструменты для упрощения манипуляций с этими данными. Цель библиотеки - облегчить работу с URL-адресами и > данными о расположении файлов. @@ -31,7 +49,7 @@ php composer require vinogradsoft/compass "^1.0" ## Компонент URL -### Быстрый старт +### 🚀 Быстрый старт ```php
new URL: ',$url; #http://xn--h1alffa9f.xn--p1ai - метода `$url->setAll(array $parts);` - методов отвечающих за конкретную часть Url (как показано в быстром старте). -### Примеры +### ⚡ Примеры -#### **Через конструктор** +#### **👉 Через конструктор** ```php $url = new Url('http://grigor:password@vinograd.soft:8080/path/to/resource?query=value#fragment'); ``` -#### **С помощью метода `$url->setSource(string $src);`** +#### **👉 С помощью метода `$url->setSource(string $src);`** ```php $url->setSource('http://grigor:password@vinograd.soft:8080/path/to/resource?query=value#fragment'); ``` -#### **С помощью метода `$url->setAll(array $parts);`** +#### **👉 С помощью метода `$url->setAll(array $parts);`** ```php $url->setAll([ @@ -120,7 +138,7 @@ $url->setAll([ ]); ``` -#### **С помощью методов отвечающих за конкретную часть Url.** +#### **👉 С помощью методов отвечающих за конкретную часть Url.** ```php $url->setScheme('http')->setUser('grigor')->setPassword('password')->setHost('vinograd.soft') @@ -131,7 +149,7 @@ $url->setScheme('http')->setUser('grigor')->setPassword('password')->setHost('vi В первых двух вариантах суффикс не распознается. В таких случаях суффикс необходимо установить отдельным методом `$url->setSuffix(.json);`, только так вы сможете им управлять. -> Суффикс не анализируется, так как он может быть любой строкой, и не обязательно начинаться с точки. Если вы передаете +> ❗ Суффикс не анализируется, так как он может быть любой строкой, и не обязательно начинаться с точки. Если вы передаете > URL с суффиксом, то он становится частью path. ### Применение изменений @@ -146,7 +164,7 @@ $url->setScheme('http')->setUser('grigor')->setPassword('password')->setHost('vi ### Стратегии обновления -> ***Стратегия обновления*** - это объект, который объединяет все входные данные для создания итогового URL-адреса. +> 📢 ***Стратегия обновления*** - это объект, который объединяет все входные данные для создания итогового URL-адреса. > Этот объект должен быть реализацией интерфейса `Compass\UrlStrategy`. В системе, класс, который выполняет эту функцию, > называется `Compass\DefaultUrlStrategy`.
@@ -172,7 +190,7 @@ $url->setScheme('http')->setUser('grigor')->setPassword('password')->setHost('vi участок для которого был передан параметр. После вызова метода `$url->updateSource();` в работу включаются соответствующие методы стратегии. -> Важно запомнить, что в объекте `Compass\Url` хранятся исходные части, которые передал пользователь и результаты работы +> ❗ Важно запомнить, что в объекте `Compass\Url` хранятся исходные части, которые передал пользователь и результаты работы > каждого метода стратегии. Выполнение методов можно поделить условно на три уровня. @@ -233,7 +251,7 @@ $relativeUrlState &= ~Url::QUERY_STATE; Остальными участками можно манипулировать аналогичным способом, исключением является только `$schemeState` ему нужно присвоить булево значение. -### Пример создания своей стратегии +### ⚡ Пример создания своей стратегии При построении своего процесса обновления URL, иногда требуется, чтобы выполнился метод который на основе текущего состояния не выполниться. В таких случаях используется дополнительный метод `forceUnlockMethod(...)` в котором можно @@ -322,11 +340,11 @@ src и другие атрибуты этого типа). ## Компонент PATH -`Compass\Path` можно охарактеризовать как объектное представление пути к файлу. Он оперирует строкой пути не +👉 `Compass\Path` можно охарактеризовать как объектное представление пути к файлу. Он оперирует строкой пути не опираясь на реальную файловую систему. Компонент так же как и `Compass\Url` имеет стратегию обновления, которая включает в себя один метод `updatePath()`. Важно отметить, что этот компонент не имеет состояний. -### Демонстрация методов +### 🚀 Демонстрация методов ```php ', $path->getLast(); # file.v ``` php composer tests ``` +## Содействие -### Содействие Пожалуйста, смотрите [ВКЛАД](CONTRIBUTING.md) для получения подробной информации. -### Лицензия -Лицензия MIT (MIT). Пожалуйста, смотрите [файл лицензии](LICENSE) для получения дополнительной информации. \ No newline at end of file +## Лицензия + +Лицензия MIT (MIT). Пожалуйста, смотрите [файл лицензии](LICENSE) для получения дополнительной информации. diff --git a/README.md b/README.md index eea6f20..92dd290 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,28 @@ +
+Compass logo +

+
+

+
+Create reusable applications. +
+Open source library. +

+
+ +
+ [![codecov](https://codecov.io/gh/vinogradsoft/compass/graph/badge.svg?token=S1XRZ1GEY8)](https://codecov.io/gh/vinogradsoft/compass) -# Compass + + +
+ +## What is Compass? -> Compass is a library designed to work with URLs and hard disk file paths. It includes tools to simplify manipulation +> 👉 Compass is a library designed to work with URLs and hard disk file paths. It includes tools to simplify manipulation > of this data. The goal of the library is to facilitate working with URLs and data on file locations. -## General information +## General Information Compass can be used in various PHP applications to process file paths and URLs. It includes two main components: `Compass\Path` and `Compass\Url`. Both of these components are separate objects and offer a set of methods for simple @@ -27,7 +45,7 @@ Requires PHP 8.0 or newer. ## URL Component -### Quick Start +### 🚀 Quick Start ```php setSource('http://grigor:password@vinograd.soft:8080/path/to/resource?query=value#fragment'); ``` -#### **Using the `setAll` method** +#### **👉 Using the `setAll` method** ```php $url->setAll([ @@ -116,7 +134,7 @@ $url->setAll([ ]); ``` -#### **Using methods responsible for a specific part of Url.** +#### **👉 Using methods responsible for a specific part of Url.** ```php $url->setScheme('http')->setUser('grigor')->setPassword('password')->setHost('vinograd.soft') @@ -127,7 +145,7 @@ $url->setScheme('http')->setUser('grigor')->setPassword('password')->setHost('vi In the first two options the suffix is not recognized. In such cases, the suffix must be set using a separate `$url->setSuffix(.json);` method, this is the only way you can manage it. -> The suffix is not parsed since it could be any string and does not have to start with a dot. If you pass a URL with a +> ❗ The suffix is not parsed since it could be any string and does not have to start with a dot. If you pass a URL with a > suffix, it becomes part of the `path`. ### Applying Changes @@ -142,7 +160,7 @@ After the parameters have been applied, you can get the updated result using the ### Upgrade Strategies -> An update strategy is an object that combines all inputs to create a final URL. This object must be an implementation +> 📢 An update strategy is an object that combines all inputs to create a final URL. This object must be an implementation > of the `Compass\UrlStrategy` interface. In the system, the class that performs this function is called > `Compass\DefaultUrlStrategy`. @@ -168,7 +186,7 @@ By setting any parameter for a URL, the system changes the state of the section, the parameter was passed. After calling the `$url->updateSource();` method Appropriate strategy methods are included in the work. -> It is important to remember that the `Compass\Url` object stores the initial parts that the user installed and the +> ❗ It is important to remember that the `Compass\Url` object stores the initial parts that the user installed and the > results of each strategy method. The implementation of methods can be divided into three levels. @@ -228,7 +246,7 @@ $relativeUrlState &= ~Url::QUERY_STATE; The remaining sections can be manipulated in a similar way, with the exception of `$schemeState`, which needs to be assigned a boolean value. -### An Example Of Creating Your Own Strategy +### ⚡ An Example Of Creating Your Own Strategy When building your URL update process, sometimes you want a method to be executed that, based on the current state, will not be executed. In such cases, the additional method `forceUnlockMethod(...)` is used, in which you can change the @@ -317,11 +335,11 @@ and other attributes of this type). ## PATH Component -`Compass\Path` can be described as an object representation of a file path. It operates on the path string without +👉 `Compass\Path` can be described as an object representation of a file path. It operates on the path string without relying on the actual file system. The component, like `Compass\Url`, has an update strategy, which includes one `updatePath()` method. It's important to note that this component is stateless. -### Demonstration Of Methods +### 🚀 Demonstration Of Methods ```php ', $path->getLast(); # file.v ``` php composer tests ``` -### Contributing +## Contributing Please see [CONTRIBUTING](CONTRIBUTING.md) for details. -### License +## License -The MIT License (MIT). Please see License [File](LICENSE) for more -information. +The MIT License (MIT). Please see License [File](LICENSE) for more information. diff --git a/banner.svg b/banner.svg new file mode 100644 index 0000000..9521dbe --- /dev/null +++ b/banner.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +