Coder Social home page Coder Social logo

sq-ui / ng-sq-ui Goto Github PK

View Code? Open in Web Editor NEW
99.0 99.0 11.0 8.63 MB

Flexible and easily customizable UI-kit for Angular 11+

License: MIT License

JavaScript 0.43% TypeScript 68.13% HTML 21.55% SCSS 9.89%
angular angular-library angular11 angular6 autocomplete components datepicker form modal ng-sq-ui sq-ui timepicker typeahead typescript ui ui-components ui-kit uikit

ng-sq-ui's Issues

Allow specifying custom templates for some form components

As a consumer, I want to be able to create my own custom templates for:

  • sq-checkbox:
    • allow creating a custom template for the label
  • sq-radio:
    • allow creating a custom template for the label
  • sq-tags-input:
    • allow creating a custom template for each entered item
    • expose the remove method for each item in the template context, so that it can be used for custom remove buttons
  • sq-typeahead:
    • allow creating a custom template for each option in the dropdown list
    • allow creating a custom template for each selected item
    • expose the remove method for each selected item in the template context, so that it can be used for custom remove buttons
  • sq-dropdown:
    • allow creating a custom template for each option in the dropdown list
    • allow creating a custom template for each selected item
    • allow changing the chevron icon
  • all elements:
    • allow usage of custom icons

[!] Update how we pass displayName prop to sq-typeahead

Developer should be able to specify displayName$Key that will be used for the name of the option. This key should be present in the value object.

 <sq-typeahead 
      name="trainWagons"
      formControlName="trainWagons"
      [searchResults]="availableWagons"
      (onUserInputEnd)="searchMethod($event)"
      controlLabel="Wagons*"
      displayName="wagonName"
      [multiple]="true"
      controlPlaceholder="Add or remove wagons from this train">
    </sq-typeahead>

[+] Nav bar

As a developer I want a nice nav bar + mobile layout.

Acceptance criteria:
This component should be part of the ng-sq-ui/common module.
Mobile layout should expand with animation.
Menu items should be configurable programmatically (e.g: as an array of objects, where one object represents a single menu item)

Reward: 0.5 DEV

[!] The integrated time-picker does not change the value returned by the datetime-picker component

Describe the bug
The value returned by the datetime-picker component does not get updated real-time when I change the hours and/or minutes of the integrated time-picker.

To Reproduce
Steps to reproduce the behavior:

  1. Install @sq-ui/ng-datetime-picker
  2. Include the sq-datetime-picker component with its required time-picker config
  3. After the component is rendered, start changing the hours and/or minutes of the time-picker using the up/down arrows

Expected behavior
The hours and/or minutes of the integrated time-picker should be reflected in the value returned by the datetime-picker component.

Screenshots
No screenshots but a Stackblitz preview of the problem:
https://stackblitz.com/edit/sq-datetime-picker-timepicker-bug

Desktop (please complete the following information):

  • OS: Windows 10
  • Browser: Chrome
  • Version 72.0.3626.121

Smartphone (please complete the following information):
Not applicable.

Update to angular 12.2.4

Update to latest angular:
This includes all libraries and subprojects.

Improvements:

  • set all libraries to use the projects angular version instead of managing that by hand

[+] Progress bar

As a developer I want to have a loading bar that fills to 100%.

  • component
  • example usage in app
  • tests
  • documentation

[+] Date Time Picker

It would be awesome if you create a date picker, time picker and datetime picker UI components with abilities to set, get and pick a date programmatically and from the UI. This also includes date/time formatters for the UI component to be able to display date and time in different formats.

  • use moment.js to create underlying datepicker logic
  • use moment.js to create underlying timepicker logic
  • create UI
  • make UI events programatically triggerable

[!] Styles not applied

In a new empty directory on computer with:

Distributor ID: Ubuntu
Description: Ubuntu 18.04.1 LTS
Release: 18.04
Codename: bionic

[email protected] /usr/share/npm
Angular CLI: 6.0.8
Node: 8.10.0
OS: linux x64
Angular:
...
Package Version

@angular-devkit/architect 0.6.8
@angular-devkit/core 0.6.8
@angular-devkit/schematics 0.6.8
@schematics/angular 0.6.8
@schematics/update 0.6.8
rxjs 6.2.1
typescript 2.7.2

I run the following commands:

npm install -g @angular/cli
ng new my-app
cd my-app
ng serve --open

  • everything is OK
    Control + C
    code . - opens VS Code
    npm i @sq-ui/ng-sq-ui

in ./src/app/app.module.ts

added
import { NgSqUiModule } from '@sq-ui/ng-sq-ui';
and
NgSqUiModule, // in imports

Added styles to angular.json
"./node_modules/@sq-ui/ng-sq-ui/sq-ui-theme.scss",
"./node_modules/font-awesome/scss/font-awesome.scss"
line 25 and 75

Added
some stuff in the app.component

TS:

dropdownOptions: LabelValuePair[] = [
{
label: 'option1',
value: 'someVal1'
},
{
label: 'option2',
value: 'someVal2'
},
{
label: 'option3',
value: 'someVal3'
}
];
HTML:
screenshot from 2018-08-28 00-44-42

screenshot from 2018-08-28 00-39-35

Previously I run into errors in the console, but then - probably the problems were on my side. Right now the styles are not being applied. Something small that I'm missing...

[+] Tooltips

As a developer I want to have tooltip component / directive.

Acceptance criteria:
The tooltip directive / component should be created as part of the ng-sq-ui/common module.
Tooltip should detect the edges of the screen and prevent displaying out of the window.

Reward for completing this feature: 0.5 DEV

[+] Add support for ng-add schematics

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Add support for ng-add schematics, to automate the initial setup.

Describe the solution you'd like
A clear and concise description of what you want to happen.
Refer angular material, where they have schematics support.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.
https://material.angular.io/guide/getting-started#alternative-2-angular-devkit-6-

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.