├── .npmrc ├── _config.yml ├── .browserslistrc ├── .vscode ├── settings.json └── launch.json ├── babel.config.json ├── src ├── components │ ├── NBtn │ │ └── index.js │ ├── NTab │ │ └── index.js │ ├── NMenu │ │ └── index.js │ ├── NError │ │ ├── index.js │ │ └── NError.vue │ ├── NIcon │ │ ├── index.js │ │ ├── NIcon.spec.js │ │ ├── NIcon.stories.js │ │ └── NIcon.vue │ ├── NRadio │ │ └── index.js │ ├── NTable │ │ └── NTable.js │ ├── NAlert │ │ ├── index.js │ │ ├── states.js │ │ └── constants.js │ ├── NBadge │ │ ├── index.js │ │ └── NBadge.spec.js │ ├── NChips │ │ └── index.js │ ├── NCode │ │ └── index.js │ ├── NStepper │ │ └── index.js │ ├── NTooltip │ │ ├── index.js │ │ └── NTooltip.spec.js │ ├── NInline │ │ ├── index.js │ │ └── NInline.vue │ ├── NMenuItem │ │ ├── index.js │ │ └── NMenuItem.vue │ ├── NTabItem │ │ ├── index.js │ │ └── NTabItem.vue │ ├── NToggleBtn │ │ └── index.js │ ├── NCheckbox │ │ └── index.js │ ├── NCustomForm │ │ └── index.js │ ├── NDialog │ │ └── index.js │ ├── NValidation │ │ ├── index.js │ │ └── NValidation.stories.js │ ├── NAutocomplete │ │ └── index.js │ ├── NDropdown │ │ └── index.js │ ├── NPagination │ │ └── index.js │ ├── NInput │ │ ├── NInputPrefix.vue │ │ ├── NInputSuffix.vue │ │ └── index.js │ └── NSnackbar │ │ ├── NSnackbar.vue │ │ └── index.js ├── assets │ ├── loader.gif │ ├── nitrozen.png │ ├── loader-blue.gif │ ├── loader-old.gif │ ├── facebook-icon.png │ ├── loader-green.gif │ ├── loader-white.gif │ ├── svgs │ │ ├── ic_ellipse.svg │ │ ├── ic_seekbar.svg │ │ ├── ic_rectangle.svg │ │ ├── ic_align_left.svg │ │ ├── ic_align_top.svg │ │ ├── ic_toilet_seat.svg │ │ ├── ic_align_bottom.svg │ │ ├── ic_align_right.svg │ │ ├── ic_italic.svg │ │ ├── ic_align_horizontal_centers.svg │ │ ├── ic_align_vertical_centers.svg │ │ ├── ic_triangle.svg │ │ ├── ic_cardiology.svg │ │ ├── ic_sampling.svg │ │ ├── ic_text.svg │ │ ├── ic_arrow_line_diagonal.svg │ │ ├── ic_profile.svg │ │ ├── ic_arrow_line_dot.svg │ │ ├── ic_info_text.svg │ │ ├── ic_line.svg │ │ ├── ic_text_align_left.svg │ │ ├── ic_arch.svg │ │ ├── ic_text_align_center.svg │ │ ├── ic_text_align_justify.svg │ │ ├── ic_bold.svg │ │ ├── ic_text_align_right.svg │ │ ├── ic_landscape.svg │ │ ├── ic_portrait.svg │ │ ├── ic_upi_number.svg │ │ ├── ic_veg.svg │ │ ├── ic_minus.svg │ │ ├── ic_distribute_horizontal_spacing.svg │ │ ├── ic_pulse_oximeter.svg │ │ ├── ic_distribute_vertical_spacing.svg │ │ ├── ic_firstpage.svg │ │ ├── ic_underline.svg │ │ ├── ic_three_day.svg │ │ ├── ic_week.svg │ │ ├── ic_folder.svg │ │ ├── ic_gastrointestinal.svg │ │ ├── ic_area.svg │ │ ├── ic_blood_glucose_meter.svg │ │ ├── ic_snacks.svg │ │ ├── ic_armed.svg │ │ ├── ic_non_veg.svg │ │ ├── ic_body_scale.svg │ │ ├── ic_entertainment.svg │ │ ├── ic_arrow_line.svg │ │ ├── ic_month.svg │ │ ├── ic_blocked.svg │ │ ├── ic_throat.svg │ │ ├── ic_dizzy.svg │ │ ├── ic_jiopay.svg │ │ ├── ic_water.svg │ │ ├── ic_armed_partially.svg │ │ ├── ic_backspace.svg │ │ ├── ic_volume.svg │ │ ├── ic_fullscreen_mode.svg │ │ ├── ic_order.svg │ │ ├── ic_test.svg │ │ ├── ic_document.svg │ │ ├── ic_bookmark.svg │ │ ├── ic_itching.svg │ │ ├── ic_blood_pressure_cuff.svg │ │ ├── ic_spine.svg │ │ ├── ic_extract.svg │ │ ├── ic_sound_quiet.svg │ │ ├── ic_fullscreen_mode_off.svg │ │ ├── ic_assistive_grid.svg │ │ ├── ic_flip_vertical.svg │ │ ├── ic_iron.svg │ │ ├── ic_mail.svg │ │ ├── ic_phone_secured.svg │ │ ├── ic_apartment.svg │ │ ├── ic_blood_vessels.svg │ │ ├── ic_sms.svg │ │ ├── ic_edit_pen.svg │ │ ├── ic_anxiety.svg │ │ ├── ic_chest_pain.svg │ │ ├── ic_finish_line.svg │ │ ├── ic_lastpage.svg │ │ ├── ic_play.svg │ │ ├── ic_stairway.svg │ │ ├── ic_blood_cells.svg │ │ ├── ic_wifi_enable.svg │ │ ├── ic_body_care.svg │ │ ├── ic_mouse.svg │ │ ├── ic_nose.svg │ │ ├── ic_flip_horizontal.svg │ │ ├── ic_qr_code.svg │ │ ├── ic_tv.svg │ │ ├── ic_add.svg │ │ ├── ic_jio_fi.svg │ │ ├── ic_shopping_bag.svg │ │ ├── ic_copy.svg │ │ ├── ic_laptop_screen.svg │ │ ├── ic_pairing_complete.svg │ │ ├── ic_schedule.svg │ │ ├── ic_screen.svg │ │ ├── ic_work.svg │ │ ├── ic_blood_bag.svg │ │ ├── ic_card.svg │ │ ├── ic_jio_fi_dongle.svg │ │ ├── ic_notification.svg │ │ ├── ic_pause.svg │ │ ├── ic_slide.svg │ │ ├── ic_wallet.svg │ │ ├── ic_cardiology_output.svg │ │ ├── ic_homework.svg │ │ ├── ic_luggage.svg │ │ ├── ic_x_ray_body.svg │ │ ├── ic_aux.svg │ │ ├── ic_facebook.svg │ │ ├── ic_biography.svg │ │ ├── ic_confirm.svg │ │ ├── ic_cancer.svg │ │ ├── ic_chevron_down.svg │ │ ├── ic_jewellery_diamond.svg │ │ ├── ic_message_send.svg │ │ ├── ic_my_location.svg │ │ ├── ic_textbook.svg │ │ ├── ic_oxygen.svg │ │ ├── ic_aux_3_5.svg │ │ ├── ic_broken_image.svg │ │ ├── ic_profile_female.svg │ │ ├── ic_traffic_cone.svg │ │ ├── ic_alignment_vertical.svg │ │ ├── ic_colon_complaints.svg │ │ ├── ic_water_checked.svg │ │ ├── ic_education.svg │ │ ├── ic_soil.svg │ │ ├── ic_video_call.svg │ │ ├── ic_bed_single.svg │ │ ├── ic_flag.svg │ │ ├── ic_folder_remove.svg │ │ ├── ic_orders.svg │ │ ├── ic_cholesterol.svg │ │ ├── ic_kidsroom.svg │ │ ├── ic_call_end.svg │ │ ├── ic_favorite.svg │ │ ├── ic_alignment_horizontal.svg │ │ ├── ic_incoming.svg │ │ ├── ic_merge.svg │ │ ├── ic_soil_layers.svg │ │ ├── ic_fallopian_tube.svg │ │ ├── ic_analytics.svg │ │ ├── ic_battery_warning.svg │ │ ├── ic_cloud.svg │ │ ├── ic_fashion_woman.svg │ │ ├── ic_rotate_phone.svg │ │ ├── ic_youtube.svg │ │ ├── ic_apartment_complex.svg │ │ ├── ic_end_chat.svg │ │ ├── ic_hdmi.svg │ │ ├── ic_door.svg │ │ ├── ic_milk.svg │ │ ├── ic_cough.svg │ │ ├── ic_milk_low.svg │ │ ├── ic_tablet.svg │ │ ├── ic_x_ray.svg │ │ ├── ic_blood.svg │ │ ├── ic_drone.svg │ │ ├── ic_tooth.svg │ │ ├── ic_exclamation.svg │ │ ├── ic_mobile.svg │ │ ├── ic_panic_button.svg │ │ ├── ic_cardiology_ventricle.svg │ │ ├── ic_ear.svg │ │ ├── ic_plc.svg │ │ ├── ic_send_message.svg │ │ ├── ic_smoking.svg │ │ ├── ic_garage.svg │ │ ├── ic_headphones.svg │ │ ├── ic_cable_plug.svg │ │ ├── ic_ear_pain.svg │ │ ├── ic_endocrinology.svg │ │ ├── ic_home.svg │ │ ├── ic_mobile_horizontal.svg │ │ ├── ic_archive.svg │ │ ├── ic_steps.svg │ │ ├── ic_theme.svg │ │ ├── ic_fan.svg │ │ ├── ic_paste.svg │ │ ├── ic_phone_key_access.svg │ │ ├── ic_brush.svg │ │ ├── ic_computer.svg │ │ ├── ic_alignment_filling.svg │ │ ├── ic_tennis.svg │ │ ├── ic_save.svg │ │ ├── ic_battery_off.svg │ │ ├── ic_location.svg │ │ ├── ic_next_title.svg │ │ ├── ic_previous_title.svg │ │ ├── ic_guestroom.svg │ │ ├── ic_off.svg │ │ ├── ic_copy_document.svg │ │ ├── ic_minimise.svg │ │ ├── ic_next.svg │ │ ├── ic_boxing.svg │ │ ├── ic_flash.svg │ │ ├── ic_basketball.svg │ │ └── ic_partial_oxygen_pressure.svg │ ├── cross-filled.svg │ ├── dropdown_arrow_down.svg │ ├── plus.svg │ ├── cross.svg │ ├── arrow-right-black.svg │ └── arrow-left-black.svg ├── entry-lib.js ├── utils │ ├── NUuid.js │ ├── NDebounce.js │ ├── NPropValidator.js │ └── NThrotlling.js ├── base │ ├── base.less │ ├── typography.less │ └── media.less ├── common │ └── constants.js ├── directives │ ├── index.js │ ├── NFlatBtn.js │ └── NStrokeBtn.js ├── main.js └── stories │ └── Introduction │ └── Changelog.stories.mdx ├── docs ├── favicon.ico ├── static │ └── media │ │ ├── favicon.94dab8f4.ico │ │ └── nitrozen.d0f96e63.png ├── 51.4cd965b9.iframe.bundle.js.LICENSE.txt ├── 51.864410c8b9a6bd313347.manager.bundle.js.LICENSE.txt ├── 897.03b5b737.iframe.bundle.js.LICENSE.txt ├── 897.6cc64b4c0cf61fecf755.manager.bundle.js.LICENSE.txt ├── 834.67d80143.iframe.bundle.js.LICENSE.txt └── project.json ├── .husky └── pre-commit ├── demo_images ├── chips.png ├── radio.png ├── badges.png ├── button.png ├── dialog-1.png ├── dialog-2.png ├── dropdown.png ├── input-1.png ├── input-2.png ├── input-3.png ├── stepper.png ├── toggle.png ├── pagination.png ├── typography.png ├── autocomplete.png ├── context-menu.png ├── primary-button.png └── secondary-button.png ├── public ├── img │ └── loader.91c86061.gif ├── legacy-assets-index.html.json └── index.html ├── .storybook ├── favicon_io │ ├── favicon.ico │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ ├── apple-touch-icon.png │ ├── android-chrome-192x192.png │ ├── android-chrome-512x512.png │ └── site.webmanifest ├── TitleAddon.js ├── manager.js ├── preview.js ├── NitrozenTheme.js └── main.js ├── dist └── demo.html ├── jest.config.js ├── .gitignore └── CHANGELOG.md /.npmrc: -------------------------------------------------------------------------------- 1 | legacy-peer-deps=true 2 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-minimal -------------------------------------------------------------------------------- /.browserslistrc: -------------------------------------------------------------------------------- 1 | > 1% 2 | last 2 versions 3 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "prettier.singleQuote": true 3 | } 4 | -------------------------------------------------------------------------------- /babel.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["@babel/preset-env"] 3 | } -------------------------------------------------------------------------------- /src/components/NBtn/index.js: -------------------------------------------------------------------------------- 1 | import NBtn from './NBtn' 2 | export default NBtn; -------------------------------------------------------------------------------- /src/components/NTab/index.js: -------------------------------------------------------------------------------- 1 | import NTab from './NTab'; 2 | 3 | export default NTab -------------------------------------------------------------------------------- /docs/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/docs/favicon.ico -------------------------------------------------------------------------------- /src/components/NMenu/index.js: -------------------------------------------------------------------------------- 1 | import NMenu from './NMenu'; 2 | 3 | export default NMenu -------------------------------------------------------------------------------- /src/components/NError/index.js: -------------------------------------------------------------------------------- 1 | import NError from './NError.vue' 2 | export default NError; -------------------------------------------------------------------------------- /src/components/NIcon/index.js: -------------------------------------------------------------------------------- 1 | import NIcon from './NIcon.vue'; 2 | 3 | export default NIcon; -------------------------------------------------------------------------------- /src/components/NRadio/index.js: -------------------------------------------------------------------------------- 1 | import NRadio from './NRadio'; 2 | 3 | export default NRadio; -------------------------------------------------------------------------------- /src/components/NTable/NTable.js: -------------------------------------------------------------------------------- 1 | import NTable from "./NTable.vue" 2 | export default NTable -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | . "$(dirname -- "$0")/_/husky.sh" 3 | 4 | npm test 5 | -------------------------------------------------------------------------------- /demo_images/chips.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/chips.png -------------------------------------------------------------------------------- /demo_images/radio.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/radio.png -------------------------------------------------------------------------------- /src/assets/loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/src/assets/loader.gif -------------------------------------------------------------------------------- /src/components/NAlert/index.js: -------------------------------------------------------------------------------- 1 | import NAlert from './NAlert.vue'; 2 | 3 | export default NAlert; -------------------------------------------------------------------------------- /src/components/NBadge/index.js: -------------------------------------------------------------------------------- 1 | import NBadge from './NBadge.vue'; 2 | 3 | export default NBadge; -------------------------------------------------------------------------------- /src/components/NChips/index.js: -------------------------------------------------------------------------------- 1 | import NChips from './NChips.vue'; 2 | 3 | export default NChips; -------------------------------------------------------------------------------- /src/components/NCode/index.js: -------------------------------------------------------------------------------- 1 | import NCode from './NCode.vue'; 2 | 3 | export default NCode; 4 | -------------------------------------------------------------------------------- /src/components/NStepper/index.js: -------------------------------------------------------------------------------- 1 | import NStepper from './NStepper.vue' 2 | export default NStepper; -------------------------------------------------------------------------------- /src/components/NTooltip/index.js: -------------------------------------------------------------------------------- 1 | import NTooltip from './NTooltip'; 2 | export default NTooltip; -------------------------------------------------------------------------------- /demo_images/badges.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/badges.png -------------------------------------------------------------------------------- /demo_images/button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/button.png -------------------------------------------------------------------------------- /demo_images/dialog-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/dialog-1.png -------------------------------------------------------------------------------- /demo_images/dialog-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/dialog-2.png -------------------------------------------------------------------------------- /demo_images/dropdown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/dropdown.png -------------------------------------------------------------------------------- /demo_images/input-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/input-1.png -------------------------------------------------------------------------------- /demo_images/input-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/input-2.png -------------------------------------------------------------------------------- /demo_images/input-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/input-3.png -------------------------------------------------------------------------------- /demo_images/stepper.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/stepper.png -------------------------------------------------------------------------------- /demo_images/toggle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/toggle.png -------------------------------------------------------------------------------- /src/assets/nitrozen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/src/assets/nitrozen.png -------------------------------------------------------------------------------- /src/components/NInline/index.js: -------------------------------------------------------------------------------- 1 | import NInline from './NInline.vue'; 2 | 3 | export default NInline; -------------------------------------------------------------------------------- /src/components/NMenuItem/index.js: -------------------------------------------------------------------------------- 1 | import NMenuItem from './NMenuItem'; 2 | 3 | export default NMenuItem -------------------------------------------------------------------------------- /src/components/NTabItem/index.js: -------------------------------------------------------------------------------- 1 | import NTabItem from './NTabItem'; 2 | 3 | export default NTabItem -------------------------------------------------------------------------------- /src/components/NToggleBtn/index.js: -------------------------------------------------------------------------------- 1 | import NToggleBtn from './NToggleBtn' 2 | export default NToggleBtn; -------------------------------------------------------------------------------- /demo_images/pagination.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/pagination.png -------------------------------------------------------------------------------- /demo_images/typography.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/typography.png -------------------------------------------------------------------------------- /src/assets/loader-blue.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/src/assets/loader-blue.gif -------------------------------------------------------------------------------- /src/assets/loader-old.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/src/assets/loader-old.gif -------------------------------------------------------------------------------- /src/components/NCheckbox/index.js: -------------------------------------------------------------------------------- 1 | import NCheckbox from './NCheckbox.vue'; 2 | 3 | export default NCheckbox; -------------------------------------------------------------------------------- /demo_images/autocomplete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/autocomplete.png -------------------------------------------------------------------------------- /demo_images/context-menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/context-menu.png -------------------------------------------------------------------------------- /src/assets/facebook-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/src/assets/facebook-icon.png -------------------------------------------------------------------------------- /src/assets/loader-green.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/src/assets/loader-green.gif -------------------------------------------------------------------------------- /src/assets/loader-white.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/src/assets/loader-white.gif -------------------------------------------------------------------------------- /demo_images/primary-button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/primary-button.png -------------------------------------------------------------------------------- /public/img/loader.91c86061.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/public/img/loader.91c86061.gif -------------------------------------------------------------------------------- /src/components/NCustomForm/index.js: -------------------------------------------------------------------------------- 1 | import NCustomForm from './NCustomForm.vue'; 2 | 3 | export default NCustomForm; -------------------------------------------------------------------------------- /src/components/NDialog/index.js: -------------------------------------------------------------------------------- 1 | import NDialog from './NDialog'; 2 | export { NDialog } 3 | export default NDialog; -------------------------------------------------------------------------------- /src/components/NValidation/index.js: -------------------------------------------------------------------------------- 1 | import NValidation from './NValidation.vue'; 2 | 3 | export default NValidation; -------------------------------------------------------------------------------- /.storybook/favicon_io/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/.storybook/favicon_io/favicon.ico -------------------------------------------------------------------------------- /demo_images/secondary-button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/demo_images/secondary-button.png -------------------------------------------------------------------------------- /src/components/NAutocomplete/index.js: -------------------------------------------------------------------------------- 1 | import NAutocomplete from './NAutocomplete.vue'; 2 | export default NAutocomplete; -------------------------------------------------------------------------------- /src/components/NDropdown/index.js: -------------------------------------------------------------------------------- 1 | import NDropdown from './NDropdown'; 2 | export { NDropdown } 3 | export default NDropdown; -------------------------------------------------------------------------------- /.storybook/favicon_io/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/.storybook/favicon_io/favicon-16x16.png -------------------------------------------------------------------------------- /.storybook/favicon_io/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/.storybook/favicon_io/favicon-32x32.png -------------------------------------------------------------------------------- /docs/static/media/favicon.94dab8f4.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/docs/static/media/favicon.94dab8f4.ico -------------------------------------------------------------------------------- /docs/static/media/nitrozen.d0f96e63.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/docs/static/media/nitrozen.d0f96e63.png -------------------------------------------------------------------------------- /src/components/NPagination/index.js: -------------------------------------------------------------------------------- 1 | import NPagination from './NPagination'; 2 | export { NPagination } 3 | export default NPagination; -------------------------------------------------------------------------------- /src/entry-lib.js: -------------------------------------------------------------------------------- 1 | 2 | // export * from './components/NSnackbar'; 3 | 4 | export * from './components'; 5 | export * from './directives'; -------------------------------------------------------------------------------- /.storybook/favicon_io/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/.storybook/favicon_io/apple-touch-icon.png -------------------------------------------------------------------------------- /src/utils/NUuid.js: -------------------------------------------------------------------------------- 1 | const NitrozenUuid = () => { 2 | return Math.random().toString(36).slice(4) 3 | } 4 | 5 | export default NitrozenUuid 6 | -------------------------------------------------------------------------------- /.storybook/favicon_io/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/.storybook/favicon_io/android-chrome-192x192.png -------------------------------------------------------------------------------- /.storybook/favicon_io/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gofynd/nitrozen-vue/HEAD/.storybook/favicon_io/android-chrome-512x512.png -------------------------------------------------------------------------------- /src/base/base.less: -------------------------------------------------------------------------------- 1 | @import './variable.less'; 2 | @import './waves.less'; 3 | @import './typography.less'; 4 | @import './common.less'; 5 | @import './media.less'; 6 | -------------------------------------------------------------------------------- /dist/demo.html: -------------------------------------------------------------------------------- 1 | nitrozen demo -------------------------------------------------------------------------------- /src/common/constants.js: -------------------------------------------------------------------------------- 1 | const constants = { 2 | 'LOADER_CDN_URL': 'https://cdn.pixelbin.io/v2/falling-surf-7c8bb8/fyprod/wrkr/misc/general/free/original/loader.gif' 3 | } 4 | 5 | export default constants -------------------------------------------------------------------------------- /src/directives/index.js: -------------------------------------------------------------------------------- 1 | import strokeBtn from "./NStrokeBtn"; 2 | import flatBtn from "./NFlatBtn"; 3 | import clickOutside from "./NClickOutside"; 4 | 5 | export { 6 | strokeBtn, 7 | flatBtn, 8 | clickOutside 9 | }; -------------------------------------------------------------------------------- /src/components/NInput/NInputPrefix.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 12 | 13 | 16 | -------------------------------------------------------------------------------- /src/components/NInput/NInputSuffix.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 12 | 13 | 16 | -------------------------------------------------------------------------------- /src/utils/NDebounce.js: -------------------------------------------------------------------------------- 1 | export default (fn, time) => { 2 | let timeout 3 | return function() { 4 | const functionCall = () => fn.apply(this, arguments) 5 | clearTimeout(timeout) 6 | timeout = setTimeout(functionCall, time) 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /.storybook/TitleAddon.js: -------------------------------------------------------------------------------- 1 | import addons from "@storybook/addons"; 2 | import { STORY_RENDERED } from "@storybook/core-events"; 3 | 4 | addons.register("TitleAddon", (api) => { 5 | api.on(STORY_RENDERED, (story) => { 6 | document.title = `Nitrozen`; 7 | }); 8 | }); 9 | -------------------------------------------------------------------------------- /docs/51.4cd965b9.iframe.bundle.js.LICENSE.txt: -------------------------------------------------------------------------------- 1 | /** 2 | * Prism: Lightweight, robust, elegant syntax highlighting 3 | * 4 | * @license MIT 5 | * @author Lea Verou 6 | * @namespace 7 | * @public 8 | */ 9 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_ellipse.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_seekbar.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | preset: '@vue/cli-plugin-unit-jest', 3 | transformIgnorePatterns: ['/node_modules/'], 4 | testMatch: ['**/?(*.)+(spec|test).js'], 5 | testEnvironment: 'jsdom', 6 | transform: { 7 | "^.+\\.spec.js?$": "babel-jest" 8 | }, 9 | } 10 | -------------------------------------------------------------------------------- /docs/51.864410c8b9a6bd313347.manager.bundle.js.LICENSE.txt: -------------------------------------------------------------------------------- 1 | /** 2 | * Prism: Lightweight, robust, elegant syntax highlighting 3 | * 4 | * @license MIT 5 | * @author Lea Verou 6 | * @namespace 7 | * @public 8 | */ 9 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_rectangle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NInput/index.js: -------------------------------------------------------------------------------- 1 | import NInput from './NInput'; 2 | // import NInputPrefix from './NInputPrefix.vue'; 3 | // import NInputSuffix from './NInputSuffix.vue'; 4 | 5 | // export { 6 | // NInput, 7 | // NInputPrefix, 8 | // NInputSuffix 9 | // }; 10 | 11 | export default NInput; -------------------------------------------------------------------------------- /src/components/NSnackbar/NSnackbar.vue: -------------------------------------------------------------------------------- 1 | 2 | 12 | 13 | 16 | -------------------------------------------------------------------------------- /docs/897.03b5b737.iframe.bundle.js.LICENSE.txt: -------------------------------------------------------------------------------- 1 | /*! 2 | * OverlayScrollbars 3 | * https://github.com/KingSora/OverlayScrollbars 4 | * 5 | * Version: 1.13.0 6 | * 7 | * Copyright KingSora | Rene Haas. 8 | * https://github.com/KingSora 9 | * 10 | * Released under the MIT license. 11 | * Date: 02.08.2020 12 | */ 13 | -------------------------------------------------------------------------------- /docs/897.6cc64b4c0cf61fecf755.manager.bundle.js.LICENSE.txt: -------------------------------------------------------------------------------- 1 | /*! 2 | * OverlayScrollbars 3 | * https://github.com/KingSora/OverlayScrollbars 4 | * 5 | * Version: 1.13.0 6 | * 7 | * Copyright KingSora | Rene Haas. 8 | * https://github.com/KingSora 9 | * 10 | * Released under the MIT license. 11 | * Date: 02.08.2020 12 | */ 13 | -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | 3 | // import App from './pages/custom-form-demo.vue' 4 | import App from './pages/demo.vue' 5 | 6 | import NitrozenVuePlugin from './setup'; 7 | 8 | Vue.use(NitrozenVuePlugin); 9 | 10 | Vue.config.productionTip = false 11 | 12 | new Vue({ 13 | render: h => h(App), 14 | }).$mount('#app') 15 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_align_left.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_align_top.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_toilet_seat.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_align_bottom.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_align_right.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_italic.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_align_horizontal_centers.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_align_vertical_centers.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_triangle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_cardiology.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_sampling.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_text.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/cross-filled.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NIcon/NIcon.spec.js: -------------------------------------------------------------------------------- 1 | import { mount } from '@vue/test-utils' 2 | import Icon from './NIcon.vue' 3 | 4 | describe('Icon Component', () => { 5 | it('displays icon', () => { 6 | const wrapper = mount(Icon, { 7 | propsData: { 8 | name: 'rectangle' 9 | } 10 | }) 11 | expect(wrapper.find('svg').exists()).toBeTruthy() 12 | }) 13 | }) -------------------------------------------------------------------------------- /src/utils/NPropValidator.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | 3 | export default (name, options) => { 4 | return { 5 | validator: value => { 6 | if (options.includes(value)) { 7 | return true 8 | } 9 | 10 | Vue.util.warn(`The ${name} prop is invalid. Given value: ${value}. Available options: ${options.join(', ')}.`, this) 11 | 12 | return false 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /node_modules 4 | package-lock.json 5 | .DS_Store 6 | coverage 7 | .vscode 8 | src/assets/svgs 9 | 10 | # local env files 11 | .env.local 12 | .env.*.local 13 | 14 | # Log files 15 | npm-debug.log* 16 | yarn-debug.log* 17 | yarn-error.log* 18 | 19 | # Editor directories and files 20 | .idea 21 | *.suo 22 | *.ntvs* 23 | *.njsproj 24 | *.sln 25 | *.sw? 26 | __snapshots__ 27 | -------------------------------------------------------------------------------- /.storybook/manager.js: -------------------------------------------------------------------------------- 1 | import { addons } from "@storybook/addons"; 2 | import NitrozenTheme from "./NitrozenTheme"; 3 | import favicon from "./favicon_io/favicon.ico"; 4 | import "./TitleAddon"; 5 | addons.setConfig({ 6 | theme: NitrozenTheme, 7 | }); 8 | 9 | const link = document.createElement("link"); 10 | link.setAttribute("rel", "shortcut icon"); 11 | link.setAttribute("href", favicon); 12 | document.head.appendChild(link); 13 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_arrow_line_diagonal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_profile.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_arrow_line_dot.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_info_text.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_line.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. 4 | 5 | ## 1.0.0 - Major release 6 | 7 | ### Features 8 | 9 | - added components with revamped design system 10 | - complete list of revamped components available on the library [Storybook](https://opensource.gofynd.io/nitrozen-vue). 11 | - added tests -------------------------------------------------------------------------------- /src/assets/svgs/ic_text_align_left.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_arch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_text_align_center.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_text_align_justify.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_bold.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_text_align_right.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_landscape.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_portrait.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_upi_number.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_veg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /.storybook/preview.js: -------------------------------------------------------------------------------- 1 | export const parameters = { 2 | actions: { argTypesRegex: "^on[A-Z].*" }, 3 | controls: { 4 | matchers: { 5 | color: /(background|color)$/i, 6 | date: /Date$/, 7 | }, 8 | }, 9 | options: { 10 | storySort: { 11 | order: [ 12 | "Welcome", 13 | "Introduction", 14 | "Getting Started", 15 | "Pages", 16 | "Nitrozen", 17 | "Components", 18 | ], 19 | }, 20 | }, 21 | } -------------------------------------------------------------------------------- /src/assets/svgs/ic_minus.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /.storybook/favicon_io/site.webmanifest: -------------------------------------------------------------------------------- 1 | { 2 | "name": "", 3 | "short_name": "", 4 | "icons": [ 5 | { 6 | "src": "/android-chrome-192x192.png", 7 | "sizes": "192x192", 8 | "type": "image/png" 9 | }, 10 | { 11 | "src": "/android-chrome-512x512.png", 12 | "sizes": "512x512", 13 | "type": "image/png" 14 | } 15 | ], 16 | "theme_color": "#ffffff", 17 | "background_color": "#ffffff", 18 | "display": "standalone" 19 | } 20 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_distribute_horizontal_spacing.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_pulse_oximeter.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_distribute_vertical_spacing.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_firstpage.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_underline.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NError/NError.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 12 | 13 | 23 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_three_day.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_week.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_folder.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_gastrointestinal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_area.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_blood_glucose_meter.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_snacks.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_armed.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_non_veg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_body_scale.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_entertainment.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_arrow_line.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_month.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NAlert/states.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This file is for storing state variables that will be 3 | * used throughout the alert component. 4 | * This is to ensure that there are no spelling mistakes 5 | * or discrepencies while coding the component. 6 | * Furthermore, any new state or modification to the existing 7 | * state will be handled in one single place. 8 | * 9 | * @author Rushabh Mulraj Shah 10 | * @since 0.0.42 11 | */ 12 | 13 | export const ERROR = 'error'; 14 | export const INFO = 'info'; 15 | export const SUCCESS = 'success'; 16 | export const WARN = 'warn'; 17 | -------------------------------------------------------------------------------- /public/legacy-assets-index.html.json: -------------------------------------------------------------------------------- 1 | [{"tagName":"script","voidTag":false,"meta":{"plugin":"html-webpack-plugin"},"attributes":{"defer":true,"src":"/js/chunk-vendors-legacy.0c7511de.js"}},{"tagName":"script","voidTag":false,"meta":{"plugin":"html-webpack-plugin"},"attributes":{"defer":true,"src":"/js/app-legacy.d9c24dcb.js"}},{"tagName":"link","voidTag":true,"meta":{"plugin":"html-webpack-plugin"},"attributes":{"href":"/css/chunk-vendors.562f0668.css","rel":"stylesheet"}},{"tagName":"link","voidTag":true,"meta":{"plugin":"html-webpack-plugin"},"attributes":{"href":"/css/app.38bb6df4.css","rel":"stylesheet"}}] -------------------------------------------------------------------------------- /.storybook/NitrozenTheme.js: -------------------------------------------------------------------------------- 1 | import { create } from "@storybook/theming"; 2 | import nitrozenIcon from "../src/assets/nitrozen.png"; 3 | export default create({ 4 | base: "light", 5 | brandTitle: "Nitrozen", 6 | brandUrl: "https://fyndreact.github.io/nitrozen/", 7 | brandImage: nitrozenIcon, 8 | brandTarget: "https://fyndreact.github.io/nitrozen/", 9 | fontBase: "Inter, Helvetica", 10 | colorPrimary: "black", 11 | 12 | colorSecondary: "#9F38FF", 13 | barTextColor: "silver", 14 | barSelectedColor: "white", 15 | barBg: "linear-gradient(109.8deg, #9F38FF 0%, #2E31BE 100%)", 16 | }); 17 | -------------------------------------------------------------------------------- /docs/834.67d80143.iframe.bundle.js.LICENSE.txt: -------------------------------------------------------------------------------- 1 | /** @license React v0.19.1 2 | * scheduler.production.min.js 3 | * 4 | * Copyright (c) Facebook, Inc. and its affiliates. 5 | * 6 | * This source code is licensed under the MIT license found in the 7 | * LICENSE file in the root directory of this source tree. 8 | */ 9 | 10 | /** @license React v16.14.0 11 | * react-dom.production.min.js 12 | * 13 | * Copyright (c) Facebook, Inc. and its affiliates. 14 | * 15 | * This source code is licensed under the MIT license found in the 16 | * LICENSE file in the root directory of this source tree. 17 | */ 18 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_blocked.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_throat.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_dizzy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_jiopay.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_water.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_armed_partially.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_backspace.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_volume.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_fullscreen_mode.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_order.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_test.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_document.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_bookmark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_itching.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_blood_pressure_cuff.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_spine.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_extract.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_sound_quiet.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_fullscreen_mode_off.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/directives/NFlatBtn.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | 3 | const flatBtn = Vue.directive('flat-btn', { 4 | bind: function (el, binding, vnode) { 5 | el.classList.add('n-flat-button'); 6 | if(vnode.componentOptions.propsData.theme == 'secondary'){ 7 | el.classList.add('n-flat-button-secondary'); 8 | } 9 | else if(vnode.componentOptions.propsData.theme == 'destructive'){ 10 | el.classList.add('n-flat-button-destructive'); 11 | } 12 | else{ 13 | el.classList.add('n-flat-button-primary'); 14 | } 15 | } 16 | }) 17 | Vue.use(flatBtn); 18 | 19 | // bind 20 | // inserted 21 | // update 22 | // componentUpdated 23 | // unbind 24 | 25 | export default flatBtn; -------------------------------------------------------------------------------- /src/assets/svgs/ic_assistive_grid.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_flip_vertical.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_iron.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_mail.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NAlert/constants.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This file will be a centralised place for storing 3 | * all variables that will be used throughout the 4 | * Alert component. 5 | * 6 | * @author Rushabh Mulraj Shah 7 | * @since 0.0.42 8 | */ 9 | 10 | /* Variable imports */ 11 | import * as STATES from './states'; 12 | 13 | export const ICON_NAMES = { 14 | [STATES.ERROR]: 'error_colored', 15 | [STATES.INFO]: 'info', 16 | [STATES.SUCCESS]: 'success_colored', 17 | [STATES.WARN]: 'warning_colored' 18 | }; 19 | 20 | export const ICON_COLORS = { 21 | [STATES.ERROR]: '#F50031', 22 | [STATES.INFO]: '#3535F3', 23 | [STATES.SUCCESS]: '#219653', 24 | [STATES.WARN]: '#F06D0F' 25 | }; 26 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_phone_secured.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/directives/NStrokeBtn.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | 3 | const strokeBtn = Vue.directive('stroke-btn', { 4 | bind: function (el, binding, vnode) { 5 | el.classList.add('n-button-stroke'); 6 | if(vnode.componentOptions.propsData.theme == 'secondary') { 7 | el.classList.add('n-button-stroke-secondary'); 8 | } 9 | else if(vnode.componentOptions.propsData.theme == 'destructive'){ 10 | el.classList.add('n-button-stroke-destructive'); 11 | } 12 | else { 13 | el.classList.add('n-button-stroke-primary'); 14 | } 15 | } 16 | }) 17 | Vue.use(strokeBtn); 18 | 19 | // bind 20 | // inserted 21 | // update 22 | // componentUpdated 23 | // unbind 24 | 25 | export default strokeBtn; -------------------------------------------------------------------------------- /src/assets/svgs/ic_apartment.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_blood_vessels.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/dropdown_arrow_down.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | DropDown Arrow Down 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_sms.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_edit_pen.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_anxiety.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_chest_pain.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_finish_line.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_lastpage.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_play.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_stairway.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_blood_cells.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_wifi_enable.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/plus.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_body_care.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_mouse.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_nose.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_flip_horizontal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_qr_code.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_tv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | // Use IntelliSense to learn about possible attributes. 3 | // Hover to view descriptions of existing attributes. 4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 5 | "version": "0.2.0", 6 | "configurations": [ 7 | { 8 | "name": "Storybook Debug", 9 | "type": "node-terminal", 10 | "request": "launch", 11 | "command": "npm run storybook", 12 | "internalConsoleOptions": "openOnFirstSessionStart", 13 | "serverReadyAction": { 14 | "pattern": "Local:.+(https?://[^:]+:[0-9]+)", 15 | "uriFormat": "%s", 16 | "action": "debugWithChrome" 17 | } 18 | } 19 | ] 20 | } -------------------------------------------------------------------------------- /src/assets/svgs/ic_add.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_jio_fi.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_shopping_bag.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_copy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_laptop_screen.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_pairing_complete.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_schedule.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_screen.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_work.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_blood_bag.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_card.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_jio_fi_dongle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_notification.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_pause.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NValidation/NValidation.stories.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import NitrozenValidation from '.' 3 | 4 | export default { 5 | title: 'Components/Validation', 6 | component: NitrozenValidation, 7 | argTypes: { 8 | validationState: { 9 | control: "select", 10 | options: ['success', 'error', 'warning', 'default'] 11 | } 12 | } 13 | } 14 | 15 | 16 | const Template = (args, { argTypes }) => ({ 17 | components: { NitrozenValidation }, 18 | props: Object.keys(argTypes), 19 | template: '', 20 | }); 21 | 22 | export const Success = Template.bind({}) 23 | Success.args = { 24 | label: 'All fields are valid', 25 | validationState: 'success', 26 | isHidden: false 27 | } 28 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_slide.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_wallet.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NBadge/NBadge.spec.js: -------------------------------------------------------------------------------- 1 | import { mount } from '@vue/test-utils' 2 | import NBadge from './NBadge.vue' 3 | import NIcon from '../NIcon' 4 | 5 | describe('Badge Component', () => { 6 | it('should display success badge', () => { 7 | const wrapper = mount(NBadge, { 8 | propsData: { 9 | state: 'success' 10 | } 11 | }) 12 | expect(wrapper.props('state')).toBe('success') 13 | }) 14 | it('should display success badge with an icon', () => { 15 | const wrapper = mount(NBadge, { 16 | propsData: { 17 | state: 'success', 18 | icon: 'success' 19 | } 20 | }) 21 | expect(wrapper.findComponent(NIcon).exists()).toBeTruthy() 22 | }) 23 | }) -------------------------------------------------------------------------------- /src/assets/svgs/ic_cardiology_output.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_homework.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_luggage.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_x_ray_body.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_aux.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_facebook.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_biography.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_confirm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_cancer.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_chevron_down.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_jewellery_diamond.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_message_send.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_my_location.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_textbook.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_oxygen.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_aux_3_5.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /docs/project.json: -------------------------------------------------------------------------------- 1 | {"generatedAt":1679661163979,"builder":{"name":"@storybook/builder-webpack5"},"hasCustomBabel":false,"hasCustomWebpack":true,"hasStaticDirs":false,"hasStorybookEslint":false,"refCount":0,"metaFramework":{"name":"vue-cli","packageName":"@vue/cli-service","version":"5.0.8"},"packageManager":{"type":"npm","version":"8.11.0"},"storybookVersion":"6.5.16","language":"javascript","storybookPackages":{"@storybook/addon-actions":{"version":"6.5.16"},"@storybook/builder-webpack5":{"version":"6.5.16"},"@storybook/manager-webpack5":{"version":"6.5.16"},"@storybook/testing-library":{"version":"0.0.13"},"@storybook/vue":{"version":"6.5.16"}},"framework":{"name":"vue"},"addons":{"@storybook/addon-links":{"version":"6.5.16"},"@storybook/addon-essentials":{"version":"6.5.16"},"@storybook/addon-interactions":{"version":"6.5.16"}}} 2 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_broken_image.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_profile_female.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_traffic_cone.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /.storybook/main.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | "stories": [ 3 | "../src/**/*.stories.mdx", 4 | "../src/**/*.stories.@(js|jsx|ts|tsx)" 5 | ], 6 | "addons": [ 7 | "@storybook/addon-links", 8 | "@storybook/addon-essentials", 9 | "@storybook/addon-interactions" 10 | ], 11 | "framework": "@storybook/vue", 12 | "core": { 13 | "builder": "@storybook/builder-webpack5" 14 | }, 15 | webpackFinal: async (config) => { 16 | config.module.rules.push({ 17 | test: /\.less$/, 18 | use: [ 19 | { loader: 'style-loader' }, 20 | { loader: 'css-loader', options: { modules: false } }, 21 | { 22 | loader: 'less-loader', 23 | options: { lessOptions: { javascriptEnabled: true } }, 24 | }, 25 | ], 26 | }); 27 | return config; 28 | }, 29 | } -------------------------------------------------------------------------------- /src/assets/svgs/ic_alignment_vertical.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_colon_complaints.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_water_checked.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/base/typography.less: -------------------------------------------------------------------------------- 1 | @import "./variable.less"; 2 | 3 | h1 { 4 | font-size: @BaseFontSize + 50; 5 | font-family: @PrimaryFont; 6 | color: @TypographyPrimaryColor; 7 | } 8 | 9 | h2 { 10 | font-size: @BaseFontSize + 32; 11 | font-family: @PrimaryFont; 12 | color: @TypographyPrimaryColor; 13 | } 14 | 15 | h3 { 16 | font-size: @BaseFontSize + 20; 17 | font-family: @PrimaryFont; 18 | color: @TypographyPrimaryColor; 19 | } 20 | 21 | h4 { 22 | font-size: @BaseFontSize + 14; 23 | font-family: @PrimaryFont; 24 | color: @TypographyPrimaryColor; 25 | } 26 | 27 | h5 { 28 | font-size: @BaseFontSize + 8; 29 | font-family: @PrimaryFont; 30 | color: @TypographyPrimaryColor; 31 | } 32 | 33 | h6 { 34 | font-size: @BaseFontSize + 4; 35 | font-family: @PrimaryFont; 36 | color: @TypographyPrimaryColor; 37 | } 38 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_education.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_soil.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_video_call.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_bed_single.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_flag.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_folder_remove.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_orders.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_cholesterol.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_kidsroom.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NMenuItem/NMenuItem.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 22 | 23 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_call_end.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_favorite.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NSnackbar/index.js: -------------------------------------------------------------------------------- 1 | // import NSnackbar from './NSnackbar'; 2 | // export default NSnackbar; 3 | 4 | /** 5 | * Clone from https://github.com/shakee93/vue-toasted 6 | */ 7 | 8 | import { Snackbar as T } from './js/snackbar'; 9 | import NitrozenSnackbar from './NSnackbar.vue'; 10 | 11 | const NSnackbar = { 12 | install(Vue, options) { 13 | if (!options) { 14 | options = {}; 15 | } 16 | 17 | const Snack = new T(options); 18 | Vue.component('nitrozen-snackbar', NitrozenSnackbar); 19 | Vue.Snackbar = Vue.snackbar = Vue.prototype.$snackbar = Snack; 20 | } 21 | }; 22 | 23 | // register plugin if it is used via cdn or directly as a script tag 24 | if (typeof window !== 'undefined' && window.Vue) { 25 | window.Snackbar = window.snackbar = NSnackbar; 26 | } 27 | 28 | export default NSnackbar -------------------------------------------------------------------------------- /src/assets/svgs/ic_alignment_horizontal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_incoming.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_merge.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_soil_layers.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NInline/NInline.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 30 | 31 | 36 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_fallopian_tube.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_analytics.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_battery_warning.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_cloud.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_fashion_woman.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_rotate_phone.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_youtube.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_apartment_complex.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_end_chat.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_hdmi.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_door.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_milk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_cough.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_milk_low.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_tablet.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/utils/NThrotlling.js: -------------------------------------------------------------------------------- 1 | const getOption = (options, key) => options ? 2 | (options[key] === false ? false : true ) : 3 | true 4 | 5 | export default (fn, time, option) => { 6 | const leading = getOption(option, 'leading') 7 | const trailing = getOption(option, 'trailing') 8 | let timeout = null 9 | let duplicated = false 10 | 11 | return function () { 12 | const functionCall = () => fn.apply(this, arguments) 13 | 14 | if (timeout) { 15 | duplicated = true 16 | return false 17 | } else if (leading) { 18 | functionCall() 19 | } 20 | 21 | const setThrottling = () => { 22 | 23 | timeout = setTimeout(() => { 24 | timeout = null 25 | 26 | if (duplicated && trailing) { 27 | duplicated = false 28 | functionCall() 29 | setThrottling() 30 | } 31 | }, time) 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_x_ray.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NTooltip/NTooltip.spec.js: -------------------------------------------------------------------------------- 1 | /* Package imports */ 2 | import { mount } from "@vue/test-utils"; 3 | 4 | /* Component imports */ 5 | import NTooltip from './NTooltip.vue'; 6 | 7 | describe('Tooltip Component', () => { 8 | it('should render tooltip', () => { 9 | const wrapper = mount(NTooltip, { 10 | propsData: { 11 | position: 'top', 12 | tooltipText:'This is a tooltip' 13 | } 14 | }); 15 | expect(wrapper.element).toMatchSnapshot(); 16 | }); 17 | 18 | it('should render an element that receives correct props', () => { 19 | const wrapper = mount(NTooltip, { 20 | propsData: { 21 | position: 'top', 22 | tooltipText:'This is a tooltip' 23 | } 24 | }); 25 | expect(wrapper.props('position')).toBe('top'); 26 | }); 27 | }) 28 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_blood.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_drone.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_tooth.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /public/index.html: -------------------------------------------------------------------------------- 1 | Vue App
-------------------------------------------------------------------------------- /src/assets/svgs/ic_exclamation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_mobile.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_panic_button.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_cardiology_ventricle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_ear.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_plc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_send_message.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_smoking.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_garage.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_headphones.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/components/NTabItem/NTabItem.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 20 | 38 | -------------------------------------------------------------------------------- /src/assets/cross.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | B2F47002-4B3E-4C9A-82FF-5C2DFD3B49BF 5 | Created with sketchtool. 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_cable_plug.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_ear_pain.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_endocrinology.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_home.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_mobile_horizontal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_archive.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_steps.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_theme.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_fan.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_paste.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_phone_key_access.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/base/media.less: -------------------------------------------------------------------------------- 1 | @xs-min: 360px; 2 | @sm-min: 480px; 3 | @md-min: 768px; 4 | @lg-min: 801px; 5 | @xl-min: 1200px; 6 | 7 | @xs-max: (@sm-min - 1); 8 | @sm-max: (@md-min - 1); 9 | @md-max: (@lg-min - 1); 10 | @lg-max: (@xl-min - 1); 11 | 12 | @mobile-sm: ~"only screen and (max-width: @{xs-min})"; 13 | @mobile-sm-strict: ~"only screen and (min-width: @{xs-min}) and (max-width: @{xs-max})"; 14 | 15 | @mobile: ~"only screen and (max-width: @{sm-min})"; 16 | @mobile-strict: ~"only screen and (min-width: @{sm-min}) and (max-width: @{sm-max})"; 17 | 18 | @tablet: ~"only screen and (max-width: @{md-min})"; 19 | @tablet-strict: ~"only screen and (min-width: @{md-min}) and (max-width: @{md-max})"; 20 | 21 | @desktop: ~"only screen and (max-width: @{lg-min})"; 22 | @desktop-strict: ~"only screen and (min-width: @{lg-min}) and (max-width: @{lg-max})"; 23 | 24 | @desktop-xl: ~"only screen and (max-width: @{xl-min})"; -------------------------------------------------------------------------------- /src/components/NIcon/NIcon.stories.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import IconComponent from './index' 3 | import icons from '../../assets/icons.json' 4 | 5 | // Create a wrapper component here using IconComponent 6 | 7 | export default { 8 | title: 'Assets/Icon', 9 | component: IconComponent, 10 | argTypes: { 11 | name: { 12 | control: "select", 13 | options: Object.keys(icons), 14 | description: "Icon name to use. One of the supported icons", 15 | }, 16 | size: { 17 | control: "number", 18 | description: "Size of the icon", 19 | }, 20 | color: { 21 | control: "color", 22 | description: "Color of the icon", 23 | } 24 | } 25 | } 26 | 27 | 28 | const Template = (args, { argTypes }) => ({ 29 | components: { IconComponent }, 30 | props: Object.keys(argTypes), 31 | template: '', 32 | }); 33 | 34 | export const Icon = Template.bind({}) 35 | -------------------------------------------------------------------------------- /src/components/NIcon/NIcon.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_brush.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_computer.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_alignment_filling.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/arrow-right-black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | arrow-right-black 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_tennis.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_save.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_battery_off.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_location.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_next_title.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_previous_title.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_guestroom.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_off.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/stories/Introduction/Changelog.stories.mdx: -------------------------------------------------------------------------------- 1 | import { Meta } from '@storybook/addon-docs'; 2 | import Code from '../assets/code-brackets.svg'; 3 | import Colors from '../assets/colors.svg'; 4 | import Comments from '../assets/comments.svg'; 5 | import Direction from '../assets/direction.svg'; 6 | import Flow from '../assets/flow.svg'; 7 | import Plugin from '../assets/plugin.svg'; 8 | import Repo from '../assets/repo.svg'; 9 | import StackAlt from '../assets/stackalt.svg'; 10 | 11 | 12 | 13 | # Changelog 14 | 15 | All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. 16 | 17 | ## 1.0.0 - Major release 18 | 19 | ### Features 20 | 21 | - added components with revamped design system 22 | - complete list of revamped components available on the library [Storybook](https://opensource.gofynd.io/nitrozen-vue). 23 | - added tests -------------------------------------------------------------------------------- /src/assets/arrow-left-black.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | arrow-left-black 5 | Created with Sketch. 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_copy_document.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_minimise.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_next.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_boxing.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_flash.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_basketball.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/assets/svgs/ic_partial_oxygen_pressure.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | --------------------------------------------------------------------------------