npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@maksimyurkov/ims-user-list

v0.1.3

Published

User List web component for WebTutor and other LMS

Downloads

21

Readme

User List | <ims-user-list>

Demo ↗

User List | <ims-user-list> - элемент предназначенный для отображения списка пользователей системы.

Элемент можно использовать по прямому назначению, а также в качестве основы или составляющей для ваших проектов.

На данный момент работа поддерживается только в системе WebTutor (+ пример для Node.js).

Одна из целей создания User List - продемонстрировать для разработчиков один из вариантов создания и размещения модуля для систем в приложении Elements.

Быстрый старт

Независимо от того, новичок вы или опытный пользователь, начать использовать User List легко.

WebTutor

  1. На сервере WebTutor установите Node.js

  2. В командной строке введите (директория может отличаться):

cd C:\Program Files\WebSoft\WebTutorServer\wt\web
npm init -y
npm install @maksimyurkov/ims-user-list
  1. Разместите HTML код, в Шаблоне документа WebTutor:
<!-- START ims-user-list -->
<script src="/node_modules/@maksimyurkov/ims-user-list/dist/vendor/webcomponents-loader.js"></script>
<script nomodule src="/node_modules/@maksimyurkov/ims-user-list/dist/vendor/fetch.js"></script>
<script nomodule src="/node_modules/@maksimyurkov/ims-user-list/dist/vendor/babel-helpers.min.js"></script>
<script nomodule src="/node_modules/@maksimyurkov/ims-user-list/dist/vendor/regenerator-runtime.min.js"></script>
<ims-user-list></ims-user-list>
<script nomodule src="/node_modules/@maksimyurkov/ims-user-list/dist/ims-user-list.es5.js"></script>
<script type="module" src="/node_modules/@maksimyurkov/ims-user-list/dist/ims-user-list.js"></script>
<!-- END ims-user-list -->

Настройка

Генератор

Для настройки ims-user-list перейдите по ссылке в вашей системе:

https://<ваш домен>/node_modules/@maksimyurkov/ims-user-list/demo/generator.html

Options

Настройки элемента <ims-user-list> указываются в свойстве options. Вы можете задавать их напрямую, без необходимости использования генератора.

Задать options можно с помощью кода:

<ims-user-list></ims-user-list>
<script>
document.querySelector("ims-user-list").options = {
    textAvatar: false
};
</script>

Объект options включает в себя следующие параметры:

rootURL

Type: String

Default: /node_modules/@maksimyurkov/ims-user-list

Путь до ims-user-list относительно корня публичной директории.

Параметр позволяет разместить ims-user-list в директории отличающейся от стандартной.

serverURL

Type: String

Default: /node_modules/@maksimyurkov/ims-user-list/api/webtutor.html

Путь до сервера к которому осуществляются запросы.

Можно осуществлять запросы к внешним системам.

serverURL

Type: String

Default: /node_modules/@maksimyurkov/ims-user-list/api/webtutor.html

Путь до сервера к которому осуществляются запросы.

Можно указывать URL и осуществлять запросы к внешним ресурсам.

width

Type: String

Default: 100%

Ширина элемента.

height

Type: String

Default: 600px

Высота элемента.

pageSize

Type: Number

Default: 300

Количество загружаемых за запрос пользователей.

showAvatar

Type: Boolean

Default: true

Отображать аватар в списке пользователей.

textAvatar

Type: Boolean

Default: true

Использовать текстовый аватар в списке пользователей.

resizeImage

Type: Boolean

Default: false

Изменять размеры изображений на стороне сервера.

Внимание! При включении данной настройки, при первом просмотре списка, WebTutor будет автоматически создавать фото с необходимыми размерами(в директории /avatars), что может существенно нагрузить систему. После создания изображений и наличия настроенного кэширования, нагрузка на систему прекратится.

Мы рекомендуем не включать данную настройку, а обработать один раз все имеющиеся аватары (изменить размеры и сжать) используя стороннюю библиотеку и в дальнейшем уже сохранять на сервере аватары необходимых размеров.

voiceInput

Type: Boolean

Default: true

Включить голосовой ввод.

showNoFoundImage

Type: Boolean

Default: true

Показывать изображение на странице "Не найдено".

showFound

Type: Boolean

Default: true

Отображать блок с количеством найденных пользователей.

oldBrowsersSupport

Type: Boolean

Default: true

Включить поддержку старых браузеров (добавляет необходимые для работы полифиллы).

demoMode

Type: Boolean

Default: false

Режим для демонстрации работы ims-user-list. В этом режиме данные берутся из файла /demo/users.json

