0.0.28 • Published 2 years ago

@egml/name v0.0.28

Weekly downloads
-
License
MIT
Repository
-
Last release
2 years ago

Name

Инструмент для преобразования имени в разные стили написания: Camel, CapitalCamel, Kebab и др.

Присутствуют также особые стили, такие как Css, File.

Есть возможность добавлять суффикс в стиле конкретной нотации. Поддерживаются пространства имён нескольких уровней.

Пример использования

var name = new Name(['potato', 'pie']);
name.camel.toString();
// "potatoPie"

name.capitalCamel.toString();
// "PotatoPie"

name.kebab.toString();
// "potato-pie"

Пространство имен:

var name = new Name(['potato', 'pie'], 'cute');
name.camel.toString();
// "cutePotatoPie"

var name = new Name(['potato', 'pie'], ['very', 'cute']);
name.camel.toString();
// "veryCutePotatoPie"

var name = new Name(['potato', 'pie'], new Name(['very', 'cute'], 'so'));
name.camel.toString();
// "soVeryCutePotatoPie"

Пространство имен по умолчанию:

Name.prototype.ns = 'cute';

var name = new Name(['potato', 'pie']);
name.camel.toString();
// "cutePotatoPie"

Не добавлять пространство имен при наличии пространства имен по умолчанию:

Name.prototype.ns = 'cute';

var name = new Name(['potato', 'pie'], false);
name.camel.toString();
// "potatoPie"

Добавление суффикса:

var name = new Name(['potato', 'pie']);
name.camel.append('indeed').toString();
// "potatoPieIndeed"

name.camel.append(['with', 'cheese']).toString();
// "potatoPieWithCheese"

name.camel.add('yeah').toString(); // синоним append
// "potatoPieYeah"

Поддерживаемые стили (cases)

  • AsIs
  • Camel
  • CapitalCamel
  • ClassSelector
  • Css
  • Dot
  • Event
  • File
  • Flat
  • Kebab
  • Snake
  • Upper

Каждый из них можно использовать как описано выше, указав название стиля со строчной буквы (ClassSelector - classSelector, Css - css и т. д.)

TODO:

  • #TODO Описать в README другие стили и методы добавления суффиксов у них.

  • #TODO PHP-версия требует доработки, т.к. она работает не аналогично JS-версии (или обе требуют доработки, см. test для примеров разницы работы). В частности в PHP-версии при обращении к одному и тому же экземпляру несколько раз, значение сохраняется, а не возвращается новое. Тем самым при следущих запросах значение уже будет измененено предыдущими вызовами.

Сделано:

  • #DONE