├── .editorconfig
├── .eslintrc.json
├── .gitignore
├── CHANGELOG.md
├── LICENSE.md
├── README.md
├── angular.json
├── commits.txt
├── package-lock.json
├── package.json
├── src
├── app
│ ├── app-routing.module.ts
│ ├── app.component.html
│ ├── app.component.ts
│ ├── app.module.ts
│ ├── demo
│ │ ├── api
│ │ │ ├── customer.ts
│ │ │ ├── image.ts
│ │ │ └── product.ts
│ │ ├── components
│ │ │ ├── auth
│ │ │ │ ├── access
│ │ │ │ │ ├── access-routing.module.ts
│ │ │ │ │ ├── access.component.html
│ │ │ │ │ ├── access.component.ts
│ │ │ │ │ └── access.module.ts
│ │ │ │ ├── auth-routing.module.ts
│ │ │ │ ├── auth.module.ts
│ │ │ │ ├── error
│ │ │ │ │ ├── error-routing.module.ts
│ │ │ │ │ ├── error.component.html
│ │ │ │ │ ├── error.component.ts
│ │ │ │ │ └── error.module.ts
│ │ │ │ └── login
│ │ │ │ │ ├── login-routing.module.ts
│ │ │ │ │ ├── login.component.html
│ │ │ │ │ ├── login.component.ts
│ │ │ │ │ └── login.module.ts
│ │ │ ├── dashboard
│ │ │ │ ├── dashboard-routing.module.ts
│ │ │ │ ├── dashboard.component.html
│ │ │ │ ├── dashboard.component.ts
│ │ │ │ └── dashboard.module.ts
│ │ │ ├── documentation
│ │ │ │ ├── documentation-routing.module.ts
│ │ │ │ ├── documentation.component.html
│ │ │ │ ├── documentation.component.scss
│ │ │ │ ├── documentation.component.ts
│ │ │ │ └── documentation.module.ts
│ │ │ ├── landing
│ │ │ │ ├── landing-routing.module.ts
│ │ │ │ ├── landing.component.html
│ │ │ │ ├── landing.component.ts
│ │ │ │ └── landing.module.ts
│ │ │ ├── notfound
│ │ │ │ ├── notfound.component.html
│ │ │ │ └── notfound.component.ts
│ │ │ ├── pages
│ │ │ │ ├── crud
│ │ │ │ │ ├── crud-routing.module.ts
│ │ │ │ │ ├── crud.component.html
│ │ │ │ │ ├── crud.component.ts
│ │ │ │ │ └── crud.module.ts
│ │ │ │ ├── empty
│ │ │ │ │ ├── emptydemo-routing.module.ts
│ │ │ │ │ ├── emptydemo.component.html
│ │ │ │ │ ├── emptydemo.component.ts
│ │ │ │ │ └── emptydemo.module.ts
│ │ │ │ ├── pages-routing.module.ts
│ │ │ │ ├── pages.module.ts
│ │ │ │ └── timeline
│ │ │ │ │ ├── timelinedemo-routing.module.ts
│ │ │ │ │ ├── timelinedemo.component.html
│ │ │ │ │ ├── timelinedemo.component.ts
│ │ │ │ │ ├── timelinedemo.module.ts
│ │ │ │ │ └── timelinedemo.scss
│ │ │ ├── primeblocks
│ │ │ │ ├── blocks
│ │ │ │ │ ├── blocks.component.html
│ │ │ │ │ └── blocks.component.ts
│ │ │ │ ├── blockviewer
│ │ │ │ │ ├── blockviewer.component.scss
│ │ │ │ │ └── blockviewer.component.ts
│ │ │ │ ├── primeblocks-routing.module.ts
│ │ │ │ └── primeblocks.module.ts
│ │ │ ├── uikit
│ │ │ │ ├── button
│ │ │ │ │ ├── buttondemo-routing.module.ts
│ │ │ │ │ ├── buttondemo.component.html
│ │ │ │ │ ├── buttondemo.component.ts
│ │ │ │ │ └── buttondemo.module.ts
│ │ │ │ ├── charts
│ │ │ │ │ ├── chartsdemo-routing.module.ts
│ │ │ │ │ ├── chartsdemo.component.html
│ │ │ │ │ ├── chartsdemo.component.ts
│ │ │ │ │ └── chartsdemo.module.ts
│ │ │ │ ├── file
│ │ │ │ │ ├── filedemo-routing.module.ts
│ │ │ │ │ ├── filedemo.component.html
│ │ │ │ │ ├── filedemo.component.ts
│ │ │ │ │ └── filedemo.module.ts
│ │ │ │ ├── floatlabel
│ │ │ │ │ ├── floatlabeldemo-routing.module.ts
│ │ │ │ │ ├── floatlabeldemo.component.html
│ │ │ │ │ ├── floatlabeldemo.component.ts
│ │ │ │ │ └── floatlabeldemo.module.ts
│ │ │ │ ├── formlayout
│ │ │ │ │ ├── formlayoutdemo-routing.module.ts
│ │ │ │ │ ├── formlayoutdemo.component.html
│ │ │ │ │ ├── formlayoutdemo.component.ts
│ │ │ │ │ └── formlayoutdemo.module.ts
│ │ │ │ ├── input
│ │ │ │ │ ├── inputdemo-routing.module.ts
│ │ │ │ │ ├── inputdemo.component.html
│ │ │ │ │ ├── inputdemo.component.ts
│ │ │ │ │ └── inputdemo.module.ts
│ │ │ │ ├── invalid
│ │ │ │ │ ├── invalidstatedemo-routing.module.ts
│ │ │ │ │ ├── invalidstatedemo.component.html
│ │ │ │ │ ├── invalidstatedemo.component.ts
│ │ │ │ │ └── invalidstatedemo.module.ts
│ │ │ │ ├── list
│ │ │ │ │ ├── listdemo-routing.module.ts
│ │ │ │ │ ├── listdemo.component.html
│ │ │ │ │ ├── listdemo.component.ts
│ │ │ │ │ └── listdemo.module.ts
│ │ │ │ ├── media
│ │ │ │ │ ├── mediademo-routing.module.ts
│ │ │ │ │ ├── mediademo.component.html
│ │ │ │ │ ├── mediademo.component.ts
│ │ │ │ │ └── mediademo.module.ts
│ │ │ │ ├── menus
│ │ │ │ │ ├── confirmation.component.ts
│ │ │ │ │ ├── menus.component.html
│ │ │ │ │ ├── menus.component.ts
│ │ │ │ │ ├── menus.module.ts
│ │ │ │ │ ├── payment.component.ts
│ │ │ │ │ ├── personal.component.ts
│ │ │ │ │ └── seat.component.ts
│ │ │ │ ├── messages
│ │ │ │ │ ├── messagesdemo-routing.module.ts
│ │ │ │ │ ├── messagesdemo.component.html
│ │ │ │ │ ├── messagesdemo.component.ts
│ │ │ │ │ └── messagesdemo.module.ts
│ │ │ │ ├── misc
│ │ │ │ │ ├── miscdemo-routing.module.ts
│ │ │ │ │ ├── miscdemo.component.html
│ │ │ │ │ ├── miscdemo.component.ts
│ │ │ │ │ └── miscdemo.module.ts
│ │ │ │ ├── overlays
│ │ │ │ │ ├── overlaysdemo-routing.module.ts
│ │ │ │ │ ├── overlaysdemo.component.html
│ │ │ │ │ ├── overlaysdemo.component.ts
│ │ │ │ │ └── overlaysdemo.module.ts
│ │ │ │ ├── panels
│ │ │ │ │ ├── panelsdemo-routing.module.ts
│ │ │ │ │ ├── panelsdemo.component.html
│ │ │ │ │ ├── panelsdemo.component.ts
│ │ │ │ │ └── panelsdemo.module.ts
│ │ │ │ ├── table
│ │ │ │ │ ├── tabledemo-routing.module.ts
│ │ │ │ │ ├── tabledemo.component.html
│ │ │ │ │ ├── tabledemo.component.ts
│ │ │ │ │ └── tabledemo.module.ts
│ │ │ │ ├── tree
│ │ │ │ │ ├── treedemo-routing.module.ts
│ │ │ │ │ ├── treedemo.component.html
│ │ │ │ │ ├── treedemo.component.ts
│ │ │ │ │ └── treedemo.module.ts
│ │ │ │ ├── uikit-routing.module.ts
│ │ │ │ └── uikit.module.ts
│ │ │ └── utilities
│ │ │ │ ├── icons
│ │ │ │ ├── icons.component.html
│ │ │ │ └── icons.component.ts
│ │ │ │ ├── utilities-routing.module.ts
│ │ │ │ └── utilities.module.ts
│ │ └── service
│ │ │ ├── country.service.ts
│ │ │ ├── customer.service.ts
│ │ │ ├── event.service.ts
│ │ │ ├── icon.service.ts
│ │ │ ├── node.service.ts
│ │ │ ├── photo.service.ts
│ │ │ └── product.service.ts
│ └── layout
│ │ ├── api
│ │ └── menuchangeevent.ts
│ │ ├── app.footer.component.html
│ │ ├── app.footer.component.ts
│ │ ├── app.layout.component.html
│ │ ├── app.layout.component.ts
│ │ ├── app.layout.module.ts
│ │ ├── app.menu.component.html
│ │ ├── app.menu.component.ts
│ │ ├── app.menu.service.ts
│ │ ├── app.menuitem.component.ts
│ │ ├── app.sidebar.component.html
│ │ ├── app.sidebar.component.ts
│ │ ├── app.topbar.component.html
│ │ ├── app.topbar.component.ts
│ │ ├── config
│ │ ├── app.config.component.html
│ │ ├── app.config.component.ts
│ │ └── config.module.ts
│ │ └── service
│ │ └── app.layout.service.ts
├── assets
│ ├── .gitkeep
│ ├── demo
│ │ ├── data
│ │ │ ├── countries.json
│ │ │ ├── customers-large.json
│ │ │ ├── customers-medium.json
│ │ │ ├── customers-small.json
│ │ │ ├── files-lazy.json
│ │ │ ├── files.json
│ │ │ ├── filesystem-lazy.json
│ │ │ ├── filesystem.json
│ │ │ ├── icons.json
│ │ │ ├── photos.json
│ │ │ ├── products-mixed.json
│ │ │ ├── products-orders-small.json
│ │ │ ├── products-orders.json
│ │ │ ├── products-small.json
│ │ │ ├── products.json
│ │ │ └── scheduleevents.json
│ │ ├── images
│ │ │ ├── access
│ │ │ │ ├── asset-access.svg
│ │ │ │ └── logo-orange.svg
│ │ │ ├── avatar
│ │ │ │ ├── amyelsner.png
│ │ │ │ ├── annafali.png
│ │ │ │ ├── asiyajavayant.png
│ │ │ │ ├── bernardodominic.png
│ │ │ │ ├── elwinsharvill.png
│ │ │ │ ├── ionibowcher.png
│ │ │ │ ├── ivanmagalhaes.png
│ │ │ │ ├── onyamalimba.png
│ │ │ │ ├── profile.jpg
│ │ │ │ ├── stephenshaw.png
│ │ │ │ └── xuxuefeng.png
│ │ │ ├── blocks
│ │ │ │ ├── hero
│ │ │ │ │ └── hero-1.png
│ │ │ │ └── logos
│ │ │ │ │ └── hyper.svg
│ │ │ ├── error
│ │ │ │ ├── asset-error.svg
│ │ │ │ └── logo-error.svg
│ │ │ ├── flag
│ │ │ │ └── flag_placeholder.png
│ │ │ ├── galleria
│ │ │ │ ├── galleria1.jpg
│ │ │ │ ├── galleria10.jpg
│ │ │ │ ├── galleria10s.jpg
│ │ │ │ ├── galleria11.jpg
│ │ │ │ ├── galleria11s.jpg
│ │ │ │ ├── galleria12.jpg
│ │ │ │ ├── galleria12s.jpg
│ │ │ │ ├── galleria13.jpg
│ │ │ │ ├── galleria13s.jpg
│ │ │ │ ├── galleria14.jpg
│ │ │ │ ├── galleria14s.jpg
│ │ │ │ ├── galleria15.jpg
│ │ │ │ ├── galleria15s.jpg
│ │ │ │ ├── galleria1s.jpg
│ │ │ │ ├── galleria2.jpg
│ │ │ │ ├── galleria2s.jpg
│ │ │ │ ├── galleria3.jpg
│ │ │ │ ├── galleria3s.jpg
│ │ │ │ ├── galleria4.jpg
│ │ │ │ ├── galleria4s.jpg
│ │ │ │ ├── galleria5.jpg
│ │ │ │ ├── galleria5s.jpg
│ │ │ │ ├── galleria6.jpg
│ │ │ │ ├── galleria6s.jpg
│ │ │ │ ├── galleria7.jpg
│ │ │ │ ├── galleria7s.jpg
│ │ │ │ ├── galleria8.jpg
│ │ │ │ ├── galleria8s.jpg
│ │ │ │ ├── galleria9.jpg
│ │ │ │ └── galleria9s.jpg
│ │ │ ├── landing
│ │ │ │ ├── enterprise.svg
│ │ │ │ ├── free.svg
│ │ │ │ ├── mockup-desktop.svg
│ │ │ │ ├── mockup.svg
│ │ │ │ ├── new-badge.svg
│ │ │ │ ├── peak-logo.svg
│ │ │ │ ├── screen-1.png
│ │ │ │ └── startup.svg
│ │ │ ├── login
│ │ │ │ └── avatar.png
│ │ │ ├── nature
│ │ │ │ ├── nature1.jpg
│ │ │ │ ├── nature10.jpg
│ │ │ │ ├── nature11.jpg
│ │ │ │ ├── nature12.jpg
│ │ │ │ ├── nature2.jpg
│ │ │ │ ├── nature3.jpg
│ │ │ │ ├── nature4.jpg
│ │ │ │ ├── nature5.jpg
│ │ │ │ ├── nature6.jpg
│ │ │ │ ├── nature7.jpg
│ │ │ │ ├── nature8.jpg
│ │ │ │ └── nature9.jpg
│ │ │ ├── notfound
│ │ │ │ └── logo-blue.svg
│ │ │ └── product
│ │ │ │ ├── bamboo-watch.jpg
│ │ │ │ ├── black-watch.jpg
│ │ │ │ ├── blue-band.jpg
│ │ │ │ ├── blue-t-shirt.jpg
│ │ │ │ ├── bracelet.jpg
│ │ │ │ ├── brown-purse.jpg
│ │ │ │ ├── chakra-bracelet.jpg
│ │ │ │ ├── galaxy-earrings.jpg
│ │ │ │ ├── game-controller.jpg
│ │ │ │ ├── gaming-set.jpg
│ │ │ │ ├── gold-phone-case.jpg
│ │ │ │ ├── green-earbuds.jpg
│ │ │ │ ├── green-t-shirt.jpg
│ │ │ │ ├── grey-t-shirt.jpg
│ │ │ │ ├── headphones.jpg
│ │ │ │ ├── light-green-t-shirt.jpg
│ │ │ │ ├── lime-band.jpg
│ │ │ │ ├── mini-speakers.jpg
│ │ │ │ ├── painted-phone-case.jpg
│ │ │ │ ├── pink-band.jpg
│ │ │ │ ├── pink-purse.jpg
│ │ │ │ ├── product-placeholder.svg
│ │ │ │ ├── purple-band.jpg
│ │ │ │ ├── purple-gemstone-necklace.jpg
│ │ │ │ ├── purple-t-shirt.jpg
│ │ │ │ ├── shoes.jpg
│ │ │ │ ├── sneakers.jpg
│ │ │ │ ├── teal-t-shirt.jpg
│ │ │ │ ├── yellow-earbuds.jpg
│ │ │ │ ├── yoga-mat.jpg
│ │ │ │ └── yoga-set.jpg
│ │ └── styles
│ │ │ ├── badges.css
│ │ │ ├── badges.scss
│ │ │ ├── code.css
│ │ │ ├── code.scss
│ │ │ └── flags
│ │ │ ├── flags.css
│ │ │ └── flags_responsive.png
│ └── layout
│ │ ├── images
│ │ ├── banner-primeblocks-dark.png
│ │ ├── banner-primeblocks.png
│ │ ├── logo-dark.svg
│ │ ├── logo-white.svg
│ │ └── themes
│ │ │ ├── arya-blue.png
│ │ │ ├── arya-green.png
│ │ │ ├── arya-orange.png
│ │ │ ├── arya-purple.png
│ │ │ ├── bootstrap4-dark-blue.svg
│ │ │ ├── bootstrap4-dark-purple.svg
│ │ │ ├── bootstrap4-light-blue.svg
│ │ │ ├── bootstrap4-light-purple.svg
│ │ │ ├── fluent-light.png
│ │ │ ├── lara-dark-blue.png
│ │ │ ├── lara-dark-indigo.png
│ │ │ ├── lara-dark-purple.png
│ │ │ ├── lara-dark-teal.png
│ │ │ ├── lara-light-blue.png
│ │ │ ├── lara-light-indigo.png
│ │ │ ├── lara-light-purple.png
│ │ │ ├── lara-light-teal.png
│ │ │ ├── luna-amber.png
│ │ │ ├── luna-blue.png
│ │ │ ├── luna-green.png
│ │ │ ├── luna-pink.png
│ │ │ ├── md-dark-deeppurple.svg
│ │ │ ├── md-dark-indigo.svg
│ │ │ ├── md-light-deeppurple.svg
│ │ │ ├── md-light-indigo.svg
│ │ │ ├── saga-blue.png
│ │ │ ├── saga-green.png
│ │ │ ├── saga-orange.png
│ │ │ ├── saga-purple.png
│ │ │ ├── tailwind-light.png
│ │ │ ├── vela-blue.png
│ │ │ ├── vela-green.png
│ │ │ ├── vela-orange.png
│ │ │ └── vela-purple.png
│ │ └── styles
│ │ ├── layout
│ │ ├── _config.scss
│ │ ├── _content.scss
│ │ ├── _footer.scss
│ │ ├── _main.scss
│ │ ├── _menu.scss
│ │ ├── _mixins.scss
│ │ ├── _preloading.scss
│ │ ├── _responsive.scss
│ │ ├── _topbar.scss
│ │ ├── _typography.scss
│ │ ├── _utils.scss
│ │ ├── _variables.scss
│ │ ├── layout.css
│ │ └── layout.scss
│ │ └── theme
│ │ ├── arya-blue
│ │ └── theme.css
│ │ ├── arya-green
│ │ └── theme.css
│ │ ├── arya-orange
│ │ └── theme.css
│ │ ├── arya-purple
│ │ └── theme.css
│ │ ├── bootstrap4-dark-blue
│ │ └── theme.css
│ │ ├── bootstrap4-dark-purple
│ │ └── theme.css
│ │ ├── bootstrap4-light-blue
│ │ └── theme.css
│ │ ├── bootstrap4-light-purple
│ │ └── theme.css
│ │ ├── fluent-light
│ │ └── theme.css
│ │ ├── lara-dark-blue
│ │ └── theme.css
│ │ ├── lara-dark-indigo
│ │ └── theme.css
│ │ ├── lara-dark-purple
│ │ └── theme.css
│ │ ├── lara-dark-teal
│ │ └── theme.css
│ │ ├── lara-light-blue
│ │ └── theme.css
│ │ ├── lara-light-indigo
│ │ └── theme.css
│ │ ├── lara-light-purple
│ │ └── theme.css
│ │ ├── lara-light-teal
│ │ └── theme.css
│ │ ├── md-dark-deeppurple
│ │ ├── fonts
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-regular.woff
│ │ │ └── roboto-v20-latin-ext_latin-regular.woff2
│ │ └── theme.css
│ │ ├── md-dark-indigo
│ │ ├── fonts
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-regular.woff
│ │ │ └── roboto-v20-latin-ext_latin-regular.woff2
│ │ └── theme.css
│ │ ├── md-light-deeppurple
│ │ ├── fonts
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-regular.woff
│ │ │ └── roboto-v20-latin-ext_latin-regular.woff2
│ │ └── theme.css
│ │ ├── md-light-indigo
│ │ ├── fonts
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-regular.woff
│ │ │ └── roboto-v20-latin-ext_latin-regular.woff2
│ │ └── theme.css
│ │ ├── mdc-dark-deeppurple
│ │ ├── fonts
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-regular.woff
│ │ │ └── roboto-v20-latin-ext_latin-regular.woff2
│ │ └── theme.css
│ │ ├── mdc-dark-indigo
│ │ ├── fonts
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-regular.woff
│ │ │ └── roboto-v20-latin-ext_latin-regular.woff2
│ │ └── theme.css
│ │ ├── mdc-light-deeppurple
│ │ ├── fonts
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-regular.woff
│ │ │ └── roboto-v20-latin-ext_latin-regular.woff2
│ │ └── theme.css
│ │ ├── mdc-light-indigo
│ │ ├── fonts
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff
│ │ │ ├── roboto-v20-latin-ext_latin-500.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff
│ │ │ ├── roboto-v20-latin-ext_latin-700.woff2
│ │ │ ├── roboto-v20-latin-ext_latin-regular.woff
│ │ │ └── roboto-v20-latin-ext_latin-regular.woff2
│ │ └── theme.css
│ │ ├── saga-blue
│ │ └── theme.css
│ │ ├── saga-green
│ │ └── theme.css
│ │ ├── saga-orange
│ │ └── theme.css
│ │ ├── saga-purple
│ │ └── theme.css
│ │ ├── tailwind-light
│ │ ├── fonts
│ │ │ ├── Inter-Bold.woff
│ │ │ ├── Inter-Bold.woff2
│ │ │ ├── Inter-Light.woff
│ │ │ ├── Inter-Light.woff2
│ │ │ ├── Inter-Medium.woff
│ │ │ ├── Inter-Medium.woff2
│ │ │ ├── Inter-Regular.woff
│ │ │ ├── Inter-Regular.woff2
│ │ │ ├── Inter-SemiBold.woff
│ │ │ └── Inter-SemiBold.woff2
│ │ └── theme.css
│ │ ├── vela-blue
│ │ └── theme.css
│ │ ├── vela-green
│ │ └── theme.css
│ │ ├── vela-orange
│ │ └── theme.css
│ │ └── vela-purple
│ │ └── theme.css
├── environments
│ ├── environment.prod.ts
│ └── environment.ts
├── favicon.ico
├── index.html
├── main.ts
├── styles.scss
└── test.ts
├── test.sh
├── tsconfig.app.json
├── tsconfig.json
└── tsconfig.spec.json
/.editorconfig:
--------------------------------------------------------------------------------
1 | # Editor configuration, see https://editorconfig.org
2 | root = true
3 |
4 | [*]
5 | charset = utf-8
6 | indent_style = space
7 | indent_size = 4
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
11 | [*.ts]
12 | quote_type = single
13 |
14 | [*.md]
15 | max_line_length = off
16 | trim_trailing_whitespace = false
17 |
--------------------------------------------------------------------------------
/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "root": true,
3 | "ignorePatterns": [
4 | "projects/**/*"
5 | ],
6 | "overrides": [
7 | {
8 | "files": [
9 | "*.ts"
10 | ],
11 | "parserOptions": {
12 | "project": [
13 | "tsconfig.json"
14 | ],
15 | "createDefaultProgram": true
16 | },
17 | "extends": [
18 | "plugin:@angular-eslint/recommended",
19 | "plugin:@angular-eslint/template/process-inline-templates"
20 | ],
21 | "rules": {
22 | "@angular-eslint/directive-selector": [
23 | "error",
24 | {
25 | "type": "attribute",
26 | "prefix": "app",
27 | "style": "camelCase"
28 | }
29 | ],
30 | "@angular-eslint/component-selector": [
31 | "error",
32 | {
33 | "type": "element",
34 | "prefix": "app",
35 | "style": "kebab-case"
36 | }
37 | ]
38 | }
39 | },
40 | {
41 | "files": [
42 | "*.html"
43 | ],
44 | "extends": [
45 | "plugin:@angular-eslint/template/recommended"
46 | ],
47 | "rules": {}
48 | }
49 | ]
50 | }
51 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See http://help.github.com/ignore-files/ for more about ignoring files.
2 |
3 | # Compiled output
4 | /dist
5 | /tmp
6 | /out-tsc
7 | /bazel-out
8 |
9 | # Node
10 | /node_modules
11 | npm-debug.log
12 | yarn-error.log
13 |
14 | # IDEs and editors
15 | .idea/
16 | .project
17 | .classpath
18 | .c9/
19 | *.launch
20 | .settings/
21 | *.sublime-workspace
22 |
23 | # Visual Studio Code
24 | .vscode
25 | .vscode/*
26 | .history/*
27 |
28 | # Miscellaneous
29 | /.angular/cache
30 | .sass-cache/
31 | /connect.lock
32 | /coverage
33 | /libpeerconnection.log
34 | testem.log
35 | /typings
36 |
37 | # System files
38 | .DS_Store
39 | Thumbs.db
40 |
41 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | # 17.0.0
4 | **Implemented New Features and Enhancements:**
5 | - Upgrade to PrimeNG 17
6 | - Upgrade to Angular 17
7 |
8 | ## 16.0.0
9 | **Migration Guide**
10 | - Upgrade to PrimeNG 16
11 | - Upgrade to Angular 16
12 | - Update theme files
13 |
14 | ## 15.0.0
15 | **Migration Guide**
16 | - Upgrade to PrimeNG 15
17 | - Upgrade to Angular 15
18 |
19 | **Implemented New Features and Enhancements:**
20 | - Update to PrimeNG 15
21 | - Update to Angular 15
22 |
23 | ## 14.0.5
24 |
25 | - Router updates
26 |
27 | ## 14.0.4
28 |
29 | - Updated UI kit demos
30 | - Updated PrimeNG
31 | - Enabled lint
32 |
33 | ## 14.0.2
34 |
35 | - Updated to PrimeNG 14.0.2.
36 |
37 | ## 14.0.0
38 |
39 | - Folder structure updated.
40 | - Replace app.config.service by layout.service.
41 | - Updated to PrimeNG 14.
42 | - Updated to Angular 14.
43 | - Strict mode support added.
44 | - Documentation updated.
45 | - Added max-width in large screens for landing.
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018-2022 PrimeTek
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Sakai
2 |
3 | This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.0.4.
4 |
5 | ## Development server
6 |
7 | Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.
8 |
9 | ## Code scaffolding
10 |
11 | Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.
12 |
13 | ## Build
14 |
15 | Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory.
16 |
17 | ## Running unit tests
18 |
19 | Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).
20 |
21 | ## Running end-to-end tests
22 |
23 | Run `ng e2e` to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities.
24 |
25 | ## Further help
26 |
27 | To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
28 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "sakai-ng",
3 | "version": "17.0.0",
4 | "license": "MIT",
5 | "scripts": {
6 | "ng": "ng",
7 | "start": "ng serve",
8 | "build": "ng build",
9 | "test": "ng test",
10 | "lint": "ng lint",
11 | "e2e": "ng e2e"
12 | },
13 | "private": true,
14 | "dependencies": {
15 | "@angular/animations": "^17.0.5",
16 | "@angular/cdk": "^17.0.2",
17 | "@angular/common": "^17.0.5",
18 | "@angular/compiler": "^17.0.5",
19 | "@angular/core": "^17.0.5",
20 | "@angular/forms": "^17.0.5",
21 | "@angular/platform-browser": "^17.0.5",
22 | "@angular/platform-browser-dynamic": "^17.0.5",
23 | "@angular/router": "^17.0.5",
24 | "@fullcalendar/angular": "^6.0.3",
25 | "@fullcalendar/core": "^6.0.3",
26 | "@fullcalendar/daygrid": "^6.0.3",
27 | "@fullcalendar/interaction": "^6.0.3",
28 | "@fullcalendar/timegrid": "^6.0.3",
29 | "chart.js": "^3.3.2",
30 | "primeflex": "^3.3.1",
31 | "primeicons": "6.0.1",
32 | "primeng": "17.2.0",
33 | "quill": "^1.3.7",
34 | "rxjs": "~7.8.1",
35 | "tslib": "^2.5.0",
36 | "zone.js": "~0.14.0",
37 | "prismjs": "^1.29.0"
38 | },
39 | "devDependencies": {
40 | "@angular-devkit/build-angular": "^17.0.5",
41 | "@angular/cli": "^17.0.5",
42 | "@angular/compiler-cli": "^17.0.5",
43 | "@types/jasmine": "~4.3.1",
44 | "jasmine-core": "~4.6.0",
45 | "karma": "~6.4.2",
46 | "karma-chrome-launcher": "~3.2.0",
47 | "karma-coverage": "~2.2.0",
48 | "karma-jasmine": "~5.1.0",
49 | "karma-jasmine-html-reporter": "~2.1.0",
50 | "typescript": "~5.2.2"
51 | }
52 | }
--------------------------------------------------------------------------------
/src/app/app-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { RouterModule } from '@angular/router';
2 | import { NgModule } from '@angular/core';
3 | import { NotfoundComponent } from './demo/components/notfound/notfound.component';
4 | import { AppLayoutComponent } from "./layout/app.layout.component";
5 |
6 | @NgModule({
7 | imports: [
8 | RouterModule.forRoot([
9 | {
10 | path: '', component: AppLayoutComponent,
11 | children: [
12 | { path: '', loadChildren: () => import('./demo/components/dashboard/dashboard.module').then(m => m.DashboardModule) },
13 | { path: 'uikit', loadChildren: () => import('./demo/components/uikit/uikit.module').then(m => m.UIkitModule) },
14 | { path: 'utilities', loadChildren: () => import('./demo/components/utilities/utilities.module').then(m => m.UtilitiesModule) },
15 | { path: 'documentation', loadChildren: () => import('./demo/components/documentation/documentation.module').then(m => m.DocumentationModule) },
16 | { path: 'blocks', loadChildren: () => import('./demo/components/primeblocks/primeblocks.module').then(m => m.PrimeBlocksModule) },
17 | { path: 'pages', loadChildren: () => import('./demo/components/pages/pages.module').then(m => m.PagesModule) }
18 | ]
19 | },
20 | { path: 'auth', loadChildren: () => import('./demo/components/auth/auth.module').then(m => m.AuthModule) },
21 | { path: 'landing', loadChildren: () => import('./demo/components/landing/landing.module').then(m => m.LandingModule) },
22 | { path: 'notfound', component: NotfoundComponent },
23 | { path: '**', redirectTo: '/notfound' },
24 | ], { scrollPositionRestoration: 'enabled', anchorScrolling: 'enabled', onSameUrlNavigation: 'reload' })
25 | ],
26 | exports: [RouterModule]
27 | })
28 | export class AppRoutingModule {
29 | }
30 |
--------------------------------------------------------------------------------
/src/app/app.component.html:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/app.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { PrimeNGConfig } from 'primeng/api';
3 |
4 | @Component({
5 | selector: 'app-root',
6 | templateUrl: './app.component.html'
7 | })
8 | export class AppComponent implements OnInit {
9 |
10 | constructor(private primengConfig: PrimeNGConfig) { }
11 |
12 | ngOnInit() {
13 | this.primengConfig.ripple = true;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/app/app.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { HashLocationStrategy, LocationStrategy, PathLocationStrategy } from '@angular/common';
3 | import { AppComponent } from './app.component';
4 | import { AppRoutingModule } from './app-routing.module';
5 | import { AppLayoutModule } from './layout/app.layout.module';
6 | import { NotfoundComponent } from './demo/components/notfound/notfound.component';
7 | import { ProductService } from './demo/service/product.service';
8 | import { CountryService } from './demo/service/country.service';
9 | import { CustomerService } from './demo/service/customer.service';
10 | import { EventService } from './demo/service/event.service';
11 | import { IconService } from './demo/service/icon.service';
12 | import { NodeService } from './demo/service/node.service';
13 | import { PhotoService } from './demo/service/photo.service';
14 |
15 | @NgModule({
16 | declarations: [AppComponent, NotfoundComponent],
17 | imports: [AppRoutingModule, AppLayoutModule],
18 | providers: [
19 | { provide: LocationStrategy, useClass: PathLocationStrategy },
20 | CountryService, CustomerService, EventService, IconService, NodeService,
21 | PhotoService, ProductService
22 | ],
23 | bootstrap: [AppComponent],
24 | })
25 | export class AppModule {}
26 |
--------------------------------------------------------------------------------
/src/app/demo/api/customer.ts:
--------------------------------------------------------------------------------
1 | export interface Country {
2 | name?: string;
3 | code?: string;
4 | }
5 |
6 | export interface Representative {
7 | name?: string;
8 | image?: string;
9 | }
10 |
11 | export interface Customer {
12 | id?: number;
13 | name?: string;
14 | country?: Country;
15 | company?: string;
16 | date?: string;
17 | status?: string;
18 | activity?: number;
19 | representative?: Representative;
20 | }
21 |
--------------------------------------------------------------------------------
/src/app/demo/api/image.ts:
--------------------------------------------------------------------------------
1 | export interface Image {
2 | previewImageSrc?:any;
3 | thumbnailImageSrc?:any;
4 | alt?:any;
5 | title?:any;
6 | }
7 |
--------------------------------------------------------------------------------
/src/app/demo/api/product.ts:
--------------------------------------------------------------------------------
1 | interface InventoryStatus {
2 | label: string;
3 | value: string;
4 | }
5 | export interface Product {
6 | id?: string;
7 | code?: string;
8 | name?: string;
9 | description?: string;
10 | price?: number;
11 | quantity?: number;
12 | inventoryStatus?: InventoryStatus;
13 | category?: string;
14 | image?: string;
15 | rating?: number;
16 | }
--------------------------------------------------------------------------------
/src/app/demo/components/auth/access/access-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { AccessComponent } from './access.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: AccessComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class AccessRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/access/access.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |

4 |
5 |
6 |
7 |
8 |
9 |
10 |
Access Denied
11 |
You do not have the necessary permisions. Please contact admins.
12 |

13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/access/access.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | selector: 'app-access',
5 | templateUrl: './access.component.html',
6 | })
7 | export class AccessComponent { }
8 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/access/access.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { ButtonModule } from 'primeng/button';
4 |
5 | import { AccessRoutingModule } from './access-routing.module';
6 | import { AccessComponent } from './access.component';
7 |
8 | @NgModule({
9 | imports: [
10 | CommonModule,
11 | AccessRoutingModule,
12 | ButtonModule
13 | ],
14 | declarations: [AccessComponent]
15 | })
16 | export class AccessModule { }
17 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/auth-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 |
4 | @NgModule({
5 | imports: [RouterModule.forChild([
6 | { path: 'error', loadChildren: () => import('./error/error.module').then(m => m.ErrorModule) },
7 | { path: 'access', loadChildren: () => import('./access/access.module').then(m => m.AccessModule) },
8 | { path: 'login', loadChildren: () => import('./login/login.module').then(m => m.LoginModule) },
9 | { path: '**', redirectTo: '/notfound' }
10 | ])],
11 | exports: [RouterModule]
12 | })
13 | export class AuthRoutingModule { }
14 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/auth.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { AuthRoutingModule } from './auth-routing.module';
4 |
5 | @NgModule({
6 | imports: [
7 | CommonModule,
8 | AuthRoutingModule
9 | ]
10 | })
11 | export class AuthModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/error/error-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { ErrorComponent } from './error.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: ErrorComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class ErrorRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/error/error.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |

4 |
5 |
6 |
7 |
8 |
9 |
10 |
Error Occured
11 |
Requested resource is not available.
12 |

13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/error/error.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | selector: 'app-error',
5 | templateUrl: './error.component.html',
6 | })
7 | export class ErrorComponent { }
--------------------------------------------------------------------------------
/src/app/demo/components/auth/error/error.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { ErrorRoutingModule } from './error-routing.module';
4 | import { ErrorComponent } from './error.component';
5 | import { ButtonModule } from 'primeng/button';
6 |
7 | @NgModule({
8 | imports: [
9 | CommonModule,
10 | ErrorRoutingModule,
11 | ButtonModule
12 | ],
13 | declarations: [ErrorComponent]
14 | })
15 | export class ErrorModule { }
16 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/login/login-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { LoginComponent } from './login.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: LoginComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class LoginRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/login/login.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
.colorScheme === 'light' ? 'logo-dark' : 'logo-white'}}.svg)
4 |
5 |
6 |
7 |

8 |
Welcome, Isabel!
9 |
Sign in to continue
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
Forgot password?
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/login/login.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 | import { LayoutService } from 'src/app/layout/service/app.layout.service';
3 |
4 | @Component({
5 | selector: 'app-login',
6 | templateUrl: './login.component.html',
7 | styles: [`
8 | :host ::ng-deep .pi-eye,
9 | :host ::ng-deep .pi-eye-slash {
10 | transform:scale(1.6);
11 | margin-right: 1rem;
12 | color: var(--primary-color) !important;
13 | }
14 | `]
15 | })
16 | export class LoginComponent {
17 |
18 | valCheck: string[] = ['remember'];
19 |
20 | password!: string;
21 |
22 | constructor(public layoutService: LayoutService) { }
23 | }
24 |
--------------------------------------------------------------------------------
/src/app/demo/components/auth/login/login.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { LoginRoutingModule } from './login-routing.module';
4 | import { LoginComponent } from './login.component';
5 | import { ButtonModule } from 'primeng/button';
6 | import { CheckboxModule } from 'primeng/checkbox';
7 | import { FormsModule } from '@angular/forms';
8 | import { PasswordModule } from 'primeng/password';
9 | import { InputTextModule } from 'primeng/inputtext';
10 |
11 | @NgModule({
12 | imports: [
13 | CommonModule,
14 | LoginRoutingModule,
15 | ButtonModule,
16 | CheckboxModule,
17 | InputTextModule,
18 | FormsModule,
19 | PasswordModule
20 | ],
21 | declarations: [LoginComponent]
22 | })
23 | export class LoginModule { }
24 |
--------------------------------------------------------------------------------
/src/app/demo/components/dashboard/dashboard-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { DashboardComponent } from './dashboard.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: DashboardComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class DashboardsRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/dashboard/dashboard.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { DashboardComponent } from './dashboard.component';
5 | import { ChartModule } from 'primeng/chart';
6 | import { MenuModule } from 'primeng/menu';
7 | import { TableModule } from 'primeng/table';
8 | import { ButtonModule } from 'primeng/button';
9 | import { StyleClassModule } from 'primeng/styleclass';
10 | import { PanelMenuModule } from 'primeng/panelmenu';
11 | import { DashboardsRoutingModule } from './dashboard-routing.module';
12 |
13 | @NgModule({
14 | imports: [
15 | CommonModule,
16 | FormsModule,
17 | ChartModule,
18 | MenuModule,
19 | TableModule,
20 | StyleClassModule,
21 | PanelMenuModule,
22 | ButtonModule,
23 | DashboardsRoutingModule
24 | ],
25 | declarations: [DashboardComponent]
26 | })
27 | export class DashboardModule { }
28 |
--------------------------------------------------------------------------------
/src/app/demo/components/documentation/documentation-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { DocumentationComponent } from './documentation.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: DocumentationComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class DocumentationRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/documentation/documentation.component.scss:
--------------------------------------------------------------------------------
1 | @media screen and (max-width: 991px) {
2 | .video-container {
3 | position: relative;
4 | width: 100%;
5 | height: 0;
6 | padding-bottom: 56.25%;
7 |
8 | iframe {
9 | position: absolute;
10 | top: 0;
11 | left: 0;
12 | width: 100%;
13 | height: 100%;
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/src/app/demo/components/documentation/documentation.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | templateUrl: './documentation.component.html',
5 | styleUrls: ['./documentation.component.scss']
6 | })
7 | export class DocumentationComponent { }
--------------------------------------------------------------------------------
/src/app/demo/components/documentation/documentation.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { DocumentationRoutingModule } from './documentation-routing.module';
4 | import { DocumentationComponent } from './documentation.component';
5 |
6 | @NgModule({
7 | imports: [
8 | CommonModule,
9 | DocumentationRoutingModule
10 | ],
11 | declarations: [DocumentationComponent]
12 | })
13 | export class DocumentationModule { }
14 |
--------------------------------------------------------------------------------
/src/app/demo/components/landing/landing-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { LandingComponent } from './landing.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: LandingComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class LandingRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/landing/landing.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 | import { Router } from '@angular/router';
3 | import { LayoutService } from 'src/app/layout/service/app.layout.service';
4 |
5 | @Component({
6 | selector: 'app-landing',
7 | templateUrl: './landing.component.html'
8 | })
9 | export class LandingComponent {
10 |
11 | constructor(public layoutService: LayoutService, public router: Router) { }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/src/app/demo/components/landing/landing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { LandingRoutingModule } from './landing-routing.module';
4 | import { LandingComponent } from './landing.component';
5 | import { StyleClassModule } from 'primeng/styleclass';
6 | import { DividerModule } from 'primeng/divider';
7 | import { ChartModule } from 'primeng/chart';
8 | import { PanelModule } from 'primeng/panel';
9 | import { ButtonModule } from 'primeng/button';
10 |
11 | @NgModule({
12 | imports: [
13 | CommonModule,
14 | LandingRoutingModule,
15 | DividerModule,
16 | StyleClassModule,
17 | ChartModule,
18 | PanelModule,
19 | ButtonModule
20 | ],
21 | declarations: [LandingComponent]
22 | })
23 | export class LandingModule { }
24 |
--------------------------------------------------------------------------------
/src/app/demo/components/notfound/notfound.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | selector: 'app-notfound',
5 | templateUrl: './notfound.component.html',
6 | })
7 | export class NotfoundComponent { }
--------------------------------------------------------------------------------
/src/app/demo/components/pages/crud/crud-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { CrudComponent } from './crud.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: CrudComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class CrudRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/crud/crud.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { CrudRoutingModule } from './crud-routing.module';
5 | import { CrudComponent } from './crud.component';
6 | import { TableModule } from 'primeng/table';
7 | import { FileUploadModule } from 'primeng/fileupload';
8 | import { ButtonModule } from 'primeng/button';
9 | import { RippleModule } from 'primeng/ripple';
10 | import { ToastModule } from 'primeng/toast';
11 | import { ToolbarModule } from 'primeng/toolbar';
12 | import { RatingModule } from 'primeng/rating';
13 | import { InputTextModule } from 'primeng/inputtext';
14 | import { InputTextareaModule } from 'primeng/inputtextarea';
15 | import { DropdownModule } from 'primeng/dropdown';
16 | import { RadioButtonModule } from 'primeng/radiobutton';
17 | import { InputNumberModule } from 'primeng/inputnumber';
18 | import { DialogModule } from 'primeng/dialog';
19 |
20 | @NgModule({
21 | imports: [
22 | CommonModule,
23 | CrudRoutingModule,
24 | TableModule,
25 | FileUploadModule,
26 | FormsModule,
27 | ButtonModule,
28 | RippleModule,
29 | ToastModule,
30 | ToolbarModule,
31 | RatingModule,
32 | InputTextModule,
33 | InputTextareaModule,
34 | DropdownModule,
35 | RadioButtonModule,
36 | InputNumberModule,
37 | DialogModule
38 | ],
39 | declarations: [CrudComponent]
40 | })
41 | export class CrudModule { }
42 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/empty/emptydemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { EmptyDemoComponent } from './emptydemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: EmptyDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class EmptyDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/empty/emptydemo.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
Empty Page
5 |
This is your empty page template to start building beautiful applications.
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/empty/emptydemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | templateUrl: './emptydemo.component.html'
5 | })
6 | export class EmptyDemoComponent { }
7 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/empty/emptydemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { EmptyDemoRoutingModule } from './emptydemo-routing.module';
4 | import { EmptyDemoComponent } from './emptydemo.component';
5 |
6 | @NgModule({
7 | imports: [
8 | CommonModule,
9 | EmptyDemoRoutingModule
10 | ],
11 | declarations: [EmptyDemoComponent]
12 | })
13 | export class EmptyDemoModule { }
14 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/pages-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 |
4 | @NgModule({
5 | imports: [RouterModule.forChild([
6 | { path: 'crud', loadChildren: () => import('./crud/crud.module').then(m => m.CrudModule) },
7 | { path: 'empty', loadChildren: () => import('./empty/emptydemo.module').then(m => m.EmptyDemoModule) },
8 | { path: 'timeline', loadChildren: () => import('./timeline/timelinedemo.module').then(m => m.TimelineDemoModule) },
9 | { path: '**', redirectTo: '/notfound' }
10 | ])],
11 | exports: [RouterModule]
12 | })
13 | export class PagesRoutingModule { }
14 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/pages.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { PagesRoutingModule } from './pages-routing.module';
4 |
5 | @NgModule({
6 | declarations: [],
7 | imports: [
8 | CommonModule,
9 | PagesRoutingModule
10 | ]
11 | })
12 | export class PagesModule { }
13 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/timeline/timelinedemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { TimelineDemoComponent } from './timelinedemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: TimelineDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class TimelineDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/timeline/timelinedemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { PrimeIcons } from 'primeng/api';
3 |
4 | @Component({
5 | templateUrl: './timelinedemo.component.html',
6 | styleUrls: ['./timelinedemo.scss']
7 | })
8 | export class TimelineDemoComponent implements OnInit {
9 |
10 | events1: any[] = [];
11 |
12 | events2: any[] = [];
13 |
14 | ngOnInit() {
15 | this.events1 = [
16 | { status: 'Ordered', date: '15/10/2020 10:30', icon: PrimeIcons.SHOPPING_CART, color: '#9C27B0', image: 'game-controller.jpg' },
17 | { status: 'Processing', date: '15/10/2020 14:00', icon: PrimeIcons.COG, color: '#673AB7' },
18 | { status: 'Shipped', date: '15/10/2020 16:15', icon: PrimeIcons.ENVELOPE, color: '#FF9800' },
19 | { status: 'Delivered', date: '16/10/2020 10:00', icon: PrimeIcons.CHECK, color: '#607D8B' }
20 | ];
21 |
22 | this.events2 = [
23 | "2020", "2021", "2022", "2023"
24 | ];
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/timeline/timelinedemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { TimelineDemoRoutingModule } from './timelinedemo-routing.module';
4 | import { TimelineDemoComponent } from './timelinedemo.component';
5 | import { TimelineModule } from 'primeng/timeline';
6 | import { ButtonModule } from 'primeng/button';
7 | import { CardModule } from 'primeng/card';
8 |
9 | @NgModule({
10 | imports: [
11 | CommonModule,
12 | TimelineModule,
13 | ButtonModule,
14 | CardModule,
15 | TimelineDemoRoutingModule
16 | ],
17 | declarations: [TimelineDemoComponent]
18 | })
19 | export class TimelineDemoModule { }
20 |
--------------------------------------------------------------------------------
/src/app/demo/components/pages/timeline/timelinedemo.scss:
--------------------------------------------------------------------------------
1 | @media screen and (max-width: 960px) {
2 | ::ng-deep {
3 | .customized-timeline {
4 | .p-timeline-event:nth-child(even) {
5 | flex-direction: row !important;
6 |
7 | .p-timeline-event-content {
8 | text-align: left !important;
9 | }
10 | }
11 |
12 | .p-timeline-event-opposite {
13 | flex: 0;
14 | }
15 |
16 | .p-card {
17 | margin-top: 1rem;
18 | }
19 | }
20 | }
21 | }
--------------------------------------------------------------------------------
/src/app/demo/components/primeblocks/blockviewer/blockviewer.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, Input } from '@angular/core';
2 |
3 | enum BlockView {
4 | PREVIEW,
5 | CODE
6 | }
7 |
8 | @Component({
9 | // eslint-disable-next-line @angular-eslint/component-selector
10 | selector: 'block-viewer',
11 | template: `
12 |
37 | `,
38 | styleUrls: ['./blockviewer.component.scss']
39 | })
40 | export class BlockViewerComponent {
41 |
42 | @Input() header!: string;
43 |
44 | @Input() code!: string;
45 |
46 | @Input() containerClass!: string;
47 |
48 | @Input() previewStyle!: object;
49 |
50 | @Input() free: boolean = true;
51 |
52 | @Input() new: boolean = false;
53 |
54 | BlockView = BlockView;
55 |
56 | blockView: BlockView = BlockView.PREVIEW;
57 |
58 | activateView(event: Event, blockView: BlockView) {
59 |
60 | this.blockView = blockView;
61 | event.preventDefault();
62 | }
63 |
64 |
65 | async copyCode(event: Event) {
66 | await navigator.clipboard.writeText(this.code);
67 | event.preventDefault();
68 | }
69 |
70 | }
71 |
--------------------------------------------------------------------------------
/src/app/demo/components/primeblocks/primeblocks-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { BlocksComponent } from './blocks/blocks.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: BlocksComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class PrimeBlocksRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/primeblocks/primeblocks.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { BlocksComponent } from './blocks/blocks.component';
4 | import { PrimeBlocksRoutingModule } from './primeblocks-routing.module';
5 | import { BlockViewerComponent } from './blockviewer/blockviewer.component'
6 | import { ChipModule } from 'primeng/chip';
7 | import { CheckboxModule } from 'primeng/checkbox';
8 | import { ButtonModule } from 'primeng/button';
9 | import { RippleModule } from 'primeng/ripple';
10 | import { FormsModule } from '@angular/forms';
11 | import { InputTextModule } from 'primeng/inputtext';
12 | import { PasswordModule } from 'primeng/password';
13 | import { TooltipModule } from 'primeng/tooltip';
14 |
15 | @NgModule({
16 | imports: [
17 | CommonModule,
18 | ButtonModule,
19 | RippleModule,
20 | ChipModule,
21 | CheckboxModule,
22 | FormsModule,
23 | InputTextModule,
24 | PasswordModule,
25 | TooltipModule,
26 | PrimeBlocksRoutingModule
27 | ],
28 | declarations: [BlocksComponent, BlockViewerComponent]
29 | })
30 | export class PrimeBlocksModule { }
31 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/button/buttondemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { ButtonDemoComponent } from './buttondemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: ButtonDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class ButtonDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/button/buttondemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { MenuItem } from 'primeng/api';
3 |
4 | @Component({
5 | templateUrl: './buttondemo.component.html'
6 | })
7 | export class ButtonDemoComponent implements OnInit {
8 |
9 | items: MenuItem[] = [];
10 |
11 | loading = [false, false, false, false];
12 |
13 | ngOnInit() {
14 | this.items = [
15 | { label: 'Update', icon: 'pi pi-refresh' },
16 | { label: 'Delete', icon: 'pi pi-times' },
17 | { label: 'Angular.io', icon: 'pi pi-info', url: 'http://angular.io' },
18 | { separator: true },
19 | { label: 'Setup', icon: 'pi pi-cog' }
20 | ];
21 | }
22 |
23 | load(index: number) {
24 | this.loading[index] = true;
25 | setTimeout(() => this.loading[index] = false, 1000);
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/button/buttondemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { ButtonDemoRoutingModule } from './buttondemo-routing.module';
4 | import { ButtonDemoComponent } from './buttondemo.component';
5 | import { ButtonModule } from 'primeng/button';
6 | import { RippleModule } from 'primeng/ripple';
7 | import { SplitButtonModule } from 'primeng/splitbutton';
8 | import { ToggleButtonModule } from 'primeng/togglebutton';
9 |
10 | @NgModule({
11 | imports: [
12 | CommonModule,
13 | ButtonDemoRoutingModule,
14 | ButtonModule,
15 | RippleModule,
16 | SplitButtonModule,
17 | ToggleButtonModule,
18 | ],
19 | declarations: [ButtonDemoComponent]
20 | })
21 | export class ButtonDemoModule { }
22 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/charts/chartsdemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { ChartsDemoComponent } from './chartsdemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: ChartsDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class ChartsDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/charts/chartsdemo.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
12 |
13 |
14 |
Polar Area Chart
15 |
16 |
17 |
18 |
19 |
23 |
24 |
25 |
Doughnut Chart
26 |
27 |
28 |
29 |
30 |
Radar Chart
31 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/charts/chartsdemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { ChartsDemoRoutingModule } from './chartsdemo-routing.module';
4 | import { ChartModule } from 'primeng/chart'
5 | import { ChartsDemoComponent } from './chartsdemo.component';
6 |
7 | @NgModule({
8 | imports: [
9 | CommonModule,
10 | ChartsDemoRoutingModule,
11 | ChartModule
12 | ],
13 | declarations: [ChartsDemoComponent]
14 | })
15 | export class ChartsDemoModule { }
16 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/file/filedemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { FileDemoComponent } from './filedemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: FileDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class FileDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/file/filedemo.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
Advanced
5 |
7 |
8 |
9 | - {{file.name}} - {{file.size}} bytes
10 |
11 |
12 |
13 |
14 |
Basic
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/file/filedemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 | import { MessageService } from 'primeng/api';
3 |
4 | @Component({
5 | templateUrl: './filedemo.component.html',
6 | providers: [MessageService]
7 | })
8 | export class FileDemoComponent {
9 |
10 | uploadedFiles: any[] = [];
11 |
12 | constructor(private messageService: MessageService) {}
13 |
14 | onUpload(event: any) {
15 | for (const file of event.files) {
16 | this.uploadedFiles.push(file);
17 | }
18 |
19 | this.messageService.add({ severity: 'info', summary: 'Success', detail: 'File Uploaded' });
20 | }
21 |
22 | onBasicUpload() {
23 | this.messageService.add({ severity: 'info', summary: 'Success', detail: 'File Uploaded with Basic Mode' });
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/file/filedemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { FileUploadModule } from 'primeng/fileupload';
5 | import { FileDemoRoutingModule } from './filedemo-routing.module';
6 | import { FileDemoComponent } from './filedemo.component';
7 |
8 |
9 | @NgModule({
10 | imports: [
11 | CommonModule,
12 | FormsModule,
13 | FileDemoRoutingModule,
14 | FileUploadModule
15 | ],
16 | declarations: [FileDemoComponent],
17 | })
18 | export class FileDemoModule { }
19 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/floatlabel/floatlabeldemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { FloatLabelDemoComponent } from './floatlabeldemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: FloatLabelDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class FloatlabelDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/floatlabel/floatlabeldemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { CountryService } from 'src/app/demo/service/country.service';
3 |
4 | @Component({
5 | templateUrl: './floatlabeldemo.component.html',
6 | })
7 | export class FloatLabelDemoComponent implements OnInit {
8 |
9 | countries: any[] = [];
10 |
11 | cities: any[];
12 |
13 | filteredCountries: any[] = [];
14 |
15 | value1: any;
16 |
17 | value2: any;
18 |
19 | value3: any;
20 |
21 | value4: any;
22 |
23 | value5: any;
24 |
25 | value6: any;
26 |
27 | value7: any;
28 |
29 | value8: any;
30 |
31 | value9: any;
32 |
33 | value10: any;
34 |
35 | value11: any;
36 |
37 | value12: any;
38 |
39 | constructor(private countryService: CountryService) {
40 | this.cities = [
41 | {name: 'New York', code: 'NY'},
42 | {name: 'Rome', code: 'RM'},
43 | {name: 'London', code: 'LDN'},
44 | {name: 'Istanbul', code: 'IST'},
45 | {name: 'Paris', code: 'PRS'}
46 | ];
47 | }
48 |
49 | ngOnInit() {
50 | this.countryService.getCountries().then(countries => {
51 | this.countries = countries;
52 | });
53 | }
54 |
55 | searchCountry(event: any) {
56 | // in a real application, make a request to a remote url with the query and
57 | // return filtered results, for demo we filter at client side
58 | const filtered: any[] = [];
59 | const query = event.query;
60 | // tslint:disable-next-line:prefer-for-of
61 | for (let i = 0; i < this.countries.length; i++) {
62 | const country = this.countries[i];
63 | if (country.name.toLowerCase().indexOf(query.toLowerCase()) == 0) {
64 | filtered.push(country);
65 | }
66 | }
67 |
68 | this.filteredCountries = filtered;
69 | }
70 | }
71 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/floatlabel/floatlabeldemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { FloatLabelDemoComponent } from './floatlabeldemo.component';
5 | import { FloatlabelDemoRoutingModule } from './floatlabeldemo-routing.module';
6 | import { AutoCompleteModule } from "primeng/autocomplete";
7 | import { CalendarModule } from "primeng/calendar";
8 | import { ChipsModule } from "primeng/chips";
9 | import { DropdownModule } from "primeng/dropdown";
10 | import { InputMaskModule } from "primeng/inputmask";
11 | import { InputNumberModule } from "primeng/inputnumber";
12 | import { CascadeSelectModule } from "primeng/cascadeselect";
13 | import { MultiSelectModule } from "primeng/multiselect";
14 | import { InputTextareaModule } from "primeng/inputtextarea";
15 | import { InputTextModule } from "primeng/inputtext";
16 | import { InputGroupAddonModule } from 'primeng/inputgroupaddon';
17 | import { InputGroupModule } from 'primeng/inputgroup';
18 | @NgModule({
19 | imports: [
20 | CommonModule,
21 | FormsModule,
22 | FloatlabelDemoRoutingModule,
23 | AutoCompleteModule,
24 | CalendarModule,
25 | ChipsModule,
26 | DropdownModule,
27 | InputMaskModule,
28 | InputNumberModule,
29 | CascadeSelectModule,
30 | MultiSelectModule,
31 | InputTextareaModule,
32 | InputTextModule,
33 | InputGroupModule,
34 | InputGroupAddonModule
35 | ],
36 | declarations: [FloatLabelDemoComponent]
37 | })
38 | export class FloatlabelDemoModule { }
39 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/formlayout/formlayoutdemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { FormLayoutDemoComponent } from './formlayoutdemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: FormLayoutDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class FormLayoutDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/formlayout/formlayoutdemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | templateUrl: './formlayoutdemo.component.html'
5 | })
6 | export class FormLayoutDemoComponent {
7 |
8 | selectedState: any = null;
9 |
10 | states: any[] = [
11 | {name: 'Arizona', code: 'Arizona'},
12 | {name: 'California', value: 'California'},
13 | {name: 'Florida', code: 'Florida'},
14 | {name: 'Ohio', code: 'Ohio'},
15 | {name: 'Washington', code: 'Washington'}
16 | ];
17 |
18 | dropdownItems = [
19 | { name: 'Option 1', code: 'Option 1' },
20 | { name: 'Option 2', code: 'Option 2' },
21 | { name: 'Option 3', code: 'Option 3' }
22 | ];
23 |
24 | cities1: any[] = [];
25 |
26 | cities2: any[] = [];
27 |
28 | city1: any = null;
29 |
30 | city2: any = null;
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/formlayout/formlayoutdemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { FormLayoutDemoComponent } from './formlayoutdemo.component';
5 | import { FormLayoutDemoRoutingModule } from './formlayoutdemo-routing.module';
6 | import { AutoCompleteModule } from "primeng/autocomplete";
7 | import { CalendarModule } from "primeng/calendar";
8 | import { ChipsModule } from "primeng/chips";
9 | import { DropdownModule } from "primeng/dropdown";
10 | import { InputMaskModule } from "primeng/inputmask";
11 | import { InputNumberModule } from "primeng/inputnumber";
12 | import { CascadeSelectModule } from "primeng/cascadeselect";
13 | import { MultiSelectModule } from "primeng/multiselect";
14 | import { InputTextareaModule } from "primeng/inputtextarea";
15 | import { InputTextModule } from "primeng/inputtext";
16 |
17 | @NgModule({
18 | imports: [
19 | CommonModule,
20 | FormsModule,
21 | FormLayoutDemoRoutingModule,
22 | AutoCompleteModule,
23 | CalendarModule,
24 | ChipsModule,
25 | DropdownModule,
26 | InputMaskModule,
27 | InputNumberModule,
28 | CascadeSelectModule,
29 | MultiSelectModule,
30 | InputTextareaModule,
31 | InputTextModule
32 | ],
33 | declarations: [FormLayoutDemoComponent]
34 | })
35 | export class FormLayoutDemoModule { }
36 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/input/inputdemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { InputDemoComponent } from './inputdemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: InputDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class InputDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/input/inputdemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { SelectItem } from 'primeng/api';
3 | import { CountryService } from 'src/app/demo/service/country.service';
4 |
5 | @Component({
6 | templateUrl: './inputdemo.component.html'
7 | })
8 | export class InputDemoComponent implements OnInit {
9 |
10 | countries: any[] = [];
11 |
12 | filteredCountries: any[] = [];
13 |
14 | selectedCountryAdvanced: any[] = [];
15 |
16 | valSlider = 50;
17 |
18 | valColor = '#424242';
19 |
20 | valRadio: string = '';
21 |
22 | valCheck: string[] = [];
23 |
24 | valCheck2: boolean = false;
25 |
26 | valSwitch: boolean = false;
27 |
28 | cities: SelectItem[] = [];
29 |
30 | selectedList: SelectItem = { value: '' };
31 |
32 | selectedDrop: SelectItem = { value: '' };
33 |
34 | selectedMulti: any[] = [];
35 |
36 | valToggle = false;
37 |
38 | paymentOptions: any[] = [];
39 |
40 | valSelect1: string = "";
41 |
42 | valSelect2: string = "";
43 |
44 | valueKnob = 20;
45 |
46 | constructor(private countryService: CountryService) { }
47 |
48 | ngOnInit() {
49 | this.countryService.getCountries().then(countries => {
50 | this.countries = countries;
51 | });
52 |
53 | this.cities = [
54 | { label: 'New York', value: { id: 1, name: 'New York', code: 'NY' } },
55 | { label: 'Rome', value: { id: 2, name: 'Rome', code: 'RM' } },
56 | { label: 'London', value: { id: 3, name: 'London', code: 'LDN' } },
57 | { label: 'Istanbul', value: { id: 4, name: 'Istanbul', code: 'IST' } },
58 | { label: 'Paris', value: { id: 5, name: 'Paris', code: 'PRS' } }
59 | ];
60 |
61 | this.paymentOptions = [
62 | { name: 'Option 1', value: 1 },
63 | { name: 'Option 2', value: 2 },
64 | { name: 'Option 3', value: 3 }
65 | ];
66 | }
67 |
68 | filterCountry(event: any) {
69 | const filtered: any[] = [];
70 | const query = event.query;
71 | for (let i = 0; i < this.countries.length; i++) {
72 | const country = this.countries[i];
73 | if (country.name.toLowerCase().indexOf(query.toLowerCase()) == 0) {
74 | filtered.push(country);
75 | }
76 | }
77 |
78 | this.filteredCountries = filtered;
79 | }
80 | }
81 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/input/inputdemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { InputDemoComponent } from './inputdemo.component';
5 | import { InputDemoRoutingModule } from './inputdemo-routing.module';
6 | import { AutoCompleteModule } from "primeng/autocomplete";
7 | import { CalendarModule } from "primeng/calendar";
8 | import { ChipsModule } from "primeng/chips";
9 | import { ChipModule } from "primeng/chip";
10 | import { DropdownModule } from "primeng/dropdown";
11 | import { InputMaskModule } from "primeng/inputmask";
12 | import { InputNumberModule } from "primeng/inputnumber";
13 | import { CascadeSelectModule } from "primeng/cascadeselect";
14 | import { MultiSelectModule } from "primeng/multiselect";
15 | import { InputTextareaModule } from "primeng/inputtextarea";
16 | import { InputTextModule } from "primeng/inputtext";
17 | import { RatingModule } from 'primeng/rating';
18 | import { KnobModule } from 'primeng/knob';
19 | import { ListboxModule } from 'primeng/listbox';
20 | import { SelectButtonModule } from 'primeng/selectbutton';
21 | import { CheckboxModule } from 'primeng/checkbox';
22 | import { ButtonModule } from 'primeng/button';
23 | import { InputSwitchModule } from 'primeng/inputswitch';
24 | import { RadioButtonModule } from 'primeng/radiobutton';
25 | import { ColorPickerModule } from 'primeng/colorpicker';
26 | import { ToggleButtonModule } from 'primeng/togglebutton';
27 | import { SliderModule } from 'primeng/slider';
28 | import { InputGroupAddonModule } from 'primeng/inputgroupaddon';
29 | import { InputGroupModule } from 'primeng/inputgroup';
30 | @NgModule({
31 | imports: [
32 | CommonModule,
33 | FormsModule,
34 | InputDemoRoutingModule,
35 | AutoCompleteModule,
36 | CalendarModule,
37 | ChipsModule,
38 | DropdownModule,
39 | InputMaskModule,
40 | InputNumberModule,
41 | ColorPickerModule,
42 | CascadeSelectModule,
43 | MultiSelectModule,
44 | ToggleButtonModule,
45 | SliderModule,
46 | InputTextareaModule,
47 | RadioButtonModule,
48 | InputTextModule,
49 | RatingModule,
50 | ChipModule,
51 | KnobModule,
52 | InputSwitchModule,
53 | ListboxModule,
54 | SelectButtonModule,
55 | CheckboxModule,
56 | ButtonModule,
57 | InputGroupModule,
58 | InputGroupAddonModule
59 | ],
60 | declarations: [InputDemoComponent]
61 | })
62 | export class InputDemoModule { }
63 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/invalid/invalidstatedemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { InvalidStateDemoComponent } from './invalidstatedemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: InvalidStateDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class InvalidStateDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/invalid/invalidstatedemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { CountryService } from 'src/app/demo/service/country.service';
3 |
4 | @Component({
5 | templateUrl: './invalidstatedemo.component.html'
6 | })
7 | export class InvalidStateDemoComponent implements OnInit {
8 |
9 | countries: any[] = [];
10 |
11 | cities: any[];
12 |
13 | filteredCountries: any[] = [];
14 |
15 | value1: any;
16 |
17 | value2: any;
18 |
19 | value3: any;
20 |
21 | value4: any;
22 |
23 | value5: any;
24 |
25 | value6: any;
26 |
27 | value7: any;
28 |
29 | value8: any;
30 |
31 | value9: any;
32 |
33 | value10: any;
34 |
35 | constructor(private countryService: CountryService) {
36 | this.cities = [
37 | { name: 'New York', code: 'NY' },
38 | { name: 'Rome', code: 'RM' },
39 | { name: 'London', code: 'LDN' },
40 | { name: 'Istanbul', code: 'IST' },
41 | { name: 'Paris', code: 'PRS' }
42 | ];
43 | }
44 |
45 | ngOnInit() {
46 | this.countryService.getCountries().then(countries => {
47 | this.countries = countries;
48 | });
49 | }
50 |
51 | searchCountry(event: any) {
52 | // in a real application, make a request to a remote url with the query and return filtered results,
53 | // for demo we filter at client side
54 | const filtered: any[] = [];
55 | const query = event.query;
56 | for (let i = 0; i < this.countries.length; i++) {
57 | const country = this.countries[i];
58 | if (country.name.toLowerCase().indexOf(query.toLowerCase()) == 0) {
59 | filtered.push(country);
60 | }
61 | }
62 |
63 | this.filteredCountries = filtered;
64 | }
65 |
66 | }
67 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/invalid/invalidstatedemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { InvalidStateDemoComponent } from './invalidstatedemo.component';
5 | import { InvalidStateDemoRoutingModule } from './invalidstatedemo-routing.module';
6 | import { AutoCompleteModule } from "primeng/autocomplete";
7 | import { CalendarModule } from "primeng/calendar";
8 | import { ChipsModule } from "primeng/chips";
9 | import { DropdownModule } from "primeng/dropdown";
10 | import { InputMaskModule } from "primeng/inputmask";
11 | import { InputNumberModule } from "primeng/inputnumber";
12 | import { CascadeSelectModule } from "primeng/cascadeselect";
13 | import { MultiSelectModule } from "primeng/multiselect";
14 | import { InputTextareaModule } from "primeng/inputtextarea";
15 | import { InputTextModule } from "primeng/inputtext";
16 | import { PasswordModule } from "primeng/password";
17 |
18 | @NgModule({
19 | imports: [
20 | CommonModule,
21 | FormsModule,
22 | InvalidStateDemoRoutingModule,
23 | AutoCompleteModule,
24 | CalendarModule,
25 | ChipsModule,
26 | DropdownModule,
27 | InputMaskModule,
28 | InputNumberModule,
29 | CascadeSelectModule,
30 | MultiSelectModule,
31 | PasswordModule,
32 | InputTextareaModule,
33 | InputTextModule
34 | ],
35 | declarations: [InvalidStateDemoComponent]
36 | })
37 | export class InvalidStateDemoModule { }
38 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/list/listdemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { ListDemoComponent } from './listdemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: ListDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class ListDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/list/listdemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { SelectItem } from 'primeng/api';
3 | import { DataView } from 'primeng/dataview';
4 | import { Product } from 'src/app/demo/api/product';
5 | import { ProductService } from 'src/app/demo/service/product.service';
6 |
7 | @Component({
8 | templateUrl: './listdemo.component.html'
9 | })
10 | export class ListDemoComponent implements OnInit {
11 |
12 | products: Product[] = [];
13 |
14 | sortOptions: SelectItem[] = [];
15 |
16 | sortOrder: number = 0;
17 |
18 | sortField: string = '';
19 |
20 | sourceCities: any[] = [];
21 |
22 | targetCities: any[] = [];
23 |
24 | orderCities: any[] = [];
25 |
26 | constructor(private productService: ProductService) { }
27 |
28 | ngOnInit() {
29 | this.productService.getProducts().then(data => this.products = data);
30 |
31 | this.sourceCities = [
32 | { name: 'San Francisco', code: 'SF' },
33 | { name: 'London', code: 'LDN' },
34 | { name: 'Paris', code: 'PRS' },
35 | { name: 'Istanbul', code: 'IST' },
36 | { name: 'Berlin', code: 'BRL' },
37 | { name: 'Barcelona', code: 'BRC' },
38 | { name: 'Rome', code: 'RM' }];
39 |
40 | this.targetCities = [];
41 |
42 | this.orderCities = [
43 | { name: 'San Francisco', code: 'SF' },
44 | { name: 'London', code: 'LDN' },
45 | { name: 'Paris', code: 'PRS' },
46 | { name: 'Istanbul', code: 'IST' },
47 | { name: 'Berlin', code: 'BRL' },
48 | { name: 'Barcelona', code: 'BRC' },
49 | { name: 'Rome', code: 'RM' }];
50 |
51 | this.sortOptions = [
52 | { label: 'Price High to Low', value: '!price' },
53 | { label: 'Price Low to High', value: 'price' }
54 | ];
55 | }
56 |
57 | onSortChange(event: any) {
58 | const value = event.value;
59 |
60 | if (value.indexOf('!') === 0) {
61 | this.sortOrder = -1;
62 | this.sortField = value.substring(1, value.length);
63 | } else {
64 | this.sortOrder = 1;
65 | this.sortField = value;
66 | }
67 | }
68 |
69 | onFilter(dv: DataView, event: Event) {
70 | dv.filter((event.target as HTMLInputElement).value);
71 | }
72 |
73 | }
74 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/list/listdemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { ListDemoComponent } from './listdemo.component';
5 | import { ListDemoRoutingModule } from './listdemo-routing.module';
6 | import { DataViewModule } from 'primeng/dataview';
7 | import { PickListModule } from 'primeng/picklist';
8 | import { OrderListModule } from 'primeng/orderlist';
9 | import { InputTextModule } from 'primeng/inputtext';
10 | import { DropdownModule } from 'primeng/dropdown';
11 | import { RatingModule } from 'primeng/rating';
12 | import { ButtonModule } from 'primeng/button';
13 |
14 | @NgModule({
15 | imports: [
16 | CommonModule,
17 | FormsModule,
18 | ListDemoRoutingModule,
19 | DataViewModule,
20 | PickListModule,
21 | OrderListModule,
22 | InputTextModule,
23 | DropdownModule,
24 | RatingModule,
25 | ButtonModule
26 | ],
27 | declarations: [ListDemoComponent]
28 | })
29 | export class ListDemoModule { }
30 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/media/mediademo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { MediaDemoComponent } from './mediademo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: MediaDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class MediaDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/media/mediademo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { ProductService } from 'src/app/demo/service/product.service';
3 | import { PhotoService } from 'src/app/demo/service/photo.service';
4 | import { Product } from 'src/app/demo/api/product';
5 |
6 | @Component({
7 | templateUrl: './mediademo.component.html'
8 | })
9 | export class MediaDemoComponent implements OnInit {
10 |
11 | products!: Product[];
12 |
13 | images!: any[];
14 |
15 | galleriaResponsiveOptions: any[] = [
16 | {
17 | breakpoint: '1024px',
18 | numVisible: 5
19 | },
20 | {
21 | breakpoint: '960px',
22 | numVisible: 4
23 | },
24 | {
25 | breakpoint: '768px',
26 | numVisible: 3
27 | },
28 | {
29 | breakpoint: '560px',
30 | numVisible: 1
31 | }
32 | ];
33 |
34 | carouselResponsiveOptions: any[] = [
35 | {
36 | breakpoint: '1024px',
37 | numVisible: 3,
38 | numScroll: 3
39 | },
40 | {
41 | breakpoint: '768px',
42 | numVisible: 2,
43 | numScroll: 2
44 | },
45 | {
46 | breakpoint: '560px',
47 | numVisible: 1,
48 | numScroll: 1
49 | }
50 | ];
51 |
52 | constructor(private productService: ProductService, private photoService: PhotoService) { }
53 |
54 | ngOnInit() {
55 | this.productService.getProductsSmall().then(products => {
56 | this.products = products;
57 | });
58 |
59 | this.photoService.getImages().then(images => {
60 | this.images = images;
61 | });
62 | }
63 |
64 | }
65 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/media/mediademo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { MediaDemoComponent } from './mediademo.component';
4 | import { MediaDemoRoutingModule } from './mediademo-routing.module';
5 | import { ButtonModule } from 'primeng/button';
6 | import { ImageModule } from 'primeng/image';
7 | import { GalleriaModule } from 'primeng/galleria';
8 | import { CarouselModule } from 'primeng/carousel';
9 |
10 | @NgModule({
11 | imports: [
12 | CommonModule,
13 | MediaDemoRoutingModule,
14 | ButtonModule,
15 | ImageModule,
16 | GalleriaModule,
17 | CarouselModule
18 | ],
19 | declarations: [MediaDemoComponent]
20 | })
21 | export class MediaDemoModule { }
22 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/menus/confirmation.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | template: `
5 |
6 |
7 |
Confirmation Component Content via Child Route
8 |
9 | `
10 | })
11 | export class ConfirmationComponent {
12 |
13 | constructor() { }
14 | }
15 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/menus/menus.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { RouterModule } from '@angular/router';
4 | import { MenusComponent } from './menus.component';
5 | import { PaymentComponent } from './payment.component';
6 | import { SeatComponent } from './seat.component';
7 | import { PersonalComponent } from './personal.component';
8 | import { ConfirmationComponent } from './confirmation.component';
9 | import { BreadcrumbModule } from 'primeng/breadcrumb';
10 | import { MenubarModule } from 'primeng/menubar';
11 | import { TabMenuModule } from 'primeng/tabmenu';
12 | import { StepsModule } from 'primeng/steps';
13 | import { TieredMenuModule } from 'primeng/tieredmenu';
14 | import { MenuModule } from 'primeng/menu';
15 | import { ButtonModule } from 'primeng/button';
16 | import { ContextMenuModule } from 'primeng/contextmenu';
17 | import { MegaMenuModule } from 'primeng/megamenu';
18 | import { PanelMenuModule } from 'primeng/panelmenu';
19 | import { InputTextModule } from 'primeng/inputtext';
20 | @NgModule({
21 | imports: [
22 | CommonModule,
23 | BreadcrumbModule,
24 | MenubarModule,
25 | TabMenuModule,
26 | StepsModule,
27 | TieredMenuModule,
28 | MenuModule,
29 | ButtonModule,
30 | ContextMenuModule,
31 | MegaMenuModule,
32 | PanelMenuModule,
33 | InputTextModule,
34 | RouterModule.forChild([
35 | {
36 | path: '', component: MenusComponent, children: [
37 | { path: '', redirectTo: 'personal', pathMatch: 'full' },
38 | { path: 'personal', component: PersonalComponent },
39 | { path: 'confirmation', component: ConfirmationComponent },
40 | { path: 'seat', component: SeatComponent },
41 | { path: 'payment', component: PaymentComponent }
42 | ]
43 | }
44 | ])
45 | ],
46 | declarations: [MenusComponent],
47 | exports: [RouterModule]
48 | })
49 | export class MenusModule { }
50 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/menus/payment.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | template: `
5 |
6 |
7 |
Payment Component Content via Child Route
8 |
9 | `
10 | })
11 | export class PaymentComponent {
12 |
13 | constructor() { }
14 | }
15 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/menus/personal.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | template: `
5 |
6 |
7 |
Personal Component Content via Child Route
8 |
9 | `
10 | })
11 | export class PersonalComponent {
12 |
13 | constructor() { }
14 | }
15 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/menus/seat.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 |
3 | @Component({
4 | template: `
5 |
6 |
7 |
Seat Component Content via Child Route
8 |
9 | `
10 | })
11 | export class SeatComponent {
12 |
13 | constructor() { }
14 | }
15 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/messages/messagesdemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { MessagesDemoComponent } from './messagesdemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: MessagesDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class MessagesDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/messages/messagesdemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 | import { Message, MessageService } from 'primeng/api';
3 |
4 | @Component({
5 | templateUrl: './messagesdemo.component.html',
6 | providers: [MessageService]
7 | })
8 | export class MessagesDemoComponent {
9 |
10 | msgs: Message[] = [];
11 |
12 | constructor(private service: MessageService) { }
13 |
14 | showInfoViaToast() {
15 | this.service.add({ key: 'tst', severity: 'info', summary: 'Info Message', detail: 'PrimeNG rocks' });
16 | }
17 |
18 | showWarnViaToast() {
19 | this.service.add({ key: 'tst', severity: 'warn', summary: 'Warn Message', detail: 'There are unsaved changes' });
20 | }
21 |
22 | showErrorViaToast() {
23 | this.service.add({ key: 'tst', severity: 'error', summary: 'Error Message', detail: 'Validation failed' });
24 | }
25 |
26 | showSuccessViaToast() {
27 | this.service.add({ key: 'tst', severity: 'success', summary: 'Success Message', detail: 'Message sent' });
28 | }
29 |
30 | showInfoViaMessages() {
31 | this.msgs = [];
32 | this.msgs.push({ severity: 'info', summary: 'Info Message', detail: 'PrimeNG rocks' });
33 | }
34 |
35 | showWarnViaMessages() {
36 | this.msgs = [];
37 | this.msgs.push({ severity: 'warn', summary: 'Warn Message', detail: 'There are unsaved changes' });
38 | }
39 |
40 | showErrorViaMessages() {
41 | this.msgs = [];
42 | this.msgs.push({ severity: 'error', summary: 'Error Message', detail: 'Validation failed' });
43 | }
44 |
45 | showSuccessViaMessages() {
46 | this.msgs = [];
47 | this.msgs.push({ severity: 'success', summary: 'Success Message', detail: 'Message sent' });
48 | }
49 |
50 | }
51 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/messages/messagesdemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { MessagesDemoComponent } from './messagesdemo.component';
4 | import { MessagesDemoRoutingModule } from './messagesdemo-routing.module';
5 | import { MessagesModule } from 'primeng/messages';
6 | import { MessageModule } from 'primeng/message';
7 | import { ButtonModule } from 'primeng/button';
8 | import { ToastModule } from 'primeng/toast';
9 | import { InputTextModule } from 'primeng/inputtext';
10 |
11 | @NgModule({
12 | imports: [
13 | CommonModule,
14 | MessagesDemoRoutingModule,
15 | MessagesModule,
16 | MessageModule,
17 | ButtonModule,
18 | ToastModule,
19 | InputTextModule
20 | ],
21 | declarations: [MessagesDemoComponent]
22 | })
23 | export class MessagesDemoModule { }
24 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/misc/miscdemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { MiscDemoComponent } from './miscdemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: MiscDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class MiscDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/misc/miscdemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnDestroy, OnInit } from '@angular/core';
2 |
3 | @Component({
4 | templateUrl: './miscdemo.component.html'
5 | })
6 | export class MiscDemoComponent implements OnInit, OnDestroy {
7 |
8 | value = 0;
9 |
10 | interval: any;
11 |
12 | ngOnInit() {
13 | this.interval = setInterval(() => {
14 | this.value = this.value + Math.floor(Math.random() * 10) + 1;
15 | if (this.value >= 100) {
16 | this.value = 100;
17 | clearInterval(this.interval);
18 | }
19 | }, 2000);
20 | }
21 |
22 | ngOnDestroy() {
23 | clearInterval(this.interval);
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/misc/miscdemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { MiscDemoComponent } from './miscdemo.component';
4 | import { MiscDemoRoutingModule } from './miscdemo-routing.module';
5 | import { ProgressBarModule } from 'primeng/progressbar';
6 | import { BadgeModule } from 'primeng/badge';
7 | import { AvatarModule } from 'primeng/avatar';
8 | import { ScrollPanelModule } from 'primeng/scrollpanel';
9 | import { TagModule } from 'primeng/tag';
10 | import { ChipModule } from 'primeng/chip';
11 | import { SkeletonModule } from 'primeng/skeleton';
12 | import { ButtonModule } from 'primeng/button';
13 | import { AvatarGroupModule } from 'primeng/avatargroup';
14 | import { ScrollTopModule } from 'primeng/scrolltop';
15 |
16 | @NgModule({
17 | imports: [
18 | CommonModule,
19 | MiscDemoRoutingModule,
20 | ProgressBarModule,
21 | BadgeModule,
22 | AvatarModule,
23 | ScrollPanelModule,
24 | TagModule,
25 | ChipModule,
26 | ButtonModule,
27 | SkeletonModule,
28 | AvatarGroupModule,
29 | ScrollTopModule
30 | ],
31 | declarations: [MiscDemoComponent]
32 | })
33 | export class MiscDemoModule { }
34 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/overlays/overlaysdemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { OverlaysDemoComponent } from './overlaysdemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: OverlaysDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class OverlaysDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/overlays/overlaysdemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { OverlaysDemoComponent } from './overlaysdemo.component';
5 | import { OverlaysDemoRoutingModule } from './overlaysdemo-routing.module';
6 | import { ToastModule } from 'primeng/toast';
7 | import { DialogModule } from 'primeng/dialog';
8 | import { ButtonModule } from 'primeng/button';
9 | import { OverlayPanelModule } from 'primeng/overlaypanel';
10 | import { TableModule } from 'primeng/table';
11 | import { ConfirmDialogModule } from 'primeng/confirmdialog';
12 | import { SidebarModule } from 'primeng/sidebar';
13 | import { RippleModule } from 'primeng/ripple';
14 | import { ConfirmPopupModule } from 'primeng/confirmpopup';
15 | import { TooltipModule } from 'primeng/tooltip';
16 | import { InputTextModule } from 'primeng/inputtext';
17 | @NgModule({
18 | imports: [
19 | CommonModule,
20 | OverlaysDemoRoutingModule,
21 | ToastModule,
22 | DialogModule,
23 | FormsModule,
24 | TooltipModule,
25 | InputTextModule,
26 | ButtonModule,
27 | OverlayPanelModule,
28 | TableModule,
29 | ConfirmDialogModule,
30 | SidebarModule,
31 | RippleModule,
32 | ConfirmPopupModule
33 | ],
34 | declarations: [OverlaysDemoComponent]
35 | })
36 | export class OverlaysDemoModule { }
37 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/panels/panelsdemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { PanelsDemoComponent } from './panelsdemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: PanelsDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class PanelsDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/panels/panelsdemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { MenuItem } from 'primeng/api';
3 |
4 | @Component({
5 | templateUrl: './panelsdemo.component.html'
6 | })
7 | export class PanelsDemoComponent implements OnInit {
8 |
9 | items: MenuItem[] = [];
10 |
11 | cardMenu: MenuItem[] = [];
12 |
13 | ngOnInit() {
14 | this.items = [
15 | { label: 'Angular.io', icon: 'pi pi-external-link', url: 'http://angular.io' },
16 | { label: 'Theming', icon: 'pi pi-bookmark', routerLink: ['/theming'] }
17 | ];
18 |
19 | this.cardMenu = [
20 | {
21 | label: 'Save', icon: 'pi pi-fw pi-check'
22 | },
23 | {
24 | label: 'Update', icon: 'pi pi-fw pi-refresh'
25 | },
26 | {
27 | label: 'Delete', icon: 'pi pi-fw pi-trash'
28 | },
29 | ];
30 | }
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/panels/panelsdemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { PanelsDemoComponent } from './panelsdemo.component';
5 | import { PanelsDemoRoutingModule } from './panelsdemo-routing.module';
6 | import { ToolbarModule } from 'primeng/toolbar';
7 | import { ButtonModule } from 'primeng/button';
8 | import { RippleModule } from 'primeng/ripple';
9 | import { SplitButtonModule } from 'primeng/splitbutton';
10 | import { AccordionModule } from 'primeng/accordion';
11 | import { TabViewModule } from 'primeng/tabview';
12 | import { FieldsetModule } from 'primeng/fieldset';
13 | import { MenuModule } from 'primeng/menu';
14 | import { InputTextModule } from 'primeng/inputtext';
15 | import { DividerModule } from 'primeng/divider';
16 | import { SplitterModule } from 'primeng/splitter';
17 | import { PanelModule } from 'primeng/panel';
18 |
19 | @NgModule({
20 | imports: [
21 | CommonModule,
22 | FormsModule,
23 | PanelsDemoRoutingModule,
24 | ToolbarModule,
25 | ButtonModule,
26 | RippleModule,
27 | SplitButtonModule,
28 | AccordionModule,
29 | TabViewModule,
30 | FieldsetModule,
31 | MenuModule,
32 | InputTextModule,
33 | DividerModule,
34 | SplitterModule,
35 | PanelModule
36 | ],
37 | declarations: [PanelsDemoComponent]
38 | })
39 | export class PanelsDemoModule { }
40 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/table/tabledemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { TableDemoComponent } from './tabledemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: TableDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class TableDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/table/tabledemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { TableDemoComponent } from './tabledemo.component';
5 | import { TableDemoRoutingModule } from './tabledemo-routing.module';
6 | import { TableModule } from 'primeng/table';
7 | import { ButtonModule } from 'primeng/button';
8 | import { InputTextModule } from 'primeng/inputtext';
9 | import { ToggleButtonModule } from 'primeng/togglebutton';
10 | import { RippleModule } from 'primeng/ripple';
11 | import { MultiSelectModule } from 'primeng/multiselect';
12 | import { DropdownModule } from 'primeng/dropdown';
13 | import { ProgressBarModule } from 'primeng/progressbar';
14 | import { ToastModule } from 'primeng/toast';
15 | import { SliderModule } from 'primeng/slider';
16 | import { RatingModule } from 'primeng/rating';
17 |
18 | @NgModule({
19 | imports: [
20 | CommonModule,
21 | TableDemoRoutingModule,
22 | FormsModule,
23 | TableModule,
24 | RatingModule,
25 | ButtonModule,
26 | SliderModule,
27 | InputTextModule,
28 | ToggleButtonModule,
29 | RippleModule,
30 | MultiSelectModule,
31 | DropdownModule,
32 | ProgressBarModule,
33 | ToastModule
34 | ],
35 | declarations: [TableDemoComponent]
36 | })
37 | export class TableDemoModule { }
38 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/tree/treedemo-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { TreeDemoComponent } from './treedemo.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: '', component: TreeDemoComponent }
8 | ])],
9 | exports: [RouterModule]
10 | })
11 | export class TreeDemoRoutingModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/tree/treedemo.component.html:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
TreeTable
11 |
12 |
13 |
14 |
15 | {{col.header}}
16 | |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 | {{rowData[col.field]}}
25 | |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
Horizontal Tree
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/tree/treedemo.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { NodeService } from 'src/app/demo/service/node.service';
3 | import { TreeNode} from 'primeng/api';
4 |
5 | @Component({
6 | templateUrl: './treedemo.component.html'
7 | })
8 | export class TreeDemoComponent implements OnInit {
9 |
10 | files1: TreeNode[] = [];
11 |
12 | files2: TreeNode[] = [];
13 |
14 | files3: TreeNode[] = [];
15 |
16 | selectedFiles1: TreeNode[] = [];
17 |
18 | selectedFiles2: TreeNode[] = [];
19 |
20 | selectedFiles3: TreeNode = {};
21 |
22 | cols: any[] = [];
23 |
24 | constructor(private nodeService: NodeService) {}
25 |
26 | ngOnInit() {
27 | this.nodeService.getFiles().then(files => this.files1 = files);
28 | this.nodeService.getFilesystem().then(files => this.files2 = files);
29 | this.nodeService.getFiles().then(files => {
30 | this.files3 = [{
31 | label: 'Root',
32 | children: files
33 | }];
34 | });
35 |
36 | this.cols = [
37 | { field: 'name', header: 'Name' },
38 | { field: 'size', header: 'Size' },
39 | { field: 'type', header: 'Type' }
40 | ];
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/tree/treedemo.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { TreeDemoComponent } from './treedemo.component';
5 | import { TreeDemoRoutingModule } from './treedemo-routing.module';
6 | import { TreeModule } from 'primeng/tree';
7 | import { TreeTableModule } from 'primeng/treetable';
8 |
9 | @NgModule({
10 | imports: [
11 | CommonModule,
12 | TreeDemoRoutingModule,
13 | FormsModule,
14 | TreeModule,
15 | TreeTableModule
16 | ],
17 | declarations: [TreeDemoComponent],
18 | })
19 | export class TreeDemoModule { }
20 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/uikit-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 |
4 | @NgModule({
5 | imports: [RouterModule.forChild([
6 | { path: 'button', data: { breadcrumb: 'Button' }, loadChildren: () => import('./button/buttondemo.module').then(m => m.ButtonDemoModule) },
7 | { path: 'charts', data: { breadcrumb: 'Charts' }, loadChildren: () => import('./charts/chartsdemo.module').then(m => m.ChartsDemoModule) },
8 | { path: 'file', data: { breadcrumb: 'File' }, loadChildren: () => import('./file/filedemo.module').then(m => m.FileDemoModule) },
9 | { path: 'floatlabel', data: { breadcrumb: 'Float Label' }, loadChildren: () => import('./floatlabel/floatlabeldemo.module').then(m => m.FloatlabelDemoModule) },
10 | { path: 'formlayout', data: { breadcrumb: 'Form Layout' }, loadChildren: () => import('./formlayout/formlayoutdemo.module').then(m => m.FormLayoutDemoModule) },
11 | { path: 'input', data: { breadcrumb: 'Input' }, loadChildren: () => import('./input/inputdemo.module').then(m => m.InputDemoModule) },
12 | { path: 'invalidstate', data: { breadcrumb: 'Invalid State' }, loadChildren: () => import('./invalid/invalidstatedemo.module').then(m => m.InvalidStateDemoModule) },
13 | { path: 'list', data: { breadcrumb: 'List' }, loadChildren: () => import('./list/listdemo.module').then(m => m.ListDemoModule) },
14 | { path: 'media', data: { breadcrumb: 'Media' }, loadChildren: () => import('./media/mediademo.module').then(m => m.MediaDemoModule) },
15 | { path: 'message', data: { breadcrumb: 'Message' }, loadChildren: () => import('./messages/messagesdemo.module').then(m => m.MessagesDemoModule) },
16 | { path: 'misc', data: { breadcrumb: 'Misc' }, loadChildren: () => import('./misc/miscdemo.module').then(m => m.MiscDemoModule) },
17 | { path: 'overlay', data: { breadcrumb: 'Overlay' }, loadChildren: () => import('./overlays/overlaysdemo.module').then(m => m.OverlaysDemoModule) },
18 | { path: 'panel', data: { breadcrumb: 'Panel' }, loadChildren: () => import('./panels/panelsdemo.module').then(m => m.PanelsDemoModule) },
19 | { path: 'table', data: { breadcrumb: 'Table' }, loadChildren: () => import('./table/tabledemo.module').then(m => m.TableDemoModule) },
20 | { path: 'tree', data: { breadcrumb: 'Tree' }, loadChildren: () => import('./tree/treedemo.module').then(m => m.TreeDemoModule) },
21 | { path: 'menu', data: { breadcrumb: 'Menu' }, loadChildren: () => import('./menus/menus.module').then(m => m.MenusModule) },
22 | { path: '**', redirectTo: '/notfound' }
23 | ])],
24 | exports: [RouterModule]
25 | })
26 | export class UIkitRoutingModule { }
27 |
--------------------------------------------------------------------------------
/src/app/demo/components/uikit/uikit.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { UIkitRoutingModule } from './uikit-routing.module';
4 |
5 | @NgModule({
6 | imports: [
7 | CommonModule,
8 | UIkitRoutingModule
9 | ]
10 | })
11 | export class UIkitModule { }
12 |
--------------------------------------------------------------------------------
/src/app/demo/components/utilities/icons/icons.component.html:
--------------------------------------------------------------------------------
1 |
2 |
Icons
3 |
Download
4 |
npm install primeicons --save
5 |
6 |
Getting Started
7 |
PrimeIcons use the pi pi-{icon} syntax such as pi pi-check.
8 | A standalone icon can be displayed using an element such as i or span
9 |
10 |
<i class="pi pi-check"></i>
11 | <i class="pi pi-times"></i>
12 |
13 |
14 |
15 |
16 |
Size
17 |
Size of the icons can easily be changed using font-size property.
18 |
19 |
<i class="pi pi-check"></i>
20 |
21 |
22 |
23 |
<i class="pi pi-check" style="font-size: 2rem"></i>
24 |
25 |
26 |
27 |
Spinning Animation
28 |
Special pi-spin class applies infinite rotate to an icon.
29 |
30 |
<i class="pi pi-spin pi-spinner" style="font-size: 2rem"></i>
31 |
32 |
33 |
34 |
List of Icons
35 |
Here is the current list of PrimeIcons, more icons will be added periodically. You may also request new icons at the issue tracker.
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
pi-{{icon.properties.name}}
44 |
45 |
46 |
--------------------------------------------------------------------------------
/src/app/demo/components/utilities/icons/icons.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, OnInit } from '@angular/core';
2 | import { IconService } from 'src/app/demo/service/icon.service';
3 |
4 | @Component({
5 | templateUrl: './icons.component.html',
6 | })
7 | export class IconsComponent implements OnInit {
8 |
9 | icons: any[] = [];
10 |
11 | filteredIcons: any[] = [];
12 |
13 | selectedIcon: any;
14 |
15 | constructor(private iconService: IconService) { }
16 |
17 | ngOnInit() {
18 | this.iconService.getIcons().subscribe(data => {
19 | data = data.filter(value => {
20 | return value.icon.tags.indexOf('deprecate') === -1;
21 | });
22 |
23 | let icons = data;
24 | icons.sort((icon1, icon2) => {
25 | if (icon1.properties.name < icon2.properties.name)
26 | return -1;
27 | else if (icon1.properties.name < icon2.properties.name)
28 | return 1;
29 | else
30 | return 0;
31 | });
32 |
33 | this.icons = icons;
34 | this.filteredIcons = data;
35 | });
36 | }
37 |
38 | onFilter(event: Event): void {
39 | const searchText = (event.target as HTMLInputElement).value;
40 |
41 | if (!searchText) {
42 | this.filteredIcons = this.icons;
43 | }
44 | else {
45 | this.filteredIcons = this.icons.filter(it => {
46 | return it.icon.tags[0].includes(searchText);
47 | });
48 | }
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/src/app/demo/components/utilities/utilities-routing.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { RouterModule } from '@angular/router';
3 | import { IconsComponent } from './icons/icons.component';
4 |
5 | @NgModule({
6 | imports: [RouterModule.forChild([
7 | { path: 'icons', data: { breadcrumb: 'Prime Icons' }, component: IconsComponent },
8 | { path: '**', redirectTo: '/notfound' }
9 | ])],
10 | exports: [RouterModule]
11 | })
12 | export class UtilitiesRoutingModule { }
13 |
--------------------------------------------------------------------------------
/src/app/demo/components/utilities/utilities.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { IconsComponent } from './icons/icons.component';
4 | import { UtilitiesRoutingModule } from './utilities-routing.module';
5 | import { InputTextModule } from 'primeng/inputtext';
6 |
7 | @NgModule({
8 | imports: [
9 | CommonModule,
10 | UtilitiesRoutingModule,
11 | InputTextModule
12 | ],
13 | declarations: [IconsComponent]
14 | })
15 | export class UtilitiesModule { }
16 |
--------------------------------------------------------------------------------
/src/app/demo/service/country.service.ts:
--------------------------------------------------------------------------------
1 | import { HttpClient } from '@angular/common/http';
2 | import { Injectable } from '@angular/core';
3 |
4 | @Injectable()
5 | export class CountryService {
6 |
7 | constructor(private http: HttpClient) { }
8 |
9 | getCountries() {
10 | return this.http.get('assets/demo/data/countries.json')
11 | .toPromise()
12 | .then(res => res.data as any[])
13 | .then(data => data);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/app/demo/service/customer.service.ts:
--------------------------------------------------------------------------------
1 | import { HttpClient } from '@angular/common/http';
2 | import { Injectable } from '@angular/core';
3 | import { Customer } from '../api/customer';
4 |
5 | @Injectable()
6 | export class CustomerService {
7 |
8 | constructor(private http: HttpClient) { }
9 |
10 | getCustomersSmall() {
11 | return this.http.get('assets/demo/data/customers-small.json')
12 | .toPromise()
13 | .then(res => res.data as Customer[])
14 | .then(data => data);
15 | }
16 |
17 | getCustomersMedium() {
18 | return this.http.get('assets/demo/data/customers-medium.json')
19 | .toPromise()
20 | .then(res => res.data as Customer[])
21 | .then(data => data);
22 | }
23 |
24 | getCustomersLarge() {
25 | return this.http.get('assets/demo/data/customers-large.json')
26 | .toPromise()
27 | .then(res => res.data as Customer[])
28 | .then(data => data);
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/src/app/demo/service/event.service.ts:
--------------------------------------------------------------------------------
1 | import { HttpClient } from '@angular/common/http';
2 | import { Injectable } from '@angular/core';
3 |
4 | @Injectable()
5 | export class EventService {
6 |
7 | constructor(private http: HttpClient) { }
8 |
9 | getEvents() {
10 | return this.http.get('assets/demo/data/scheduleevents.json')
11 | .toPromise()
12 | .then(res => res.data as any[])
13 | .then(data => data);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/app/demo/service/icon.service.ts:
--------------------------------------------------------------------------------
1 | import { Injectable } from '@angular/core';
2 | import { HttpClient } from '@angular/common/http';
3 | import { map } from 'rxjs/operators';
4 |
5 | @Injectable()
6 | export class IconService {
7 |
8 | constructor(private http: HttpClient) { }
9 |
10 | icons!: any[];
11 |
12 | selectedIcon: any;
13 |
14 | apiUrl = 'assets/demo/data/icons.json';
15 |
16 | getIcons() {
17 | return this.http.get(this.apiUrl).pipe(map((response: any) => {
18 | this.icons = response.icons;
19 | return this.icons;
20 | }));
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/app/demo/service/node.service.ts:
--------------------------------------------------------------------------------
1 | import { HttpClient } from '@angular/common/http';
2 | import { Injectable } from '@angular/core';
3 | import { TreeNode } from 'primeng/api';
4 |
5 | @Injectable()
6 | export class NodeService {
7 |
8 | constructor(private http: HttpClient) { }
9 |
10 | getFiles() {
11 | return this.http.get('assets/demo/data/files.json')
12 | .toPromise()
13 | .then(res => res.data as TreeNode[]);
14 | }
15 |
16 | getLazyFiles() {
17 | return this.http.get('assets/demo/data/files-lazy.json')
18 | .toPromise()
19 | .then(res => res.data as TreeNode[]);
20 | }
21 |
22 | getFilesystem() {
23 | return this.http.get('assets/demo/data/filesystem.json')
24 | .toPromise()
25 | .then(res => res.data as TreeNode[]);
26 | }
27 |
28 | getLazyFilesystem() {
29 | return this.http.get('assets/demo/data/filesystem-lazy.json')
30 | .toPromise()
31 | .then(res => res.data as TreeNode[]);
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/src/app/demo/service/photo.service.ts:
--------------------------------------------------------------------------------
1 | import { HttpClient } from '@angular/common/http';
2 | import { Injectable } from '@angular/core';
3 | import { Image } from '../api/image';
4 |
5 | @Injectable()
6 | export class PhotoService {
7 |
8 | constructor(private http: HttpClient) { }
9 |
10 | getImages() {
11 | return this.http.get('assets/demo/data/photos.json')
12 | .toPromise()
13 | .then(res => res.data as Image[])
14 | .then(data => data);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/app/demo/service/product.service.ts:
--------------------------------------------------------------------------------
1 | import { HttpClient } from '@angular/common/http';
2 | import { Injectable } from '@angular/core';
3 | import { Product } from '../api/product';
4 |
5 | @Injectable()
6 | export class ProductService {
7 |
8 | constructor(private http: HttpClient) { }
9 |
10 | getProductsSmall() {
11 | return this.http.get('assets/demo/data/products-small.json')
12 | .toPromise()
13 | .then(res => res.data as Product[])
14 | .then(data => data);
15 | }
16 |
17 | getProducts() {
18 | return this.http.get('assets/demo/data/products.json')
19 | .toPromise()
20 | .then(res => res.data as Product[])
21 | .then(data => data);
22 | }
23 |
24 | getProductsMixed() {
25 | return this.http.get('assets/demo/data/products-mixed.json')
26 | .toPromise()
27 | .then(res => res.data as Product[])
28 | .then(data => data);
29 | }
30 |
31 | getProductsWithOrdersSmall() {
32 | return this.http.get('assets/demo/data/products-orders-small.json')
33 | .toPromise()
34 | .then(res => res.data as Product[])
35 | .then(data => data);
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/src/app/layout/api/menuchangeevent.ts:
--------------------------------------------------------------------------------
1 | export interface MenuChangeEvent {
2 | key: string;
3 | routeEvent?: boolean;
4 | }
--------------------------------------------------------------------------------
/src/app/layout/app.footer.component.html:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/src/app/layout/app.footer.component.ts:
--------------------------------------------------------------------------------
1 | import { Component } from '@angular/core';
2 | import { LayoutService } from "./service/app.layout.service";
3 |
4 | @Component({
5 | selector: 'app-footer',
6 | templateUrl: './app.footer.component.html'
7 | })
8 | export class AppFooterComponent {
9 | constructor(public layoutService: LayoutService) { }
10 | }
11 |
--------------------------------------------------------------------------------
/src/app/layout/app.layout.component.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/src/app/layout/app.layout.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { BrowserModule } from '@angular/platform-browser';
3 | import { FormsModule } from '@angular/forms';
4 | import { HttpClientModule } from '@angular/common/http';
5 | import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
6 | import { InputTextModule } from 'primeng/inputtext';
7 | import { SidebarModule } from 'primeng/sidebar';
8 | import { BadgeModule } from 'primeng/badge';
9 | import { RadioButtonModule } from 'primeng/radiobutton';
10 | import { InputSwitchModule } from 'primeng/inputswitch';
11 | import { RippleModule } from 'primeng/ripple';
12 | import { AppMenuComponent } from './app.menu.component';
13 | import { AppMenuitemComponent } from './app.menuitem.component';
14 | import { RouterModule } from '@angular/router';
15 | import { AppTopBarComponent } from './app.topbar.component';
16 | import { AppFooterComponent } from './app.footer.component';
17 | import { AppConfigModule } from './config/config.module';
18 | import { AppSidebarComponent } from "./app.sidebar.component";
19 | import { AppLayoutComponent } from "./app.layout.component";
20 |
21 | @NgModule({
22 | declarations: [
23 | AppMenuitemComponent,
24 | AppTopBarComponent,
25 | AppFooterComponent,
26 | AppMenuComponent,
27 | AppSidebarComponent,
28 | AppLayoutComponent,
29 | ],
30 | imports: [
31 | BrowserModule,
32 | FormsModule,
33 | HttpClientModule,
34 | BrowserAnimationsModule,
35 | InputTextModule,
36 | SidebarModule,
37 | BadgeModule,
38 | RadioButtonModule,
39 | InputSwitchModule,
40 | RippleModule,
41 | RouterModule,
42 | AppConfigModule
43 | ],
44 | exports: [AppLayoutComponent]
45 | })
46 | export class AppLayoutModule { }
47 |
--------------------------------------------------------------------------------
/src/app/layout/app.menu.component.html:
--------------------------------------------------------------------------------
1 |
12 |
--------------------------------------------------------------------------------
/src/app/layout/app.menu.service.ts:
--------------------------------------------------------------------------------
1 | import { Injectable } from '@angular/core';
2 | import { Subject } from 'rxjs';
3 | import { MenuChangeEvent } from './api/menuchangeevent';
4 |
5 | @Injectable({
6 | providedIn: 'root'
7 | })
8 | export class MenuService {
9 |
10 | private menuSource = new Subject();
11 | private resetSource = new Subject();
12 |
13 | menuSource$ = this.menuSource.asObservable();
14 | resetSource$ = this.resetSource.asObservable();
15 |
16 | onMenuStateChange(event: MenuChangeEvent) {
17 | this.menuSource.next(event);
18 | }
19 |
20 | reset() {
21 | this.resetSource.next(true);
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src/app/layout/app.sidebar.component.html:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/app/layout/app.sidebar.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, ElementRef } from '@angular/core';
2 | import { LayoutService } from "./service/app.layout.service";
3 |
4 | @Component({
5 | selector: 'app-sidebar',
6 | templateUrl: './app.sidebar.component.html'
7 | })
8 | export class AppSidebarComponent {
9 | constructor(public layoutService: LayoutService, public el: ElementRef) { }
10 | }
11 |
12 |
--------------------------------------------------------------------------------
/src/app/layout/app.topbar.component.html:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/app/layout/app.topbar.component.ts:
--------------------------------------------------------------------------------
1 | import { Component, ElementRef, ViewChild } from '@angular/core';
2 | import { MenuItem } from 'primeng/api';
3 | import { LayoutService } from "./service/app.layout.service";
4 |
5 | @Component({
6 | selector: 'app-topbar',
7 | templateUrl: './app.topbar.component.html'
8 | })
9 | export class AppTopBarComponent {
10 |
11 | items!: MenuItem[];
12 |
13 | @ViewChild('menubutton') menuButton!: ElementRef;
14 |
15 | @ViewChild('topbarmenubutton') topbarMenuButton!: ElementRef;
16 |
17 | @ViewChild('topbarmenu') menu!: ElementRef;
18 |
19 | constructor(public layoutService: LayoutService) { }
20 | }
21 |
--------------------------------------------------------------------------------
/src/app/layout/config/config.module.ts:
--------------------------------------------------------------------------------
1 | import { NgModule } from '@angular/core';
2 | import { CommonModule } from '@angular/common';
3 | import { FormsModule } from '@angular/forms';
4 | import { SidebarModule } from 'primeng/sidebar';
5 | import { RadioButtonModule } from 'primeng/radiobutton';
6 | import { ButtonModule } from 'primeng/button';
7 | import { InputSwitchModule } from 'primeng/inputswitch';
8 | import { AppConfigComponent } from './app.config.component';
9 |
10 | @NgModule({
11 | imports: [
12 | CommonModule,
13 | FormsModule,
14 | SidebarModule,
15 | RadioButtonModule,
16 | ButtonModule,
17 | InputSwitchModule
18 | ],
19 | declarations: [
20 | AppConfigComponent
21 | ],
22 | exports: [
23 | AppConfigComponent
24 | ]
25 | })
26 | export class AppConfigModule { }
27 |
--------------------------------------------------------------------------------
/src/assets/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/.gitkeep
--------------------------------------------------------------------------------
/src/assets/demo/data/files-lazy.json:
--------------------------------------------------------------------------------
1 | {
2 | "data":
3 | [
4 | {
5 | "label": "Lazy Node 0",
6 | "data": "Node 0",
7 | "expandedIcon": "pi pi-folder-open",
8 | "collapsedIcon": "pi pi-folder",
9 | "leaf": false
10 | },
11 | {
12 | "label": "Lazy Node 1",
13 | "data": "Node 1",
14 | "expandedIcon": "pi pi-folder-open",
15 | "collapsedIcon": "pi pi-folder",
16 | "leaf": false
17 | },
18 | {
19 | "label": "Lazy Node 1",
20 | "data": "Node 2",
21 | "expandedIcon": "pi pi-folder-open",
22 | "collapsedIcon": "pi pi-folder",
23 | "leaf": false
24 | }
25 | ]
26 | }
--------------------------------------------------------------------------------
/src/assets/demo/data/files.json:
--------------------------------------------------------------------------------
1 | {
2 | "data": [
3 | {
4 | "key": "0",
5 | "label": "Documents",
6 | "data": "Documents Folder",
7 | "icon": "pi pi-fw pi-inbox",
8 | "children": [{
9 | "key": "0-0",
10 | "label": "Work",
11 | "data": "Work Folder",
12 | "icon": "pi pi-fw pi-cog",
13 | "children": [{ "key": "0-0-0", "label": "Expenses.doc", "icon": "pi pi-fw pi-file", "data": "Expenses Document" }, { "key": "0-0-1", "label": "Resume.doc", "icon": "pi pi-fw pi-file", "data": "Resume Document" }]
14 | },
15 | {
16 | "key": "0-1",
17 | "label": "Home",
18 | "data": "Home Folder",
19 | "icon": "pi pi-fw pi-home",
20 | "children": [{ "key": "0-1-0", "label": "Invoices.txt", "icon": "pi pi-fw pi-file", "data": "Invoices for this month" }]
21 | }]
22 | },
23 | {
24 | "key": "1",
25 | "label": "Events",
26 | "data": "Events Folder",
27 | "icon": "pi pi-fw pi-calendar",
28 | "children": [
29 | { "key": "1-0", "label": "Meeting", "icon": "pi pi-fw pi-calendar-plus", "data": "Meeting" },
30 | { "key": "1-1", "label": "Product Launch", "icon": "pi pi-fw pi-calendar-plus", "data": "Product Launch" },
31 | { "key": "1-2", "label": "Report Review", "icon": "pi pi-fw pi-calendar-plus", "data": "Report Review" }]
32 | },
33 | {
34 | "key": "2",
35 | "label": "Movies",
36 | "data": "Movies Folder",
37 | "icon": "pi pi-fw pi-star",
38 | "children": [{
39 | "key": "2-0",
40 | "icon": "pi pi-fw pi-star",
41 | "label": "Al Pacino",
42 | "data": "Pacino Movies",
43 | "children": [{ "key": "2-0-0", "label": "Scarface", "icon": "pi pi-fw pi-video", "data": "Scarface Movie" }, { "key": "2-0-1", "label": "Serpico", "icon": "pi pi-fw pi-video", "data": "Serpico Movie" }]
44 | },
45 | {
46 | "key": "2-1",
47 | "label": "Robert De Niro",
48 | "icon": "pi pi-fw pi-star",
49 | "data": "De Niro Movies",
50 | "children": [{ "key": "2-1-0", "label": "Goodfellas", "icon": "pi pi-fw pi-video", "data": "Goodfellas Movie" }, { "key": "2-1-1", "label": "Untouchables", "icon": "pi pi-fw pi-video", "data": "Untouchables Movie" }]
51 | }]
52 | }
53 | ]
54 | }
55 |
--------------------------------------------------------------------------------
/src/assets/demo/data/filesystem-lazy.json:
--------------------------------------------------------------------------------
1 | {
2 | "data":
3 | [
4 | {
5 | "data":{
6 | "name":"Lazy Folder 0",
7 | "size":"75kb",
8 | "type":"Folder"
9 | },
10 | "leaf": false
11 | },
12 | {
13 | "data":{
14 | "name":"Lazy Folder 1",
15 | "size":"150kb",
16 | "type":"Folder"
17 | },
18 | "leaf": false
19 | }
20 | ]
21 | }
--------------------------------------------------------------------------------
/src/assets/demo/data/scheduleevents.json:
--------------------------------------------------------------------------------
1 | {
2 | "data": [
3 | {
4 | "id": 1,
5 | "title": "All Day Event",
6 | "start": "2021-07-01"
7 | },
8 | {
9 | "id": 2,
10 | "title": "Long Event",
11 | "start": "2021-07-07",
12 | "end": "2021-07-10"
13 | },
14 | {
15 | "id": 3,
16 | "title": "Repeating Event",
17 | "start": "2021-07-09T16:00:00"
18 | },
19 | {
20 | "id": 4,
21 | "title": "Repeating Event",
22 | "start": "2021-07-16T16:00:00"
23 | },
24 | {
25 | "id": 5,
26 | "title": "Conference",
27 | "start": "2021-07-11",
28 | "end": "2021-07-13"
29 | },
30 | {
31 | "id": 6,
32 | "title": "Meeting",
33 | "start": "2021-07-12T10:30:00",
34 | "end": "2021-07-12T12:30:00"
35 | },
36 | {
37 | "id": 7,
38 | "title": "Lunch",
39 | "start": "2021-07-12T12:00:00"
40 | },
41 | {
42 | "id": 8,
43 | "title": "Meeting",
44 | "start": "2021-07-12T14:30:00"
45 | },
46 | {
47 | "id": 9,
48 | "title": "Happy Hour",
49 | "start": "2021-07-12T17:30:00"
50 | },
51 | {
52 | "id": 10,
53 | "title": "Dinner",
54 | "start": "2021-07-12T20:00:00"
55 | },
56 | {
57 | "id": 11,
58 | "title": "Birthday Party",
59 | "start": "2021-07-13T07:00:00"
60 | },
61 | {
62 | "id": 12,
63 | "title": "Click for Google",
64 | "url": "http://google.com/",
65 | "start": "2021-07-28"
66 | }
67 | ]
68 | }
69 |
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/amyelsner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/amyelsner.png
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/annafali.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/annafali.png
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/asiyajavayant.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/asiyajavayant.png
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/bernardodominic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/bernardodominic.png
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/elwinsharvill.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/elwinsharvill.png
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/ionibowcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/ionibowcher.png
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/ivanmagalhaes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/ivanmagalhaes.png
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/onyamalimba.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/onyamalimba.png
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/profile.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/profile.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/stephenshaw.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/stephenshaw.png
--------------------------------------------------------------------------------
/src/assets/demo/images/avatar/xuxuefeng.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/avatar/xuxuefeng.png
--------------------------------------------------------------------------------
/src/assets/demo/images/blocks/hero/hero-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/blocks/hero/hero-1.png
--------------------------------------------------------------------------------
/src/assets/demo/images/blocks/logos/hyper.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/assets/demo/images/flag/flag_placeholder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/flag/flag_placeholder.png
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria1.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria10.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria10s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria10s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria11.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria11s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria11s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria12.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria12s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria12s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria13.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria13.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria13s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria13s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria14.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria14.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria14s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria14s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria15.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria15.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria15s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria15s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria1s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria1s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria2.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria2s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria2s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria3.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria3s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria3s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria4.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria4s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria4s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria5.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria5s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria5s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria6.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria6s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria6s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria7.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria7s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria7s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria8.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria8s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria8s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria9.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/galleria/galleria9s.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/galleria/galleria9s.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/landing/screen-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/landing/screen-1.png
--------------------------------------------------------------------------------
/src/assets/demo/images/login/avatar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/login/avatar.png
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature1.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature10.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature11.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature12.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature2.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature3.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature4.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature5.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature6.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature7.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature8.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/nature/nature9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/nature/nature9.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/bamboo-watch.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/bamboo-watch.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/black-watch.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/black-watch.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/blue-band.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/blue-band.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/blue-t-shirt.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/blue-t-shirt.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/bracelet.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/bracelet.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/brown-purse.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/brown-purse.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/chakra-bracelet.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/chakra-bracelet.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/galaxy-earrings.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/galaxy-earrings.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/game-controller.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/game-controller.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/gaming-set.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/gaming-set.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/gold-phone-case.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/gold-phone-case.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/green-earbuds.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/green-earbuds.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/green-t-shirt.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/green-t-shirt.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/grey-t-shirt.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/grey-t-shirt.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/headphones.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/headphones.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/light-green-t-shirt.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/light-green-t-shirt.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/lime-band.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/lime-band.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/mini-speakers.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/mini-speakers.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/painted-phone-case.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/painted-phone-case.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/pink-band.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/pink-band.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/pink-purse.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/pink-purse.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/product-placeholder.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/demo/images/product/purple-band.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/purple-band.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/purple-gemstone-necklace.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/purple-gemstone-necklace.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/purple-t-shirt.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/purple-t-shirt.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/shoes.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/shoes.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/sneakers.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/sneakers.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/teal-t-shirt.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/teal-t-shirt.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/yellow-earbuds.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/yellow-earbuds.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/yoga-mat.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/yoga-mat.jpg
--------------------------------------------------------------------------------
/src/assets/demo/images/product/yoga-set.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/images/product/yoga-set.jpg
--------------------------------------------------------------------------------
/src/assets/demo/styles/badges.css:
--------------------------------------------------------------------------------
1 | .customer-badge,
2 | .product-badge,
3 | .order-badge {
4 | border-radius: var(--border-radius);
5 | padding: 0.25em 0.5rem;
6 | text-transform: uppercase;
7 | font-weight: 700;
8 | font-size: 12px;
9 | letter-spacing: 0.3px;
10 | }
11 |
12 | .product-badge.status-instock {
13 | background: #C8E6C9;
14 | color: #256029;
15 | }
16 | .product-badge.status-outofstock {
17 | background: #FFCDD2;
18 | color: #C63737;
19 | }
20 | .product-badge.status-lowstock {
21 | background: #FEEDAF;
22 | color: #8A5340;
23 | }
24 |
25 | .customer-badge.status-qualified {
26 | background: #C8E6C9;
27 | color: #256029;
28 | }
29 | .customer-badge.status-unqualified {
30 | background: #FFCDD2;
31 | color: #C63737;
32 | }
33 | .customer-badge.status-negotiation {
34 | background: #FEEDAF;
35 | color: #8A5340;
36 | }
37 | .customer-badge.status-new {
38 | background: #B3E5FC;
39 | color: #23547B;
40 | }
41 | .customer-badge.status-renewal {
42 | background: #ECCFFF;
43 | color: #694382;
44 | }
45 | .customer-badge.status-proposal {
46 | background: #FFD8B2;
47 | color: #805B36;
48 | }
49 |
50 | .order-badge.order-delivered {
51 | background: #C8E6C9;
52 | color: #256029;
53 | }
54 | .order-badge.order-cancelled {
55 | background: #FFCDD2;
56 | color: #C63737;
57 | }
58 | .order-badge.order-pending {
59 | background: #FEEDAF;
60 | color: #8A5340;
61 | }
62 | .order-badge.order-returned {
63 | background: #ECCFFF;
64 | color: #694382;
65 | }
66 |
--------------------------------------------------------------------------------
/src/assets/demo/styles/badges.scss:
--------------------------------------------------------------------------------
1 | .customer-badge,
2 | .product-badge,
3 | .order-badge {
4 | border-radius: var(--border-radius);
5 | padding: .25em .5rem;
6 | text-transform: uppercase;
7 | font-weight: 700;
8 | font-size: 12px;
9 | letter-spacing: .3px;
10 | }
11 |
12 | .product-badge {
13 | &.status-instock {
14 | background: #C8E6C9;
15 | color: #256029;
16 | }
17 |
18 | &.status-outofstock {
19 | background: #FFCDD2;
20 | color: #C63737;
21 | }
22 |
23 | &.status-lowstock {
24 | background: #FEEDAF;
25 | color: #8A5340;
26 | }
27 | }
28 |
29 | .customer-badge {
30 | &.status-qualified {
31 | background: #C8E6C9;
32 | color: #256029;
33 | }
34 |
35 | &.status-unqualified {
36 | background: #FFCDD2;
37 | color: #C63737;
38 | }
39 |
40 | &.status-negotiation {
41 | background: #FEEDAF;
42 | color: #8A5340;
43 | }
44 |
45 | &.status-new {
46 | background: #B3E5FC;
47 | color: #23547B;
48 | }
49 |
50 | &.status-renewal {
51 | background: #ECCFFF;
52 | color: #694382;
53 | }
54 |
55 | &.status-proposal {
56 | background: #FFD8B2;
57 | color: #805B36;
58 | }
59 | }
60 |
61 | .order-badge {
62 | &.order-delivered {
63 | background: #C8E6C9;
64 | color: #256029;
65 | }
66 |
67 | &.order-cancelled {
68 | background: #FFCDD2;
69 | color: #C63737;
70 | }
71 |
72 | &.order-pending {
73 | background: #FEEDAF;
74 | color: #8A5340;
75 | }
76 |
77 | &.order-returned {
78 | background: #ECCFFF;
79 | color: #694382;
80 | }
81 | }
82 |
--------------------------------------------------------------------------------
/src/assets/demo/styles/code.css:
--------------------------------------------------------------------------------
1 | pre.app-code {
2 | background-color: var(--surface-ground);
3 | margin: 0 0 1rem 0;
4 | padding: 0;
5 | border-radius: var(--border-radius);
6 | overflow: auto;
7 | }
8 | pre.app-code code {
9 | color: var(--surface-900);
10 | padding: 1rem;
11 | line-height: 1.5;
12 | display: block;
13 | font-family: monaco, Consolas, monospace;
14 | }
15 |
--------------------------------------------------------------------------------
/src/assets/demo/styles/code.scss:
--------------------------------------------------------------------------------
1 | pre.app-code {
2 | background-color: var(--surface-ground);
3 | margin: 0 0 1rem 0;
4 | padding: 0;
5 | border-radius: var(--border-radius);
6 | overflow: auto;
7 |
8 | code {
9 | color: var(--surface-900);
10 | padding: 1rem;
11 | line-height: 1.5;
12 | display: block;
13 | font-family: monaco, Consolas, monospace;
14 | }
15 | }
--------------------------------------------------------------------------------
/src/assets/demo/styles/flags/flags_responsive.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/demo/styles/flags/flags_responsive.png
--------------------------------------------------------------------------------
/src/assets/layout/images/banner-primeblocks-dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/banner-primeblocks-dark.png
--------------------------------------------------------------------------------
/src/assets/layout/images/banner-primeblocks.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/banner-primeblocks.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/arya-blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/arya-blue.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/arya-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/arya-green.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/arya-orange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/arya-orange.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/arya-purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/arya-purple.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/bootstrap4-dark-blue.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/bootstrap4-dark-purple.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/bootstrap4-light-blue.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/bootstrap4-light-purple.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/fluent-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/fluent-light.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/lara-dark-blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/lara-dark-blue.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/lara-dark-indigo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/lara-dark-indigo.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/lara-dark-purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/lara-dark-purple.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/lara-dark-teal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/lara-dark-teal.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/lara-light-blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/lara-light-blue.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/lara-light-indigo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/lara-light-indigo.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/lara-light-purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/lara-light-purple.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/lara-light-teal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/lara-light-teal.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/luna-amber.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/luna-amber.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/luna-blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/luna-blue.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/luna-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/luna-green.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/luna-pink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/luna-pink.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/md-dark-deeppurple.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/md-dark-indigo.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/md-light-deeppurple.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/md-light-indigo.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/saga-blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/saga-blue.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/saga-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/saga-green.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/saga-orange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/saga-orange.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/saga-purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/saga-purple.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/tailwind-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/tailwind-light.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/vela-blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/vela-blue.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/vela-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/vela-green.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/vela-orange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/vela-orange.png
--------------------------------------------------------------------------------
/src/assets/layout/images/themes/vela-purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/images/themes/vela-purple.png
--------------------------------------------------------------------------------
/src/assets/layout/styles/layout/_config.scss:
--------------------------------------------------------------------------------
1 | .layout-config-button {
2 | display: block;
3 | position: fixed;
4 | width: 3rem;
5 | height: 3rem;
6 | line-height: 3rem;
7 | background: var(--primary-color);
8 | color: var(--primary-color-text);
9 | text-align: center;
10 | top: 50%;
11 | right: 0;
12 | margin-top: -1.5rem;
13 | border-top-left-radius: var(--border-radius);
14 | border-bottom-left-radius: var(--border-radius);
15 | border-top-right-radius: 0;
16 | border-bottom-right-radius: 0;
17 | transition: background-color var(--transition-duration);
18 | overflow: hidden;
19 | cursor: pointer;
20 | z-index: 999;
21 | box-shadow: -.25rem 0 1rem rgba(0,0,0,.15);
22 |
23 | i {
24 | font-size: 2rem;
25 | line-height: inherit;
26 | transform: rotate(0deg);
27 | transition: transform 1s;
28 | }
29 |
30 | &:hover {
31 | background: var(--primary-400);
32 | }
33 | }
34 |
35 | .layout-config-sidebar {
36 | &.p-sidebar {
37 | .p-sidebar-content {
38 | padding-left: 2rem;
39 | padding-right: 2rem;
40 | }
41 | }
42 | }
43 |
--------------------------------------------------------------------------------
/src/assets/layout/styles/layout/_content.scss:
--------------------------------------------------------------------------------
1 | .layout-main-container {
2 | display: flex;
3 | flex-direction: column;
4 | min-height: 100vh;
5 | justify-content: space-between;
6 | padding: 7rem 2rem 2rem 4rem;
7 | transition: margin-left $transitionDuration;
8 | }
9 |
10 | .layout-main {
11 | flex: 1 1 auto;
12 | }
13 |
--------------------------------------------------------------------------------
/src/assets/layout/styles/layout/_footer.scss:
--------------------------------------------------------------------------------
1 | .layout-footer {
2 | transition: margin-left $transitionDuration;
3 | display: flex;
4 | align-items: center;
5 | justify-content: center;
6 | padding-top: 1rem;
7 | border-top: 1px solid var(--surface-border);
8 | }
9 |
--------------------------------------------------------------------------------
/src/assets/layout/styles/layout/_main.scss:
--------------------------------------------------------------------------------
1 | * {
2 | box-sizing: border-box;
3 | }
4 |
5 | html {
6 | height: 100%;
7 | font-size: $scale;
8 | }
9 |
10 | body {
11 | font-family: var(--font-family);
12 | color: var(--text-color);
13 | background-color: var(--surface-ground);
14 | margin: 0;
15 | padding: 0;
16 | min-height: 100%;
17 | -webkit-font-smoothing: antialiased;
18 | -moz-osx-font-smoothing: grayscale;
19 | }
20 |
21 | a {
22 | text-decoration: none;
23 | color: var(--primary-color);
24 | }
25 |
26 | .layout-wrapper {
27 | min-height: 100vh;
28 | }
--------------------------------------------------------------------------------
/src/assets/layout/styles/layout/_mixins.scss:
--------------------------------------------------------------------------------
1 | @mixin focused() {
2 | outline: 0 none;
3 | outline-offset: 0;
4 | transition: box-shadow .2s;
5 | box-shadow: var(--focus-ring);
6 | }
7 |
8 | @mixin focused-inset() {
9 | outline: 0 none;
10 | outline-offset: 0;
11 | transition: box-shadow .2s;
12 | box-shadow: inset var(--focus-ring);
13 | }
14 |
--------------------------------------------------------------------------------
/src/assets/layout/styles/layout/_preloading.scss:
--------------------------------------------------------------------------------
1 | .preloader {
2 | position: fixed;
3 | z-index: 999999;
4 | background: #edf1f5;
5 | width: 100%;
6 | height: 100%;
7 | }
8 | .preloader-content {
9 | border: 0 solid transparent;
10 | border-radius: 50%;
11 | width: 150px;
12 | height: 150px;
13 | position: absolute;
14 | top: calc(50vh - 75px);
15 | left: calc(50vw - 75px);
16 | }
17 |
18 | .preloader-content:before, .preloader-content:after{
19 | content: '';
20 | border: 1em solid var(--primary-color);
21 | border-radius: 50%;
22 | width: inherit;
23 | height: inherit;
24 | position: absolute;
25 | top: 0;
26 | left: 0;
27 | animation: loader 2s linear infinite;
28 | opacity: 0;
29 | }
30 |
31 | .preloader-content:before{
32 | animation-delay: 0.5s;
33 | }
34 |
35 | @keyframes loader{
36 | 0%{
37 | transform: scale(0);
38 | opacity: 0;
39 | }
40 | 50%{
41 | opacity: 1;
42 | }
43 | 100%{
44 | transform: scale(1);
45 | opacity: 0;
46 | }
47 | }
48 |
--------------------------------------------------------------------------------
/src/assets/layout/styles/layout/_typography.scss:
--------------------------------------------------------------------------------
1 | h1, h2, h3, h4, h5, h6 {
2 | margin: 1.5rem 0 1rem 0;
3 | font-family: inherit;
4 | font-weight: 500;
5 | line-height: 1.2;
6 | color: var(--surface-900);
7 |
8 | &:first-child {
9 | margin-top: 0;
10 | }
11 | }
12 |
13 | h1 {
14 | font-size: 2.5rem;
15 | }
16 |
17 | h2 {
18 | font-size: 2rem;
19 | }
20 |
21 | h3 {
22 | font-size: 1.75rem;
23 | }
24 |
25 | h4 {
26 | font-size: 1.5rem;
27 | }
28 |
29 | h5 {
30 | font-size: 1.25rem;
31 | }
32 |
33 | h6 {
34 | font-size: 1rem;
35 | }
36 |
37 | mark {
38 | background: #FFF8E1;
39 | padding: .25rem .4rem;
40 | border-radius: $borderRadius;
41 | font-family: monospace;
42 | }
43 |
44 | blockquote {
45 | margin: 1rem 0;
46 | padding: 0 2rem;
47 | border-left: 4px solid #90A4AE;
48 | }
49 |
50 | hr {
51 | border-top: solid var(--surface-border);
52 | border-width: 1px 0 0 0;
53 | margin: 1rem 0;
54 | }
55 |
56 | p {
57 | margin: 0 0 1rem 0;
58 | line-height: 1.5;
59 |
60 | &:last-child {
61 | margin-bottom: 0;
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/src/assets/layout/styles/layout/_utils.scss:
--------------------------------------------------------------------------------
1 | .card {
2 | background: var(--surface-card);
3 | border: 1px solid var(--surface-border);
4 | padding: 2rem;
5 | margin-bottom: 2rem;
6 | box-shadow: var(--card-shadow);
7 | border-radius: $borderRadius;
8 |
9 | &:last-child {
10 | margin-bottom: 0;
11 | }
12 | }
13 |
14 | .p-toast {
15 | &.p-toast-top-right,
16 | &.p-toast-top-left,
17 | &.p-toast-top-center {
18 | top: 100px;
19 | }
20 | }
--------------------------------------------------------------------------------
/src/assets/layout/styles/layout/_variables.scss:
--------------------------------------------------------------------------------
1 | /* General */
2 | $scale:14px; /* main font size */
3 | $borderRadius:12px; /* border radius of layout element e.g. card, sidebar */
4 | $transitionDuration:.2s; /* transition duration of layout elements e.g. sidebar, overlay menus */
5 |
--------------------------------------------------------------------------------
/src/assets/layout/styles/layout/layout.scss:
--------------------------------------------------------------------------------
1 | @import './_variables';
2 | @import "./_mixins";
3 | @import "./_preloading";
4 | @import "./_main";
5 | @import "./_topbar";
6 | @import "./_menu";
7 | @import "./_config";
8 | @import "./_content";
9 | @import "./_footer";
10 | @import "./_responsive";
11 | @import "./_utils";
12 | @import "./_typography";
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/md-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Bold.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Bold.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Light.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Light.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Light.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Light.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Medium.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Medium.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Medium.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Medium.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Regular.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-Regular.woff2
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-SemiBold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-SemiBold.woff
--------------------------------------------------------------------------------
/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-SemiBold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/assets/layout/styles/theme/tailwind-light/fonts/Inter-SemiBold.woff2
--------------------------------------------------------------------------------
/src/environments/environment.prod.ts:
--------------------------------------------------------------------------------
1 | export const environment = {
2 | production: true
3 | };
4 |
--------------------------------------------------------------------------------
/src/environments/environment.ts:
--------------------------------------------------------------------------------
1 | // This file can be replaced during build by using the `fileReplacements` array.
2 | // `ng build` replaces `environment.ts` with `environment.prod.ts`.
3 | // The list of file replacements can be found in `angular.json`.
4 |
5 | export const environment = {
6 | production: false
7 | };
8 |
9 | /*
10 | * For easier debugging in development mode, you can import the following file
11 | * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.
12 | *
13 | * This import should be commented out in production mode because it will have a negative impact
14 | * on performance if an error is thrown.
15 | */
16 | // import 'zone.js/plugins/zone-error'; // Included with Angular CLI.
17 |
--------------------------------------------------------------------------------
/src/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Hardcoding-1992/sakaii/6d8d13cad6f38a2daebb82cdcffd5fe2b31924ea/src/favicon.ico
--------------------------------------------------------------------------------
/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Sakai - PrimeNG
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/src/main.ts:
--------------------------------------------------------------------------------
1 | import { enableProdMode } from '@angular/core';
2 | import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
3 |
4 | import { AppModule } from './app/app.module';
5 | import { environment } from './environments/environment';
6 |
7 | if (environment.production) {
8 | enableProdMode();
9 | }
10 |
11 | platformBrowserDynamic().bootstrapModule(AppModule)
12 | .catch(err => console.error(err));
13 |
--------------------------------------------------------------------------------
/src/styles.scss:
--------------------------------------------------------------------------------
1 | /* You can add global styles to this file, and also import other style files */
2 |
3 | $gutter: 1rem; //for primeflex grid system
4 | @import "assets/layout/styles/layout/layout.scss";
5 |
6 | /* PrimeNG */
7 | @import "../node_modules/primeng/resources/primeng.min.css";
8 | @import "../node_modules/primeflex/primeflex.scss";
9 | @import "../node_modules/primeicons/primeicons.css";
10 |
11 | /* Demos */
12 | @import "assets/demo/styles/flags/flags.css";
13 | @import "assets/demo/styles/badges.scss";
14 | @import "assets/demo/styles/code.scss";
--------------------------------------------------------------------------------
/src/test.ts:
--------------------------------------------------------------------------------
1 | // This file is required by karma.conf.js and loads recursively all the .spec and framework files
2 |
3 | import 'zone.js/testing';
4 | import { getTestBed } from '@angular/core/testing';
5 | import {
6 | BrowserDynamicTestingModule,
7 | platformBrowserDynamicTesting
8 | } from '@angular/platform-browser-dynamic/testing';
9 |
10 | declare const require: {
11 | context(path: string, deep?: boolean, filter?: RegExp): {
12 | (id: string): T;
13 | keys(): string[];
14 | };
15 | };
16 |
17 | // First, initialize the Angular testing environment.
18 | getTestBed().initTestEnvironment(
19 | BrowserDynamicTestingModule,
20 | platformBrowserDynamicTesting(),
21 | );
22 |
23 | // Then we find all the tests.
24 | const context = require.context('./', true, /\.spec\.ts$/);
25 | // And load the modules.
26 | context.keys().map(context);
27 |
--------------------------------------------------------------------------------
/test.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | # 1. Define your commit messages
4 | COMMIT_MESSAGES=(
5 | "Refactor code for clarity"
6 | "Fix minor bug"
7 | "Add new feature"
8 | "Update documentation"
9 | "Improve performance"
10 | "Cleanup deprecated code"
11 | "Add test coverage"
12 | "Code style improvements"
13 | "Fix merge conflicts"
14 | "Version bump"
15 | )
16 |
17 | # 2. Define author details
18 | AUTHOR_NAME="pro100nick"
19 | AUTHOR_EMAIL="pro100nick@mail.ru"
20 |
21 | # 3. Define your date range
22 | START_DATE="2023-03-2"
23 | END_DATE="2023-10-21"
24 |
25 | # 4. Generate all dates from START_DATE to END_DATE using Python
26 | date_list=$(python3 -c "
27 | import datetime
28 | start = datetime.datetime.strptime('$START_DATE', '%Y-%m-%d')
29 | end = datetime.datetime.strptime('$END_DATE', '%Y-%m-%d')
30 | current = start
31 | while current <= end:
32 | print(current.strftime('%Y-%m-%d'))
33 | current += datetime.timedelta(days=1)
34 | ")
35 |
36 | # 5. Iterate over the generated dates
37 | for current_date in $date_list; do
38 |
39 | # --- Determine day of week (Monday=0, Sunday=6) ---
40 | day_of_week=$(python3 -c "
41 | import datetime
42 | dt = datetime.datetime.strptime('$current_date', '%Y-%m-%d')
43 | print(dt.weekday())
44 | ")
45 |
46 | # Skip Sundays entirely (weekday=6)
47 | if [ "$day_of_week" -eq 6 ]; then
48 | continue # no commits on Sunday
49 | fi
50 |
51 | # Randomly skip some Saturdays (weekday=5)
52 | if [ "$day_of_week" -eq 5 ]; then
53 | # 50% chance to skip
54 | if [ $((RANDOM % 2)) -eq 0 ]; then
55 | continue # skip this Saturday
56 | fi
57 | fi
58 |
59 | # Generate a random number between 4 and 12 for daily commits
60 | # RANDOM % 9 gives 0..8; adding 4 yields 4..12
61 | num_commits=$((4 + RANDOM % 9))
62 |
63 | for i in $(seq 1 "$num_commits"); do
64 | # Pick a random message from the array
65 | random_index=$((RANDOM % ${#COMMIT_MESSAGES[@]}))
66 | commit_message="${COMMIT_MESSAGES[$random_index]}"
67 |
68 | # Make a file change so there's something to commit
69 | echo "Commit on $current_date #$i" >> commits.txt
70 |
71 | # Stage changes
72 | git add commits.txt
73 |
74 | # Commit with artificial author/committer details and date
75 | GIT_AUTHOR_NAME="$AUTHOR_NAME" \
76 | GIT_AUTHOR_EMAIL="$AUTHOR_EMAIL" \
77 | GIT_COMMITTER_NAME="$AUTHOR_NAME" \
78 | GIT_COMMITTER_EMAIL="$AUTHOR_EMAIL" \
79 | GIT_AUTHOR_DATE="$current_date 12:00:00" \
80 | GIT_COMMITTER_DATE="$current_date 12:00:00" \
81 | git commit -m "$commit_message"
82 | done
83 |
84 | done
85 |
--------------------------------------------------------------------------------
/tsconfig.app.json:
--------------------------------------------------------------------------------
1 | /* To learn more about this file see: https://angular.io/config/tsconfig. */
2 | {
3 | "extends": "./tsconfig.json",
4 | "compilerOptions": {
5 | "outDir": "./out-tsc/app",
6 | "types": []
7 | },
8 | "files": [
9 | "src/main.ts"
10 | ],
11 | "include": [
12 | "src/**/*.d.ts"
13 | ]
14 | }
15 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | /* To learn more about this file see: https://angular.io/config/tsconfig. */
2 | {
3 | "compileOnSave": false,
4 | "compilerOptions": {
5 | "baseUrl": "./",
6 | "outDir": "./dist/out-tsc",
7 | "forceConsistentCasingInFileNames": true,
8 | "strict": false,
9 | "noImplicitOverride": true,
10 | "noPropertyAccessFromIndexSignature": true,
11 | "noImplicitReturns": true,
12 | "noFallthroughCasesInSwitch": true,
13 | "sourceMap": true,
14 | "declaration": false,
15 | "downlevelIteration": true,
16 | "experimentalDecorators": true,
17 | "moduleResolution": "node",
18 | "importHelpers": true,
19 | "target": "ES2022",
20 | "module": "ES2022",
21 | "useDefineForClassFields": false,
22 | "lib": [
23 | "ES2022",
24 | "dom"
25 | ]
26 | },
27 | "exclude": ["node_modules", "**/node_modules/*"],
28 | "angularCompilerOptions": {
29 | "enableI18nLegacyMessageIdFormat": false,
30 | "strictInjectionParameters": false,
31 | "strictInputAccessModifiers": false,
32 | "strictTemplates": false
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/tsconfig.spec.json:
--------------------------------------------------------------------------------
1 | /* To learn more about this file see: https://angular.io/config/tsconfig. */
2 | {
3 | "extends": "./tsconfig.json",
4 | "compilerOptions": {
5 | "outDir": "./out-tsc/spec",
6 | "types": [
7 | "jasmine"
8 | ]
9 | },
10 | "files": [
11 | "src/test.ts"
12 | ],
13 | "include": [
14 | "src/**/*.spec.ts",
15 | "src/**/*.d.ts"
16 | ]
17 | }
18 |
--------------------------------------------------------------------------------