usedData

Свойство объекта options с помощью которого можно указать данные возвращаемые с сервера.

usedData включает в себя:

avatarURL

Type: Boolean

Default: true

Возвращать URL до аватара.

displayName

Type: Boolean

Default: true

Возвращать отображаемое имя.

nickname

Type: Boolean

Default: true

Возвращать никнейм.

position

Type: Boolean

Default: true

Возвращать должность.

subdivision

Type: Boolean

Default: true

Возвращать подразделение.

email

Type: Boolean

Default: true

Возвращать email.

systemEmail

Type: Boolean

Default: true

Возвращать рабочий email.

phone

Type: Boolean

Default: true

Возвращать номер телефона.

mobilePhone

Type: Boolean

Default: true

Возвращать номер мобильного телефона.

address

Type: Boolean

Default: true

Возвращать адрес.

accountURL

Type: Boolean

Default: true

Возвращать ссылку на профайл пользователя.

localization

Свойство объекта options в котором храняться языковые переменные.

Список переменных:

Название свойства: Значение по умолчанию

  • Found users: Найдено пользователей
  • Loading data: Загрузка данных
  • Nothing found: Ничего не найдено
  • Search: Поиск
  • Clear Search Box: Очистить поле поиска
  • Start typing the user's full name: Начните вводить ФИО
  • Voice input: Голосовой ввод
  • Not specified: Не указано
  • Nickname: Никнейм
  • Position: Должность
  • Subdivision: Подразделение
  • Email: Email
  • Worker Email: Рабочий Email
  • Phone: Телефон
  • Mobile phone: Мобильный телефон
  • Address: Адрес
  • Read more: Подробнее

customCSSProperties

Свойство объекта options в котором храняться CSS переменные позволяющие менять стили ims-user-list.

Название свойства: Значение по умолчанию

  • --ims-user-list-accent-color: #83b735,
  • --ims-user-list-second-accent-color: #039be5,
  • --ims-user-list-primary-text-color: #212121,
  • --ims-user-list-secondary-text-color: #737373,
  • --ims-user-list-blocks-border-radius: 2px,
  • --ims-user-list-avatar-border-radius: 50%,
  • --ims-user-list-link-color: #4285f4,
  • --ims-user-list-search-background: #ffffff,
  • --ims-user-list-search-border: none,
  • --ims-user-list-search-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.08),
  • --ims-user-list-grid-background: #eeeeee,
  • --ims-user-list-grid-border: none,
  • --ims-user-list-grid-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.08),
  • --ims-user-list-grid-loading-background: #ffffff,
  • --ims-user-list-grid-item-background: #ffffff,
  • --ims-user-list-grid-item-border: none,
  • --ims-user-list-grid-item-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(0, 0, 0, 0.08),
  • --ims-user-list-grid-item-ripple-color: #737373,
  • --ims-user-list-dialog-background: #ffffff,
  • --ims-user-list-dialog-user-info-tooltip-background: #616161,
  • --ims-user-list-dialog-user-info-tooltip-text-color: #ffffff

Поддержка

Если вы столкнетесь с проблемой установки, настройки, ошибкой или багом, то попробуйте найти решение вашей проблемы в документации и в issues. Если ничего из указанного вам не поможет, то создайте новую тему в issues.

Если у вас есть какие-то пожелания в реализации дополнительного функционала для User List или рекомендации по совершенствованию существующего, то можете оставлять их в issues.

Мы будем рады, если вы поможете улучшить элемент, процесс установки или документацию.

Поддержка элемента включает:

  • Наличие разработчика для ответа на вопросы
  • Ответы на технические вопросы об особенностях элемента
  • Помощь в решении ошибок и проблем

Поддержка элемента не включает:

  • Услуги по настройке
  • Услуги по установке
  • Исправление ошибок и проблем на стороне сторонних библиотек и систем

Разработка

# Клонируйте репозиторий и установите зависимости
git clone https://github.com/maksimyurkov/ims-user-list
cd ims-user-list
npm install
npm run dev

После внесения изменений сделайте сборку проекта (в Node.js 12.8.0^)

npm run build

Запуск демо локально

npm run demo

Совместимость

  • Chrome
  • Firefox
  • Edge
  • Opera
  • IE11
  • и другие

Известные проблемы

Спиннер в IE11

Зависание спиннера модального окна в IE11.

Содействие

Подробнее по ссылке.

Лицензия

Элемент распространяется на основе Elements Personal Free License (EPFL).

Для использования элемента на условиях Elements Single Commercial License (ESCL) приобретите соответствующую лицензию по ссылке.