@sarasanalytics-com/design-system 0.0.41 → 0.0.43
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.editorconfig +16 -0
- package/.eslintrc.json +23 -0
- package/.storybook/main.ts +21 -0
- package/.storybook/manager.ts +17 -0
- package/.storybook/preview-head.html +5 -0
- package/.storybook/preview.ts +66 -0
- package/.storybook/tsconfig.doc.json +10 -0
- package/.storybook/tsconfig.json +11 -0
- package/.storybook/typings.d.ts +4 -0
- package/.vscode/extensions.json +7 -0
- package/.vscode/launch.json +20 -0
- package/.vscode/settings.json +13 -0
- package/.vscode/tasks.json +42 -0
- package/README.md +34 -13
- package/angular.json +195 -0
- package/build-storybook.log +45 -0
- package/documentation.json +0 -0
- package/generate-public-api.js +59 -0
- package/package.json +73 -18
- package/projects/component-library/README.md +24 -0
- package/projects/component-library/ng-package.json +8 -0
- package/projects/component-library/package.json +12 -0
- package/projects/component-library/src/interfaces/avatar-interface.ts +6 -0
- package/projects/component-library/src/interfaces/button-interface.ts +37 -0
- package/{interfaces/card-carousel-interface.d.ts → projects/component-library/src/interfaces/card-carousel-interface.ts} +2 -1
- package/projects/component-library/src/interfaces/chip-interface.ts +11 -0
- package/projects/component-library/src/interfaces/grid-interface.ts +24 -0
- package/projects/component-library/src/interfaces/icon-interface.ts +21 -0
- package/projects/component-library/src/interfaces/select-interface.ts +20 -0
- package/projects/component-library/src/interfaces/tab-interface.ts +6 -0
- package/{interfaces/toast-interface.d.ts → projects/component-library/src/interfaces/toast-interface.ts} +1 -1
- package/projects/component-library/src/lib/accordion/accordion.component.css +188 -0
- package/projects/component-library/src/lib/accordion/accordion.component.html +151 -0
- package/projects/component-library/src/lib/accordion/accordion.component.spec.ts +23 -0
- package/projects/component-library/src/lib/accordion/accordion.component.ts +129 -0
- package/projects/component-library/src/lib/avatar/avatar.component.css +48 -0
- package/projects/component-library/src/lib/avatar/avatar.component.html +5 -0
- package/projects/component-library/src/lib/avatar/avatar.component.spec.ts +23 -0
- package/projects/component-library/src/lib/avatar/avatar.component.ts +50 -0
- package/projects/component-library/src/lib/button/button.component.css +145 -0
- package/projects/component-library/src/lib/button/button.component.html +25 -0
- package/projects/component-library/src/lib/button/button.component.spec.ts +23 -0
- package/projects/component-library/src/lib/button/button.component.ts +82 -0
- package/projects/component-library/src/lib/calendar-header/calendar-header.component.css +67 -0
- package/projects/component-library/src/lib/calendar-header/calendar-header.component.html +20 -0
- package/projects/component-library/src/lib/calendar-header/calendar-header.component.spec.ts +23 -0
- package/projects/component-library/src/lib/calendar-header/calendar-header.component.ts +191 -0
- package/projects/component-library/src/lib/card/card-body/card-body.component.css +0 -0
- package/projects/component-library/src/lib/card/card-body/card-body.component.html +1 -0
- package/projects/component-library/src/lib/card/card-body/card-body.component.spec.ts +23 -0
- package/projects/component-library/src/lib/card/card-body/card-body.component.ts +12 -0
- package/projects/component-library/src/lib/card/card-custom-header/card-custom-header.component.css +70 -0
- package/projects/component-library/src/lib/card/card-custom-header/card-custom-header.component.html +1 -0
- package/projects/component-library/src/lib/card/card-custom-header/card-custom-header.component.spec.ts +23 -0
- package/projects/component-library/src/lib/card/card-custom-header/card-custom-header.component.ts +13 -0
- package/projects/component-library/src/lib/card/card-footer-actions/card-footer-actions.component.css +4 -0
- package/projects/component-library/src/lib/card/card-footer-actions/card-footer-actions.component.html +3 -0
- package/projects/component-library/src/lib/card/card-footer-actions/card-footer-actions.component.spec.ts +23 -0
- package/projects/component-library/src/lib/card/card-footer-actions/card-footer-actions.component.ts +12 -0
- package/projects/component-library/src/lib/card/card-icon/card-icon.component.css +0 -0
- package/projects/component-library/src/lib/card/card-icon/card-icon.component.html +1 -0
- package/projects/component-library/src/lib/card/card-icon/card-icon.component.spec.ts +23 -0
- package/projects/component-library/src/lib/card/card-icon/card-icon.component.ts +12 -0
- package/projects/component-library/src/lib/card/card-title-actions/card-title-actions.component.css +3 -0
- package/projects/component-library/src/lib/card/card-title-actions/card-title-actions.component.html +1 -0
- package/projects/component-library/src/lib/card/card-title-actions/card-title-actions.component.spec.ts +23 -0
- package/projects/component-library/src/lib/card/card-title-actions/card-title-actions.component.ts +12 -0
- package/projects/component-library/src/lib/card/card.component.css +149 -0
- package/projects/component-library/src/lib/card/card.component.html +46 -0
- package/projects/component-library/src/lib/card/card.component.spec.ts +23 -0
- package/projects/component-library/src/lib/card/card.component.ts +47 -0
- package/projects/component-library/src/lib/card/checkbox-card/checkbox-card.component.css +79 -0
- package/projects/component-library/src/lib/card/checkbox-card/checkbox-card.component.html +55 -0
- package/projects/component-library/src/lib/card/checkbox-card/checkbox-card.component.spec.ts +23 -0
- package/projects/component-library/src/lib/card/checkbox-card/checkbox-card.component.ts +44 -0
- package/projects/component-library/src/lib/card/guide-card/guide-card.component.css +80 -0
- package/projects/component-library/src/lib/card/guide-card/guide-card.component.html +24 -0
- package/projects/component-library/src/lib/card/guide-card/guide-card.component.spec.ts +23 -0
- package/projects/component-library/src/lib/card/guide-card/guide-card.component.ts +19 -0
- package/projects/component-library/src/lib/card-carousel/card-carousel.component.css +91 -0
- package/projects/component-library/src/lib/card-carousel/card-carousel.component.html +54 -0
- package/projects/component-library/src/lib/card-carousel/card-carousel.component.spec.ts +23 -0
- package/projects/component-library/src/lib/card-carousel/card-carousel.component.ts +89 -0
- package/projects/component-library/src/lib/checkbox/checkbox.component.css +79 -0
- package/projects/component-library/src/lib/checkbox/checkbox.component.html +27 -0
- package/projects/component-library/src/lib/checkbox/checkbox.component.spec.ts +23 -0
- package/projects/component-library/src/lib/checkbox/checkbox.component.ts +38 -0
- package/projects/component-library/src/lib/chips/chips.component.css +129 -0
- package/projects/component-library/src/lib/chips/chips.component.html +17 -0
- package/projects/component-library/src/lib/chips/chips.component.spec.ts +23 -0
- package/projects/component-library/src/lib/chips/chips.component.ts +54 -0
- package/projects/component-library/src/lib/component-library.component.spec.ts +23 -0
- package/projects/component-library/src/lib/component-library.component.ts +16 -0
- package/projects/component-library/src/lib/component-library.service.spec.ts +16 -0
- package/projects/component-library/src/lib/component-library.service.ts +9 -0
- package/projects/component-library/src/lib/datepicker/datepicker.component.css +33 -0
- package/projects/component-library/src/lib/datepicker/datepicker.component.html +11 -0
- package/projects/component-library/src/lib/datepicker/datepicker.component.spec.ts +23 -0
- package/projects/component-library/src/lib/datepicker/datepicker.component.ts +36 -0
- package/projects/component-library/src/lib/form-input/form-input.component.css +164 -0
- package/projects/component-library/src/lib/form-input/form-input.component.html +55 -0
- package/projects/component-library/src/lib/form-input/form-input.component.spec.ts +23 -0
- package/projects/component-library/src/lib/form-input/form-input.component.ts +282 -0
- package/projects/component-library/src/lib/form-select/form-select.component.css +158 -0
- package/projects/component-library/src/lib/form-select/form-select.component.html +38 -0
- package/projects/component-library/src/lib/form-select/form-select.component.spec.ts +23 -0
- package/projects/component-library/src/lib/form-select/form-select.component.ts +72 -0
- package/projects/component-library/src/lib/grid-cell/grid-cell.component.css +78 -0
- package/projects/component-library/src/lib/grid-cell/grid-cell.component.html +31 -0
- package/projects/component-library/src/lib/grid-cell/grid-cell.component.spec.ts +23 -0
- package/projects/component-library/src/lib/grid-cell/grid-cell.component.ts +89 -0
- package/projects/component-library/src/lib/header/header.component.css +62 -0
- package/projects/component-library/src/lib/header/header.component.html +23 -0
- package/projects/component-library/src/lib/header/header.component.spec.ts +23 -0
- package/projects/component-library/src/lib/header/header.component.ts +28 -0
- package/projects/component-library/src/lib/icon/icon.component.css +65 -0
- package/projects/component-library/src/lib/icon/icon.component.html +9 -0
- package/projects/component-library/src/lib/icon/icon.component.ts +64 -0
- package/projects/component-library/src/lib/icon/icon.service.ts +26 -0
- package/projects/component-library/src/lib/left-nav/left-nav.component.css +109 -0
- package/projects/component-library/src/lib/left-nav/left-nav.component.html +51 -0
- package/projects/component-library/src/lib/left-nav/left-nav.component.spec.ts +23 -0
- package/projects/component-library/src/lib/left-nav/left-nav.component.ts +180 -0
- package/projects/component-library/src/lib/list/list.component.css +28 -0
- package/projects/component-library/src/lib/list/list.component.html +10 -0
- package/projects/component-library/src/lib/list/list.component.spec.ts +23 -0
- package/projects/component-library/src/lib/list/list.component.ts +15 -0
- package/projects/component-library/src/lib/message-banner/message-banner.component.css +52 -0
- package/projects/component-library/src/lib/message-banner/message-banner.component.html +15 -0
- package/projects/component-library/src/lib/message-banner/message-banner.component.spec.ts +23 -0
- package/projects/component-library/src/lib/message-banner/message-banner.component.ts +31 -0
- package/projects/component-library/src/lib/page-layout/page-layout.component.css +76 -0
- package/projects/component-library/src/lib/page-layout/page-layout.component.html +30 -0
- package/projects/component-library/src/lib/page-layout/page-layout.component.spec.ts +23 -0
- package/projects/component-library/src/lib/page-layout/page-layout.component.ts +14 -0
- package/projects/component-library/src/lib/progress-bar/progress-bar.component.css +30 -0
- package/projects/component-library/src/lib/progress-bar/progress-bar.component.html +4 -0
- package/projects/component-library/src/lib/progress-bar/progress-bar.component.spec.ts +23 -0
- package/projects/component-library/src/lib/progress-bar/progress-bar.component.ts +24 -0
- package/projects/component-library/src/lib/radio-button/radio-button.component.css +128 -0
- package/projects/component-library/src/lib/radio-button/radio-button.component.html +28 -0
- package/projects/component-library/src/lib/radio-button/radio-button.component.spec.ts +23 -0
- package/projects/component-library/src/lib/radio-button/radio-button.component.ts +35 -0
- package/projects/component-library/src/lib/scrolling-cards/scrolling-cards.component.css +118 -0
- package/projects/component-library/src/lib/scrolling-cards/scrolling-cards.component.html +11 -0
- package/projects/component-library/src/lib/scrolling-cards/scrolling-cards.component.spec.ts +23 -0
- package/projects/component-library/src/lib/scrolling-cards/scrolling-cards.component.ts +74 -0
- package/projects/component-library/src/lib/spinner/spinner.component.css +41 -0
- package/projects/component-library/src/lib/spinner/spinner.component.html +1 -0
- package/projects/component-library/src/lib/spinner/spinner.component.spec.ts +23 -0
- package/projects/component-library/src/lib/spinner/spinner.component.ts +15 -0
- package/projects/component-library/src/lib/stepper/stepper.component.css +96 -0
- package/projects/component-library/src/lib/stepper/stepper.component.html +14 -0
- package/projects/component-library/src/lib/stepper/stepper.component.spec.ts +23 -0
- package/projects/component-library/src/lib/stepper/stepper.component.ts +61 -0
- package/projects/component-library/src/lib/tabs/tabs.component.css +100 -0
- package/projects/component-library/src/lib/tabs/tabs.component.html +16 -0
- package/projects/component-library/src/lib/tabs/tabs.component.spec.ts +23 -0
- package/projects/component-library/src/lib/tabs/tabs.component.ts +37 -0
- package/projects/component-library/src/lib/toast/toast.component.css +115 -0
- package/projects/component-library/src/lib/toast/toast.component.html +29 -0
- package/projects/component-library/src/lib/toast/toast.component.spec.ts +23 -0
- package/projects/component-library/src/lib/toast/toast.component.ts +87 -0
- package/projects/component-library/src/lib/tool-tip/tool-tip.component.css +144 -0
- package/projects/component-library/src/lib/tool-tip/tool-tip.component.html +31 -0
- package/projects/component-library/src/lib/tool-tip/tool-tip.component.spec.ts +23 -0
- package/projects/component-library/src/lib/tool-tip/tool-tip.component.ts +37 -0
- package/{public-api.d.ts → projects/component-library/src/public-api.ts} +13 -0
- package/projects/component-library/src/shared/formly-field-wrapper/formly-field-wrapper.component.css +0 -0
- package/projects/component-library/src/shared/formly-field-wrapper/formly-field-wrapper.component.html +22 -0
- package/projects/component-library/src/shared/formly-field-wrapper/formly-field-wrapper.component.spec.ts +23 -0
- package/projects/component-library/src/shared/formly-field-wrapper/formly-field-wrapper.component.ts +13 -0
- package/projects/component-library/src/utils/validators.ts +100 -0
- package/projects/component-library/tsconfig.lib.json +14 -0
- package/projects/component-library/tsconfig.lib.prod.json +10 -0
- package/projects/component-library/tsconfig.spec.json +14 -0
- package/sarasanalytics-com-design-system-0.0.21.tgz +0 -0
- package/src/Saras-logo.svg +15 -0
- package/src/app/app.component.css +82 -0
- package/src/app/app.component.html +663 -0
- package/src/app/app.component.spec.ts +29 -0
- package/src/app/app.component.ts +1341 -0
- package/src/app/app.config.ts +56 -0
- package/src/app/app.routes.ts +3 -0
- package/src/app/data.ts +52 -0
- package/src/app/kitchen-sink/kitchen-sink.component.css +30 -0
- package/src/app/kitchen-sink/kitchen-sink.component.html +7 -0
- package/src/app/kitchen-sink/kitchen-sink.component.spec.ts +23 -0
- package/src/app/kitchen-sink/kitchen-sink.component.ts +92 -0
- package/src/assets/.gitkeep +0 -0
- package/src/assets/analysis.svg +1 -0
- package/src/assets/arrowRightOutlined.svg +1 -0
- package/src/assets/avatar.svg +1 -0
- package/src/assets/bpn.svg +1 -0
- package/src/assets/businessStatsFilled.svg +1 -0
- package/src/assets/channelkey.svg +1 -0
- package/src/assets/chatHelpOutlined.svg +1 -0
- package/src/assets/checkCircleFilled.svg +1 -0
- package/src/assets/checkCircleOutlined.svg +1 -0
- package/src/assets/checkOutlined.svg +1 -0
- package/src/assets/circleFilled.svg +1 -0
- package/src/assets/closeBlueOutlined.svg +1 -0
- package/src/assets/closeCircleFilled.svg +1 -0
- package/src/assets/closeOutlined.svg +1 -0
- package/src/assets/dataonavatar.svg +1 -0
- package/src/assets/datonAvatar.png +0 -0
- package/src/assets/desktopSpeakerOutlined.svg +1 -0
- package/src/assets/disabledCheckboxFilled.svg +1 -0
- package/src/assets/doubleDownOutlined.svg +1 -0
- package/src/assets/downChevronOutlined.svg +3 -0
- package/src/assets/downOutlined.svg +1 -0
- package/src/assets/errorCircleOutlined.svg +1 -0
- package/src/assets/errorCrossOutlined.svg +3 -0
- package/src/assets/eyeFilled.svg +1 -0
- package/src/assets/eyeOff.svg +3 -0
- package/src/assets/eyeOutlined.svg +1 -0
- package/src/assets/formDetailsOutlined.svg +1 -0
- package/src/assets/gridViewOutlined.svg +1 -0
- package/src/assets/headsetOutlined.svg +3 -0
- package/src/assets/homeOutlined.svg +1 -0
- package/src/assets/icons/analysis1.svg +1 -0
- package/src/assets/infoCircleOutlined.svg +3 -0
- package/src/assets/infoTriangleFilled.svg +1 -0
- package/src/assets/infoTriangleOutlined.svg +1 -0
- package/src/assets/innosupps.svg +1 -0
- package/src/assets/leftChevronCircle.svg +2 -0
- package/src/assets/locationOutlined.svg +1 -0
- package/src/assets/loginDashboard.png +0 -0
- package/src/assets/mailOutlined.svg +1 -0
- package/src/assets/multiConnectionHub.svg +1 -0
- package/src/assets/murad.svg +1 -0
- package/src/assets/personOutlined.svg +1 -0
- package/src/assets/pricingIcon.svg +3 -0
- package/src/assets/rightChevronCircle.svg +1 -0
- package/src/assets/rightChevronOutlined.svg +1 -0
- package/src/assets/sarasFullLogo.svg +13 -0
- package/src/assets/sarasWhite.svg +1 -0
- package/src/assets/settingsOutlined.svg +1 -0
- package/src/assets/sourcesOutlined.svg +1 -0
- package/src/assets/tabDesktopArrowClockwiseOutlined.svg +1 -0
- package/src/assets/targetScanOutlined.svg +1 -0
- package/src/assets/timerOutlined.svg +5 -0
- package/src/assets/upwardTriangleFilled.svg +1 -0
- package/src/custom-theme.scss +37 -0
- package/src/favicon.ico +0 -0
- package/src/index.html +23 -0
- package/src/main.ts +6 -0
- package/src/stories/GettingStarted.mdx +233 -0
- package/src/stories/KitchenSink.stories.ts +109 -0
- package/src/stories/accordion.stories.ts +234 -0
- package/src/stories/avatar.stories.ts +45 -0
- package/src/stories/card-carousel.stories.ts +136 -0
- package/src/stories/card.stories.ts +242 -0
- package/src/stories/checkbox.stories.ts +238 -0
- package/src/stories/chips.stories.ts +61 -0
- package/src/stories/custom-button.stories.ts +89 -0
- package/src/stories/datepicker.stories.ts +78 -0
- package/src/stories/form-input.stories.ts +166 -0
- package/src/stories/gridCell.stories.ts +234 -0
- package/src/stories/header.stories.ts +61 -0
- package/src/stories/icon.stories.ts +65 -0
- package/src/stories/leftnav.stories.ts +67 -0
- package/src/stories/message-banner.stories.ts +116 -0
- package/src/stories/page-layout.stories.ts +200 -0
- package/src/stories/progress-bar.stories.ts +40 -0
- package/src/stories/radio-button.stories.ts +80 -0
- package/src/stories/scrolling-card.stories.ts +36 -0
- package/src/stories/selectInput.stories.ts +176 -0
- package/src/stories/stepper.stories.ts +92 -0
- package/src/stories/tabs.stories.ts +97 -0
- package/src/stories/toast.stories.ts +74 -0
- package/src/stories/tool-tip.stories.ts +45 -0
- package/{styles → src}/styles.css +27 -0
- package/src/svg.d.ts +1 -0
- package/tsconfig.app.json +14 -0
- package/tsconfig.json +42 -0
- package/tsconfig.spec.json +14 -0
- package/esm2022/interfaces/avatar-interface.mjs +0 -2
- package/esm2022/interfaces/button-interface.mjs +0 -10
- package/esm2022/interfaces/card-carousel-interface.mjs +0 -2
- package/esm2022/interfaces/chip-interface.mjs +0 -2
- package/esm2022/interfaces/grid-interface.mjs +0 -2
- package/esm2022/interfaces/guide-card-interface.mjs +0 -2
- package/esm2022/interfaces/icon-interface.mjs +0 -16
- package/esm2022/interfaces/message-banner.mjs +0 -2
- package/esm2022/interfaces/option-interface.mjs +0 -2
- package/esm2022/interfaces/select-interface.mjs +0 -2
- package/esm2022/interfaces/tab-interface.mjs +0 -2
- package/esm2022/interfaces/toast-interface.mjs +0 -2
- package/esm2022/lib/avatar/avatar.component.mjs +0 -56
- package/esm2022/lib/button/button.component.mjs +0 -100
- package/esm2022/lib/calendar-header/calendar-header.component.mjs +0 -168
- package/esm2022/lib/card/card-body/card-body.component.mjs +0 -11
- package/esm2022/lib/card/card-custom-header/card-custom-header.component.mjs +0 -11
- package/esm2022/lib/card/card-footer-actions/card-footer-actions.component.mjs +0 -11
- package/esm2022/lib/card/card-icon/card-icon.component.mjs +0 -11
- package/esm2022/lib/card/card-title-actions/card-title-actions.component.mjs +0 -11
- package/esm2022/lib/card/card.component.mjs +0 -97
- package/esm2022/lib/card/checkbox-card/checkbox-card.component.mjs +0 -41
- package/esm2022/lib/card/guide-card/guide-card.component.mjs +0 -19
- package/esm2022/lib/card-carousel/card-carousel.component.mjs +0 -87
- package/esm2022/lib/checkbox/checkbox.component.mjs +0 -38
- package/esm2022/lib/chips/chips.component.mjs +0 -62
- package/esm2022/lib/component-library.component.mjs +0 -19
- package/esm2022/lib/component-library.service.mjs +0 -14
- package/esm2022/lib/datepicker/datepicker.component.mjs +0 -40
- package/esm2022/lib/form-input/form-input.component.mjs +0 -219
- package/esm2022/lib/form-select/form-select.component.mjs +0 -77
- package/esm2022/lib/grid-cell/grid-cell.component.mjs +0 -84
- package/esm2022/lib/header/header.component.mjs +0 -37
- package/esm2022/lib/icon/icon.component.mjs +0 -73
- package/esm2022/lib/icon/icon.service.mjs +0 -28
- package/esm2022/lib/left-nav/left-nav.component.mjs +0 -146
- package/esm2022/lib/list/list.component.mjs +0 -23
- package/esm2022/lib/message-banner/message-banner.component.mjs +0 -43
- package/esm2022/lib/page-layout/page-layout.component.mjs +0 -21
- package/esm2022/lib/progress-bar/progress-bar.component.mjs +0 -29
- package/esm2022/lib/radio-button/radio-button.component.mjs +0 -33
- package/esm2022/lib/scrolling-cards/scrolling-cards.component.mjs +0 -59
- package/esm2022/lib/spinner/spinner.component.mjs +0 -22
- package/esm2022/lib/stepper/stepper.component.mjs +0 -64
- package/esm2022/lib/tabs/tabs.component.mjs +0 -38
- package/esm2022/lib/toast/toast.component.mjs +0 -100
- package/esm2022/lib/tool-tip/tool-tip.component.mjs +0 -41
- package/esm2022/public-api.mjs +0 -55
- package/esm2022/sarasanalytics-com-design-system.mjs +0 -5
- package/esm2022/utils/validators.mjs +0 -97
- package/fesm2022/sarasanalytics-com-design-system.mjs +0 -1891
- package/fesm2022/sarasanalytics-com-design-system.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/interfaces/avatar-interface.d.ts +0 -6
- package/interfaces/button-interface.d.ts +0 -22
- package/interfaces/chip-interface.d.ts +0 -11
- package/interfaces/grid-interface.d.ts +0 -24
- package/interfaces/icon-interface.d.ts +0 -4
- package/interfaces/select-interface.d.ts +0 -20
- package/interfaces/tab-interface.d.ts +0 -6
- package/lib/avatar/avatar.component.d.ts +0 -18
- package/lib/button/button.component.d.ts +0 -32
- package/lib/calendar-header/calendar-header.component.d.ts +0 -31
- package/lib/card/card-body/card-body.component.d.ts +0 -5
- package/lib/card/card-custom-header/card-custom-header.component.d.ts +0 -5
- package/lib/card/card-footer-actions/card-footer-actions.component.d.ts +0 -5
- package/lib/card/card-icon/card-icon.component.d.ts +0 -5
- package/lib/card/card-title-actions/card-title-actions.component.d.ts +0 -5
- package/lib/card/card.component.d.ts +0 -28
- package/lib/card/checkbox-card/checkbox-card.component.d.ts +0 -12
- package/lib/card/guide-card/guide-card.component.d.ts +0 -8
- package/lib/card-carousel/card-carousel.component.d.ts +0 -27
- package/lib/checkbox/checkbox.component.d.ts +0 -9
- package/lib/chips/chips.component.d.ts +0 -22
- package/lib/component-library.component.d.ts +0 -5
- package/lib/component-library.service.d.ts +0 -6
- package/lib/datepicker/datepicker.component.d.ts +0 -9
- package/lib/form-input/form-input.component.d.ts +0 -67
- package/lib/form-select/form-select.component.d.ts +0 -18
- package/lib/grid-cell/grid-cell.component.d.ts +0 -20
- package/lib/header/header.component.d.ts +0 -14
- package/lib/icon/icon.component.d.ts +0 -24
- package/lib/icon/icon.service.d.ts +0 -12
- package/lib/left-nav/left-nav.component.d.ts +0 -47
- package/lib/list/list.component.d.ts +0 -10
- package/lib/message-banner/message-banner.component.d.ts +0 -19
- package/lib/page-layout/page-layout.component.d.ts +0 -8
- package/lib/progress-bar/progress-bar.component.d.ts +0 -13
- package/lib/radio-button/radio-button.component.d.ts +0 -12
- package/lib/scrolling-cards/scrolling-cards.component.d.ts +0 -36
- package/lib/spinner/spinner.component.d.ts +0 -7
- package/lib/stepper/stepper.component.d.ts +0 -17
- package/lib/tabs/tabs.component.d.ts +0 -15
- package/lib/toast/toast.component.d.ts +0 -33
- package/lib/tool-tip/tool-tip.component.d.ts +0 -15
- package/utils/validators.d.ts +0 -6
- /package/{interfaces/guide-card-interface.d.ts → projects/component-library/src/interfaces/guide-card-interface.ts} +0 -0
- /package/{interfaces/message-banner.d.ts → projects/component-library/src/interfaces/message-banner.ts} +0 -0
- /package/{interfaces/option-interface.d.ts → projects/component-library/src/interfaces/option-interface.ts} +0 -0
package/package.json
CHANGED
|
@@ -1,25 +1,80 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sarasanalytics-com/design-system",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
"
|
|
3
|
+
"version": "0.0.43",
|
|
4
|
+
"scripts": {
|
|
5
|
+
"ng": "ng",
|
|
6
|
+
"start": "ng serve",
|
|
7
|
+
"build": "ng build",
|
|
8
|
+
"watch": "ng build --watch --configuration development",
|
|
9
|
+
"test": "ng test",
|
|
10
|
+
"start-storybook": "ng run sadlc:storybook",
|
|
11
|
+
"build-storybook": "ng run sadlc:build-storybook",
|
|
12
|
+
"chromatic": "npx chromatic --project-token chpt_c15abbd7dcf38ca",
|
|
13
|
+
"generate-public-api": "node generate-public-api.js",
|
|
14
|
+
"build-component-library": "ng build component-library && npm run copy-styles",
|
|
15
|
+
"lint": "ng lint",
|
|
16
|
+
"copy-styles": "copyfiles -u 1 src/styles.css dist/component-library/styles"
|
|
7
17
|
},
|
|
18
|
+
"private": false,
|
|
8
19
|
"dependencies": {
|
|
9
|
-
"
|
|
20
|
+
"@angular/animations": "^17.1.0",
|
|
21
|
+
"@angular/cdk": "^17.3.6",
|
|
22
|
+
"@angular/common": "^17.1.0",
|
|
23
|
+
"@angular/compiler": "^17.1.0",
|
|
24
|
+
"@angular/core": "^17.1.0",
|
|
25
|
+
"@angular/forms": "^17.1.0",
|
|
26
|
+
"@angular/material": "^17.3.6",
|
|
27
|
+
"@angular/platform-browser": "^17.1.0",
|
|
28
|
+
"@angular/platform-browser-dynamic": "^17.1.0",
|
|
29
|
+
"@angular/router": "^17.1.0",
|
|
30
|
+
"@fontsource/material-icons": "^5.0.18",
|
|
31
|
+
"@fontsource/roboto": "^5.0.13",
|
|
32
|
+
"@material-ui/core": "^4.12.4",
|
|
33
|
+
"@mui/icons-material": "^5.15.17",
|
|
34
|
+
"@mui/material": "^5.15.17",
|
|
35
|
+
"@ng-select/ng-select": "^12.0.7",
|
|
36
|
+
"@ngx-formly/core": "^6.3.0",
|
|
37
|
+
"ag-grid-angular": "^31.2.0",
|
|
38
|
+
"ag-grid-community": "^31.2.0",
|
|
39
|
+
"rxjs": "~7.8.0",
|
|
40
|
+
"tslib": "^2.3.0",
|
|
41
|
+
"zone.js": "~0.14.3"
|
|
10
42
|
},
|
|
11
|
-
"
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
"
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"@angular-devkit/build-angular": "^17.1.3",
|
|
45
|
+
"@angular-eslint/builder": "17.3.0",
|
|
46
|
+
"@angular-eslint/eslint-plugin": "17.3.0",
|
|
47
|
+
"@angular-eslint/eslint-plugin-template": "17.3.0",
|
|
48
|
+
"@angular-eslint/schematics": "17.3.0",
|
|
49
|
+
"@angular-eslint/template-parser": "17.3.0",
|
|
50
|
+
"@angular/cli": "^17.1.3",
|
|
51
|
+
"@angular/compiler-cli": "^17.1.0",
|
|
52
|
+
"@chromatic-com/storybook": "^1.2.18",
|
|
53
|
+
"@compodoc/compodoc": "^1.1.23",
|
|
54
|
+
"@mdx-js/react": "^3.0.1",
|
|
55
|
+
"@storybook/addon-actions": "^8.1.4",
|
|
56
|
+
"@storybook/addon-docs": "^8.1.3",
|
|
57
|
+
"@storybook/addon-essentials": "^8.0.0",
|
|
58
|
+
"@storybook/addon-interactions": "^8.0.0",
|
|
59
|
+
"@storybook/addon-links": "^8.0.0",
|
|
60
|
+
"@storybook/angular": "^8.0.0",
|
|
61
|
+
"@storybook/blocks": "^8.0.0",
|
|
62
|
+
"@storybook/test": "^8.0.0",
|
|
63
|
+
"@types/jasmine": "~5.1.0",
|
|
64
|
+
"@typescript-eslint/eslint-plugin": "^7.2.0",
|
|
65
|
+
"@typescript-eslint/parser": "^7.2.0",
|
|
66
|
+
"chromatic": "^11.0.8",
|
|
67
|
+
"copyfiles": "^2.4.1",
|
|
68
|
+
"eslint": "^8.57.0",
|
|
69
|
+
"eslint-plugin-angular": "^4.1.0",
|
|
70
|
+
"jasmine-core": "~5.1.0",
|
|
71
|
+
"karma": "~6.4.0",
|
|
72
|
+
"karma-chrome-launcher": "~3.2.0",
|
|
73
|
+
"karma-coverage": "~2.2.0",
|
|
74
|
+
"karma-jasmine": "~5.1.0",
|
|
75
|
+
"karma-jasmine-html-reporter": "~2.1.0",
|
|
76
|
+
"ng-packagr": "^17.2.0",
|
|
77
|
+
"storybook": "^8.0.0",
|
|
78
|
+
"typescript": "~5.3.2"
|
|
24
79
|
}
|
|
25
80
|
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# TestLibrary
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 17.2.0.
|
|
4
|
+
|
|
5
|
+
## Code scaffolding
|
|
6
|
+
|
|
7
|
+
Run `ng generate component component-name --project component-library` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project component-library`.
|
|
8
|
+
> Note: Don't forget to add `--project component-library` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
+
|
|
10
|
+
## Build
|
|
11
|
+
|
|
12
|
+
Run `ng build component-library` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
+
|
|
14
|
+
## Publishing
|
|
15
|
+
|
|
16
|
+
After building your library with `ng build component-library`, go to the dist folder `cd dist/component-library` and run `npm publish`.
|
|
17
|
+
|
|
18
|
+
## Running unit tests
|
|
19
|
+
|
|
20
|
+
Run `ng test component-library` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
+
|
|
22
|
+
## Further help
|
|
23
|
+
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export interface ButtonInterface {
|
|
2
|
+
id: string | number,
|
|
3
|
+
text: string,
|
|
4
|
+
type: string,
|
|
5
|
+
size: ButtonSize,
|
|
6
|
+
state: string,
|
|
7
|
+
imagePath?: string,
|
|
8
|
+
iconPosition?: ButtonIconPosition,
|
|
9
|
+
href?: string,
|
|
10
|
+
hrefTarget?: string,
|
|
11
|
+
isSubmit?: boolean,
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export const buttonSizes = [
|
|
15
|
+
'small', 'medium', 'large'
|
|
16
|
+
] as const;
|
|
17
|
+
|
|
18
|
+
type PredefinedButtonSizes = typeof buttonSizes[number];
|
|
19
|
+
|
|
20
|
+
export type ButtonSize = PredefinedButtonSizes | string;
|
|
21
|
+
|
|
22
|
+
export const buttonPosition = [
|
|
23
|
+
'left', 'right', 'both'
|
|
24
|
+
] as const;
|
|
25
|
+
|
|
26
|
+
type PredefinedButtonPositions = typeof buttonPosition[number]
|
|
27
|
+
|
|
28
|
+
export type ButtonIconPosition = PredefinedButtonPositions | string;
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
export const buttonType = [
|
|
32
|
+
'primary', 'outline', 'transparent'
|
|
33
|
+
] as const;
|
|
34
|
+
|
|
35
|
+
type PredefinedButtonType = typeof buttonType[number]
|
|
36
|
+
|
|
37
|
+
export type ButtonType = PredefinedButtonType | string;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ButtonInterface } from "./button-interface";
|
|
2
|
+
import { ChipInterface } from "./chip-interface";
|
|
3
|
+
import { AvatarInterface } from "./avatar-interface";
|
|
4
|
+
export interface GridInterface {
|
|
5
|
+
cellType: string,
|
|
6
|
+
viewText: boolean,
|
|
7
|
+
viewLeadingIcon: boolean,
|
|
8
|
+
viewTrailingIcon: boolean,
|
|
9
|
+
viewButton: boolean,
|
|
10
|
+
viewChip: boolean,
|
|
11
|
+
viewAvatar: boolean,
|
|
12
|
+
iconPath?: string,
|
|
13
|
+
chipConfig?: ChipInterface[],
|
|
14
|
+
buttonConfig?: ButtonInterface,
|
|
15
|
+
avatarConfig?: AvatarInterface,
|
|
16
|
+
text?: string | number,
|
|
17
|
+
subText?: string | number,
|
|
18
|
+
interactiveLink?: string,
|
|
19
|
+
interactiveLinkTarget?: string,
|
|
20
|
+
chipClicked?(evt: any): any,
|
|
21
|
+
linkClicked?(evt: any): any,
|
|
22
|
+
buttonClicked?(evt: any): any,
|
|
23
|
+
avatarClicked?(evt: any): any
|
|
24
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export const iconNames = [
|
|
2
|
+
'analysis', 'arrowRightOutlined', 'avatar',
|
|
3
|
+
'businessStatsFilled', 'chatHelpOutlined', 'checkCircleFilled',
|
|
4
|
+
'checkCircleOutlined', 'checkOutlined', 'circleFilled',
|
|
5
|
+
'closeBlueOutlined', 'closeCircleFilled', 'closeOutlined',
|
|
6
|
+
'doubleDownOutlined', 'eyeFilled',
|
|
7
|
+
'eyeOutlined', 'formDetailsOutlined', 'gridViewOutlined',
|
|
8
|
+
'homeOutlined', 'infoCircleOutlined', 'infoTriangleFilled',
|
|
9
|
+
'infoTriangleOutlined', 'innosupps', 'locationOutlined',
|
|
10
|
+
'mailOutlined', 'multiConnectionHub', 'personOutlined',
|
|
11
|
+
'rightChevronOutlined', 'sarasWhite', 'settingsOutlined',
|
|
12
|
+
'sourcesOutlined', 'targetScanOutlined', 'upwardTriangleFilled',
|
|
13
|
+
'headsetOutlined', 'sarasFullLogo', 'leftChevronCircle', 'rightChevronCircle', 'errorCircleOutlined',
|
|
14
|
+
'errorCrossOutlined', 'downChevronOutlined'
|
|
15
|
+
] as const;
|
|
16
|
+
|
|
17
|
+
// Define a type for the predefined icon names
|
|
18
|
+
type PredefinedIconName = typeof iconNames[number];
|
|
19
|
+
|
|
20
|
+
// Define IconName as a union of PredefinedIconName and string
|
|
21
|
+
export type IconName = PredefinedIconName | string;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { FormlyFieldProps } from "@ngx-formly/core"
|
|
2
|
+
interface SelectSubInterface {
|
|
3
|
+
label: string,
|
|
4
|
+
supportText: string,
|
|
5
|
+
dropIcon: string,
|
|
6
|
+
dropIconPosition: string,
|
|
7
|
+
multiple: boolean,
|
|
8
|
+
iconPath: string,
|
|
9
|
+
type: string,
|
|
10
|
+
text?: string,
|
|
11
|
+
state: string,
|
|
12
|
+
filling: string,
|
|
13
|
+
iconPosition: string,
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface SelectInterface extends FormlyFieldProps {
|
|
17
|
+
options: any,
|
|
18
|
+
disabled: boolean,
|
|
19
|
+
params: SelectSubInterface
|
|
20
|
+
}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
.accordion-cards-container {
|
|
2
|
+
display: grid;
|
|
3
|
+
grid-template-columns: repeat(auto-fill, 37.875rem);
|
|
4
|
+
gap: 1.75rem 2rem;
|
|
5
|
+
max-width: -webkit-fill-available;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.advancedAccordion .accordion-cards-container {
|
|
9
|
+
display: grid;
|
|
10
|
+
grid-template-columns: repeat(auto-fill, 37.6rem);
|
|
11
|
+
gap: 1.75rem 2rem;
|
|
12
|
+
max-width: -webkit-fill-available;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.accordion-container .panel-title {
|
|
16
|
+
color: var(--text-highemphasis, #1C1B20);
|
|
17
|
+
font-family: var(--font-family, Roboto);
|
|
18
|
+
font-size: var(--small-16px);
|
|
19
|
+
font-style: normal;
|
|
20
|
+
font-weight: 400;
|
|
21
|
+
line-height: var(--medium-24px);
|
|
22
|
+
letter-spacing: 0.5px;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.panel-container {
|
|
26
|
+
display: flex;
|
|
27
|
+
gap: var(--small-8px, 8px);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.tooltip-icon {
|
|
31
|
+
display: flex;
|
|
32
|
+
align-items: center;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
::ng-deep .accordion-container.mat-accordion>.mat-expansion-panel-spacing:last-child,
|
|
36
|
+
.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing {
|
|
37
|
+
width: -webkit-fill-available;
|
|
38
|
+
display: flex;
|
|
39
|
+
flex-direction: column;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
::ng-deep .accordion-container .mat-expansion-panel-body {
|
|
43
|
+
display: flex;
|
|
44
|
+
flex-direction: column;
|
|
45
|
+
gap: var(--medium-20px);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
::ng-deep .accordion-container .mat-expansion-panel-header {
|
|
49
|
+
display: flex;
|
|
50
|
+
height: var(--large-56px, 56px);
|
|
51
|
+
flex-direction: column;
|
|
52
|
+
align-items: flex-start;
|
|
53
|
+
gap: var(--small-16px);
|
|
54
|
+
flex-shrink: 0;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
::ng-deep .card-selected .sa-card-accordion-wrapper {
|
|
58
|
+
border-radius: var(--small-4px, 4px);
|
|
59
|
+
border: 1px solid var(--primary-500);
|
|
60
|
+
background: var(--structural-white);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.accordion-container .custom-divider {
|
|
64
|
+
width: 100%;
|
|
65
|
+
height: 0.063rem;
|
|
66
|
+
background-color: var(--grey-100);
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.accordion-container .chip {
|
|
70
|
+
background-color: red;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
::ng-deep.accordion-container .panel-container .small {
|
|
74
|
+
--chip-height: var(--medium-24px);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.advancedAccordion.mat-expansion-panel:not([class*=mat-elevation-z]) {
|
|
78
|
+
box-shadow: none;
|
|
79
|
+
border: none;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
::ng-deep.accordion-container .advancedAccordion .mat-expansion-panel-header {
|
|
83
|
+
padding: var(--small-16px) var(--small-16px) var(--small-16px) var(--small-16px);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.advancedAccordion .disclaimer-container {
|
|
87
|
+
display: flex;
|
|
88
|
+
gap: var(--small-8px);
|
|
89
|
+
height: 2.875rem;
|
|
90
|
+
padding: var(--small-12px) var(--small-16px);
|
|
91
|
+
align-items: center;
|
|
92
|
+
border-radius: var(--small-8px);
|
|
93
|
+
border: 1px solid var(--grey-100);
|
|
94
|
+
background: var(--structural-neutral3);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.advancedAccordion .disclaimer-style {
|
|
98
|
+
color: var(--text-mediumemphasis);
|
|
99
|
+
|
|
100
|
+
/* Roboto/Body/Medium */
|
|
101
|
+
font-family: var(--font);
|
|
102
|
+
font-size: var(--small-14px);
|
|
103
|
+
font-style: normal;
|
|
104
|
+
font-weight: 400;
|
|
105
|
+
line-height: var(--medium-20px);
|
|
106
|
+
letter-spacing: 0.25px;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.accordion-advanced-container {
|
|
110
|
+
display: flex;
|
|
111
|
+
flex-direction: column;
|
|
112
|
+
gap: var(--small-16px);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.d-flex {
|
|
116
|
+
display: flex;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
::ng-deep.disabled-card .sa-card-accordion-wrapper {
|
|
120
|
+
cursor: auto;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.advancedAccordion.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover {
|
|
124
|
+
background: none;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.advanced-title {
|
|
128
|
+
color: var(--primary-500);
|
|
129
|
+
font-family: var(--font);
|
|
130
|
+
font-size: var(--small-14px);
|
|
131
|
+
font-style: normal;
|
|
132
|
+
font-weight: 400;
|
|
133
|
+
line-height: 1.375rem;
|
|
134
|
+
letter-spacing: 0.25px;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.align-center {
|
|
138
|
+
align-items: center;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
::ng-deep.advancedAccordion .mat-expansion-panel-header-title {
|
|
142
|
+
color: var(--primary-500);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
.advancedAccordion .panel-container .material-icons {
|
|
146
|
+
font-size: 1.375rem;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
.disabled-icon {
|
|
150
|
+
padding: 0.563rem var(--small-8px) var(--small-8px) var(--small-8px);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
.advancedAccordion .chip-container {
|
|
154
|
+
margin-left: auto;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
.accordions-container {
|
|
158
|
+
display: flex;
|
|
159
|
+
flex-direction: column;
|
|
160
|
+
gap: var(--medium-24px);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
::ng-deep .accordion-container .mat-expansion-panel:not([class*=mat-elevation-z]) {
|
|
164
|
+
border: 1px solid var(--grey-100);
|
|
165
|
+
background: var(--structural-white);
|
|
166
|
+
box-shadow: none;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
::ng-deep .accordion-container.mat-accordion .mat-expansion-panel:first-of-type {
|
|
170
|
+
border-radius: var(--small-8px);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
/* hiding hovering background */
|
|
174
|
+
::ng-deep .accordion-container .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover {
|
|
175
|
+
background: none;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
::ng-deep .advancedAccordion .mat-expansion-panel-body {
|
|
179
|
+
padding-left: 0;
|
|
180
|
+
padding-right: 0;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
.disclaimer-buttons-container {
|
|
184
|
+
display: flex;
|
|
185
|
+
margin-left: auto;
|
|
186
|
+
align-items: center;
|
|
187
|
+
gap: var(--small-12px);
|
|
188
|
+
}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
<mat-accordion class="accordion-container">
|
|
2
|
+
|
|
3
|
+
<mat-expansion-panel hideToggle [expanded]="props?.['accordionExpanded'] || 'false'" (opened)="onAccordionOpened()"
|
|
4
|
+
(closed)="onAccordionClosed()">
|
|
5
|
+
<mat-expansion-panel-header>
|
|
6
|
+
<mat-panel-title>
|
|
7
|
+
<div class="panel-container">
|
|
8
|
+
hey {{props?.['accordionExpanded']}}
|
|
9
|
+
@if(props?.['accordionExpanded']){
|
|
10
|
+
<span class="d-flex align-center">
|
|
11
|
+
<sa-icon [icon]="props?.['expandedIcon']" class="d-flex" size="16"></sa-icon>
|
|
12
|
+
</span>
|
|
13
|
+
}@else{
|
|
14
|
+
<span class="d-flex align-center">
|
|
15
|
+
<sa-icon [icon]="props?.['collapsedIcon']" class="d-flex" size="20"></sa-icon>
|
|
16
|
+
</span>
|
|
17
|
+
}
|
|
18
|
+
<span class="panel-title">{{props?.['panelTitle']}} hey {{props?.['accordionExpanded']}}</span>
|
|
19
|
+
<div>
|
|
20
|
+
<!-- <sa-chip *ngIf="props?.['titleChip']" [type]="props['titleChip']?.['type']"
|
|
21
|
+
[state]="props['titleChip']?.['state']" [filling]="props['titleChip']?.['filling']"
|
|
22
|
+
[text]="getChipText()"></sa-chip> -->
|
|
23
|
+
</div>
|
|
24
|
+
</div>
|
|
25
|
+
</mat-panel-title>
|
|
26
|
+
</mat-expansion-panel-header>
|
|
27
|
+
<div class="custom-divider"></div>
|
|
28
|
+
<div class="accordion-cards-container">
|
|
29
|
+
<div *ngFor="let subFeature of props?.['featuresList']">
|
|
30
|
+
<sa-card [column]="false" [showCardHeader]="true" [showCardBody]="false"
|
|
31
|
+
[width]="props?.['featureCardWidth'] || '632px'" [showHeaderBodyDivider]="false"
|
|
32
|
+
[customWrapperClass]="props?.['customWrapperClass']" (click)="onCardClick(subFeature)"
|
|
33
|
+
class="{{subFeature?.['disabled'] && subFeature?.['isSelected'] ? 'card-selected' : ''}}{{subFeature?.['disabled'] ? 'disabled-card': ''}}">
|
|
34
|
+
<sa-card-title-header>
|
|
35
|
+
<div class="sa-card-accordion-title-container">
|
|
36
|
+
@if(subFeature?.['disabled']){
|
|
37
|
+
<span class="disabled-icon">
|
|
38
|
+
<sa-icon icon="disabledCheckboxFilled"
|
|
39
|
+
customClass="auto-dimensions disabled-checkbox-icon" class="d-flex"></sa-icon>
|
|
40
|
+
</span>
|
|
41
|
+
}@else{
|
|
42
|
+
<mat-checkbox class="checkbox-style" [(ngModel)]="subFeature.isSelected"
|
|
43
|
+
(click)="onCheckboxClick(subFeature)"></mat-checkbox>
|
|
44
|
+
}
|
|
45
|
+
<div class="sa-card-title-icon-container">
|
|
46
|
+
<div class="sa-card-custom-title">
|
|
47
|
+
{{subFeature?.title}}
|
|
48
|
+
</div>
|
|
49
|
+
@if(subFeature?.tooltip){
|
|
50
|
+
<span class="tooltip-container">
|
|
51
|
+
<sa-icon [icon]="props?.['tooltipIcon'] || 'infoCircleOutlined'"
|
|
52
|
+
customClass="accordion-info-icon" [matTooltip]="subFeature?.tooltip"
|
|
53
|
+
matTooltipClass="custom-tooltip" class="tooltip-icon"></sa-icon>
|
|
54
|
+
</span>
|
|
55
|
+
}
|
|
56
|
+
</div>
|
|
57
|
+
</div>
|
|
58
|
+
</sa-card-title-header>
|
|
59
|
+
</sa-card>
|
|
60
|
+
</div>
|
|
61
|
+
</div>
|
|
62
|
+
<!-- Advanced Features accordion -->
|
|
63
|
+
<div *ngIf="props?.['advancedFeatures'] && props['advancedFeatures'].length > 0"
|
|
64
|
+
class="advanced-features-section">
|
|
65
|
+
<mat-expansion-panel hideToggle [expanded]="props?.['advancedFeaturesExpanded'] || 'false'"
|
|
66
|
+
(opened)="onAdvancedFeaturesOpened()" (closed)="onAdvancedFeaturesClosed()" class="advancedAccordion">
|
|
67
|
+
<mat-expansion-panel-header>
|
|
68
|
+
<mat-panel-title>
|
|
69
|
+
<div class="panel-container">
|
|
70
|
+
@if(!props?.['advancedFeaturesExpanded']){
|
|
71
|
+
<span class="d-flex align-center">
|
|
72
|
+
<sa-icon icon="sourcesOutlined" class="d-flex" customClass="colored-icon"
|
|
73
|
+
size="16"></sa-icon>
|
|
74
|
+
</span>
|
|
75
|
+
}@else{
|
|
76
|
+
<span class="material-icons">
|
|
77
|
+
expand_more
|
|
78
|
+
</span>
|
|
79
|
+
}
|
|
80
|
+
<span class="advanced-title">{{ props?.['advancedFeaturesExpanded'] ?
|
|
81
|
+
props?.['advancedFeatureToggleTitle'] :
|
|
82
|
+
props?.['advancedFeatureTitle'] }}</span>
|
|
83
|
+
</div>
|
|
84
|
+
</mat-panel-title>
|
|
85
|
+
</mat-expansion-panel-header>
|
|
86
|
+
<div class="accordion-advanced-container">
|
|
87
|
+
<div class="disclaimer-container">
|
|
88
|
+
<span class="tooltip-container">
|
|
89
|
+
<sa-icon icon="infoCircleOutlined" customClass="accordion-info-icon"
|
|
90
|
+
class="tooltip-icon"></sa-icon>
|
|
91
|
+
</span>
|
|
92
|
+
<span class="disclaimer-style">{{props?.['advancedFeatureDisclaimer']}}</span>
|
|
93
|
+
@if(props?.['advancedFeatureDisclaimerButtons']) {
|
|
94
|
+
<div class="disclaimer-buttons-container">
|
|
95
|
+
<ng-container *ngFor="let button of props['advancedFeatureDisclaimerButtons']">
|
|
96
|
+
<sa-button [text]="button.text" [type]="button.type" [size]="button.size"
|
|
97
|
+
[state]="button.state" [iconPosition]="button.iconPosition" [icon]="button.icon"
|
|
98
|
+
[buttonIconSize]="button.buttonIconSize"
|
|
99
|
+
(click)="actionHandler(button, $event)"></sa-button>
|
|
100
|
+
</ng-container>
|
|
101
|
+
</div>
|
|
102
|
+
}
|
|
103
|
+
</div>
|
|
104
|
+
<div class="accordion-cards-container">
|
|
105
|
+
<div *ngFor="let subFeature of props?.['advancedFeatures']">
|
|
106
|
+
<sa-card [column]="false" [showCardHeader]="true" [showCardBody]="false"
|
|
107
|
+
[width]="props?.['advancedFeatureCardWidth'] || '632px'" [showHeaderBodyDivider]="false"
|
|
108
|
+
[customWrapperClass]="props?.['customWrapperClass']" (click)="onCardClick(subFeature)"
|
|
109
|
+
class="{{!subFeature?.['disabled'] && subFeature?.['isSelected'] ? 'card-selected' : ''}}{{subFeature?.['disabled'] ? 'disabled-card': ''}}">
|
|
110
|
+
<sa-card-title-header>
|
|
111
|
+
<div class="sa-card-accordion-title-container">
|
|
112
|
+
@if(subFeature?.['disabled']){
|
|
113
|
+
<span class="disabled-icon">
|
|
114
|
+
<sa-icon icon="disabledCheckboxFilled"
|
|
115
|
+
customClass="auto-dimensions disabled-checkbox-icon"
|
|
116
|
+
class="d-flex"></sa-icon>
|
|
117
|
+
</span>
|
|
118
|
+
}@else{
|
|
119
|
+
<mat-checkbox class="checkbox-style" [(ngModel)]="subFeature.isSelected"
|
|
120
|
+
(click)="onCheckboxClick(subFeature)"></mat-checkbox>
|
|
121
|
+
}
|
|
122
|
+
<div class="sa-card-title-icon-container">
|
|
123
|
+
<div class="sa-card-custom-title">
|
|
124
|
+
{{subFeature?.title}}
|
|
125
|
+
</div>
|
|
126
|
+
@if(subFeature?.tooltip){
|
|
127
|
+
<span class="tooltip-container">
|
|
128
|
+
<sa-icon [icon]="props?.['advancedTooltipIcon'] || 'infoCircleOutlined'"
|
|
129
|
+
customClass="accordion-info-icon" [matTooltip]="subFeature?.tooltip"
|
|
130
|
+
matTooltipClass="custom-tooltip" class="tooltip-icon"></sa-icon>
|
|
131
|
+
</span>
|
|
132
|
+
}
|
|
133
|
+
</div>
|
|
134
|
+
@if(subFeature?.featureChip){
|
|
135
|
+
<div class="chip-container">
|
|
136
|
+
<sa-chip [type]="subFeature.featureChip?.['type']"
|
|
137
|
+
[state]="subFeature.featureChip?.['state']"
|
|
138
|
+
[filling]="subFeature.featureChip?.['filling']"
|
|
139
|
+
[text]="subFeature.featureChip?.['label']"></sa-chip>
|
|
140
|
+
</div>
|
|
141
|
+
}
|
|
142
|
+
</div>
|
|
143
|
+
</sa-card-title-header>
|
|
144
|
+
</sa-card>
|
|
145
|
+
</div>
|
|
146
|
+
</div>
|
|
147
|
+
</div>
|
|
148
|
+
</mat-expansion-panel>
|
|
149
|
+
</div>
|
|
150
|
+
</mat-expansion-panel>
|
|
151
|
+
</mat-accordion>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|
2
|
+
|
|
3
|
+
import { AccordionComponent } from './accordion.component';
|
|
4
|
+
|
|
5
|
+
describe('AccordionComponent', () => {
|
|
6
|
+
let component: AccordionComponent;
|
|
7
|
+
let fixture: ComponentFixture<AccordionComponent>;
|
|
8
|
+
|
|
9
|
+
beforeEach(async () => {
|
|
10
|
+
await TestBed.configureTestingModule({
|
|
11
|
+
imports: [AccordionComponent]
|
|
12
|
+
})
|
|
13
|
+
.compileComponents();
|
|
14
|
+
|
|
15
|
+
fixture = TestBed.createComponent(AccordionComponent);
|
|
16
|
+
component = fixture.componentInstance;
|
|
17
|
+
fixture.detectChanges();
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
it('should create', () => {
|
|
21
|
+
expect(component).toBeTruthy();
|
|
22
|
+
});
|
|
23
|
+
});
|