@propelinc/citrus-ui 0.6.0 → 1.0.1
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/README.md +54 -60
- package/dist/colors/colors.d.ts +31 -0
- package/dist/colors/theme.d.ts +2 -11
- package/dist/colors/util-classes.d.ts +11 -0
- package/dist/components/CAccordion.vue.d.ts +21 -0
- package/dist/components/CAccordionItem.vue.d.ts +41 -0
- package/dist/components/CAppBar.vue.d.ts +156 -0
- package/dist/components/CBadge.vue.d.ts +52 -0
- package/dist/components/CBottomSheet.vue.d.ts +226 -0
- package/dist/components/CButton/CButton.vue.d.ts +231 -0
- package/dist/components/CButton/types.d.ts +5 -0
- package/dist/components/CButtonStack.vue.d.ts +24 -0
- package/dist/components/CCard.vue.d.ts +107 -0
- package/dist/components/CCardFooter.vue.d.ts +26 -0
- package/dist/components/CCardHeader.vue.d.ts +3 -0
- package/dist/components/CCardSection.vue.d.ts +17 -0
- package/dist/components/CCheckbox.vue.d.ts +145 -0
- package/dist/components/CCol.vue.d.ts +21 -0
- package/dist/components/CDivider.vue.d.ts +17 -0
- package/dist/components/CDobField.vue.d.ts +2109 -0
- package/dist/components/CDobSelect.vue.d.ts +398 -0
- package/dist/components/CEmailField.vue.d.ts +699 -0
- package/dist/components/CExpandTransition.vue.d.ts +19 -0
- package/dist/components/CFadeTransition.vue.d.ts +3 -0
- package/dist/components/CFileInput.vue.d.ts +98 -0
- package/dist/components/CFixedPageFooter.vue.d.ts +106 -0
- package/dist/components/CForm.vue.d.ts +29 -0
- package/dist/components/CFormFieldCounter.vue.d.ts +42 -0
- package/dist/components/CIconButton.vue.d.ts +390 -0
- package/dist/components/CLabel.vue.d.ts +32 -0
- package/dist/components/CListItem.vue.d.ts +208 -0
- package/dist/components/CListItemContent.vue.d.ts +27 -0
- package/dist/components/CListItemIcon.vue.d.ts +54 -0
- package/dist/components/CLoader.vue.d.ts +73 -0
- package/dist/components/CLogo.vue.d.ts +19 -0
- package/dist/components/CMaskedTextField.vue.d.ts +2012 -0
- package/dist/components/CMenu.vue.d.ts +6 -0
- package/dist/components/CMenuItem.vue.d.ts +170 -0
- package/dist/components/CMenuLabel.vue.d.ts +3 -0
- package/dist/components/CModal.vue.d.ts +206 -0
- package/dist/components/CModalLoading.vue.d.ts +230 -0
- package/dist/components/CNotification.vue.d.ts +589 -0
- package/dist/components/CPhoneField.vue.d.ts +2088 -0
- package/dist/components/CPill.vue.d.ts +42 -0
- package/dist/components/CPillGroup.vue.d.ts +70 -0
- package/dist/components/CPopup.vue.d.ts +21 -0
- package/dist/components/CProgressLinear.vue.d.ts +61 -0
- package/dist/components/CProgressRing.vue.d.ts +103 -0
- package/dist/components/CRadio.vue.d.ts +73 -0
- package/dist/components/CRadioGroup.vue.d.ts +123 -0
- package/dist/components/CRebrand.vue.d.ts +28 -0
- package/dist/components/CRow.vue.d.ts +67 -0
- package/dist/components/CSafeArea.vue.d.ts +18 -0
- package/dist/components/CSectionHeader.vue.d.ts +28 -0
- package/dist/components/CSelect.vue.d.ts +293 -0
- package/dist/components/CSkeleton.vue.d.ts +3 -0
- package/dist/components/CSkeletonLoaderCard.vue.d.ts +21 -0
- package/dist/components/CSkeletonLoaderCircle.vue.d.ts +5 -0
- package/dist/components/CSkeletonLoaderText.vue.d.ts +44 -0
- package/dist/components/CSlideFadeTransition.vue.d.ts +58 -0
- package/dist/components/CSplitInput.vue.d.ts +2131 -0
- package/dist/components/CSquaredIcon.vue.d.ts +47 -0
- package/dist/components/CSsnField.vue.d.ts +2083 -0
- package/dist/components/CStatusDot.vue.d.ts +27 -0
- package/dist/components/CSwitch.vue.d.ts +54 -0
- package/dist/components/CSwitchListItem.vue.d.ts +392 -0
- package/dist/components/CTextArea.vue.d.ts +240 -0
- package/dist/components/CTextField.vue.d.ts +647 -0
- package/dist/components/CTextLink.vue.d.ts +55 -0
- package/dist/components/CThirdPartyLogo.vue.d.ts +128 -0
- package/dist/components/CTimeago.vue.d.ts +12 -0
- package/dist/components/CToast.vue.d.ts +458 -0
- package/dist/components/CToastsList.vue.d.ts +430 -0
- package/dist/components/CValidationMessage.vue.d.ts +45 -0
- package/dist/components/CZipcodeField.vue.d.ts +2080 -0
- package/dist/components/index.d.ts +66 -25
- package/dist/components/internal/CCloseButton.vue.d.ts +14 -0
- package/dist/composables/accessibility.d.ts +1 -0
- package/dist/composables/animation.d.ts +12 -0
- package/dist/composables/binding.d.ts +19 -0
- package/dist/composables/colors.d.ts +13 -0
- package/dist/composables/elements.d.ts +3 -0
- package/dist/composables/fields.d.ts +9 -0
- package/dist/composables/gestures.d.ts +53 -0
- package/dist/composables/i18n.d.ts +3 -0
- package/dist/composables/id.d.ts +11 -0
- package/dist/composables/input-mask.d.ts +18 -0
- package/dist/composables/router.d.ts +30 -0
- package/dist/composables/slots.d.ts +2 -0
- package/dist/composables/toast.d.ts +21 -0
- package/dist/composables/validations.d.ts +77 -0
- package/dist/index.css +1 -0
- package/dist/index.d.ts +5 -4
- package/dist/index.mjs +4999 -0
- package/dist/index.mjs.map +1 -0
- package/dist/plugin.d.ts +2 -2
- package/dist/services/animation.d.ts +17 -0
- package/dist/services/directives/index.d.ts +2 -0
- package/dist/services/directives/scroll-into-view.d.ts +7 -0
- package/dist/services/directives/tap-animation.d.ts +6 -0
- package/dist/services/id.d.ts +22 -0
- package/dist/services/injections/accordions.d.ts +3 -0
- package/dist/services/injections/animations.d.ts +2 -0
- package/dist/services/injections/buttons.d.ts +4 -0
- package/dist/services/injections/forms.d.ts +6 -0
- package/dist/services/injections/icon-buttons.d.ts +3 -0
- package/dist/services/injections/pills.d.ts +4 -0
- package/dist/services/injections/radio.d.ts +10 -0
- package/dist/styles/main.css +3002 -0
- package/dist/styles/utils.css +2319 -0
- package/dist/theme/icons.d.ts +35 -2
- package/dist/types/CForm.d.ts +12 -0
- package/dist/types/font-awesome.d.ts +5 -0
- package/dist/types.d.ts +12 -0
- package/index.ts +2 -0
- package/package.json +61 -45
- package/src/assets/fonts/grenette-regular.woff2 +0 -0
- package/src/assets/fonts/grenette-semibold.woff2 +0 -0
- package/src/assets/fonts/polymath.woff2 +0 -0
- package/src/assets/logos/propel/icon.svg +15 -0
- package/src/assets/logos/propel/lockup.svg +11 -0
- package/src/colors/colors.ts +173 -0
- package/src/colors/theme.ts +8 -14
- package/src/colors/util-classes.ts +49 -0
- package/src/componentResolver.js +33 -0
- package/src/components/CAccordion.vue +32 -7
- package/src/components/CAccordionItem.vue +109 -36
- package/src/components/CAppBar.vue +237 -0
- package/src/components/CBadge.vue +74 -0
- package/src/components/CBottomSheet.vue +430 -0
- package/src/components/CButton/CButton.vue +347 -0
- package/src/components/CButton/types.ts +5 -0
- package/src/components/CButtonStack.vue +36 -0
- package/src/components/CCard.vue +149 -41
- package/src/components/CCardFooter.vue +11 -27
- package/src/components/CCardHeader.vue +30 -21
- package/src/components/CCardSection.vue +23 -12
- package/src/components/CCheckbox.vue +191 -21
- package/src/components/CCol.vue +55 -0
- package/src/components/CDivider.vue +46 -0
- package/src/components/CDobField.vue +153 -0
- package/src/components/CDobSelect.vue +274 -0
- package/src/components/CEmailField.vue +61 -0
- package/src/components/CExpandTransition.vue +55 -0
- package/src/components/CFadeTransition.vue +23 -0
- package/src/components/CFileInput.vue +186 -0
- package/src/components/CFixedPageFooter.vue +76 -0
- package/src/components/CForm.vue +86 -0
- package/src/components/CFormFieldCounter.vue +40 -0
- package/src/components/CIconButton.vue +175 -59
- package/src/components/CLabel.vue +52 -0
- package/src/components/CListItem.vue +149 -45
- package/src/components/CListItemContent.vue +60 -0
- package/src/components/CListItemIcon.vue +27 -31
- package/src/components/CLoader.vue +156 -0
- package/src/components/CLogo.vue +23 -0
- package/src/components/CMaskedTextField.vue +118 -0
- package/src/components/CMenu.vue +24 -0
- package/src/components/CMenuItem.vue +106 -0
- package/src/components/CMenuLabel.vue +26 -0
- package/src/components/CModal.vue +198 -79
- package/src/components/CModalLoading.vue +27 -9
- package/src/components/CNotification.vue +86 -53
- package/src/components/CPhoneField.vue +69 -0
- package/src/components/CPill.vue +162 -0
- package/src/components/CPillGroup.vue +73 -0
- package/src/components/CPopup.vue +66 -0
- package/src/components/CProgressLinear.vue +52 -0
- package/src/components/CProgressRing.vue +126 -0
- package/src/components/CRadio.vue +138 -0
- package/src/components/CRadioGroup.vue +142 -0
- package/src/components/CRebrand.vue +28 -0
- package/src/components/CRow.vue +62 -0
- package/src/components/CSafeArea.vue +23 -0
- package/src/components/CSectionHeader.vue +50 -0
- package/src/components/CSelect.vue +223 -74
- package/src/components/CSkeleton.vue +65 -0
- package/src/components/CSkeletonLoaderCard.vue +29 -0
- package/src/components/CSkeletonLoaderCircle.vue +18 -14
- package/src/components/CSkeletonLoaderText.vue +127 -17
- package/src/components/CSlideFadeTransition.vue +100 -0
- package/src/components/CSplitInput.vue +111 -0
- package/src/components/CSquaredIcon.vue +83 -0
- package/src/components/CSsnField.vue +86 -0
- package/src/components/CStatusDot.vue +70 -0
- package/src/components/CSwitch.vue +125 -0
- package/src/components/CSwitchListItem.vue +110 -0
- package/src/components/CTextArea.vue +193 -47
- package/src/components/CTextField.vue +450 -93
- package/src/components/CTextLink.vue +48 -38
- package/src/components/CThirdPartyLogo.vue +127 -0
- package/src/components/CTimeago.vue +63 -0
- package/src/components/CToast.vue +259 -0
- package/src/components/CToastsList.vue +32 -0
- package/src/components/CValidationMessage.vue +70 -0
- package/src/components/CZipcodeField.vue +69 -0
- package/src/components/index.ts +66 -25
- package/src/components/internal/CCloseButton.vue +57 -0
- package/src/composables/accessibility.ts +29 -0
- package/src/composables/animation.ts +95 -0
- package/src/composables/binding.ts +34 -0
- package/src/composables/colors.ts +59 -0
- package/src/composables/elements.ts +72 -0
- package/src/composables/fields.ts +19 -0
- package/src/composables/gestures.ts +197 -0
- package/src/composables/i18n.ts +13 -0
- package/src/composables/id.ts +23 -0
- package/src/composables/input-mask.ts +139 -0
- package/src/composables/router.ts +64 -0
- package/src/composables/slots.ts +57 -0
- package/src/composables/toast.ts +64 -0
- package/src/composables/validations.ts +214 -0
- package/src/index.ts +7 -7
- package/src/plugin.ts +13 -6
- package/src/services/animation.ts +101 -0
- package/src/services/directives/index.ts +2 -0
- package/src/services/directives/scroll-into-view.ts +86 -0
- package/src/services/directives/tap-animation.ts +71 -0
- package/src/services/id.ts +31 -0
- package/src/services/injections/accordions.ts +4 -0
- package/src/services/injections/animations.ts +3 -0
- package/src/services/injections/buttons.ts +5 -0
- package/src/services/injections/forms.ts +8 -0
- package/src/services/injections/icon-buttons.ts +4 -0
- package/src/services/injections/pills.ts +7 -0
- package/src/services/injections/radio.ts +12 -0
- package/src/shims-vue.d.ts +6 -3
- package/src/styles/_animation.scss +19 -0
- package/src/styles/_button.scss +61 -0
- package/src/styles/_colors.scss +58 -11
- package/src/styles/_core.scss +248 -87
- package/src/styles/_form-fields.scss +68 -15
- package/src/styles/_grenette.scss +13 -0
- package/src/styles/_polymath.scss +14 -0
- package/src/styles/_reset.scss +105 -0
- package/src/styles/_shoelace.scss +46 -0
- package/src/styles/_typography.scss +40 -10
- package/src/styles/main.scss +6 -3
- package/src/styles/utils/a11y.scss +18 -0
- package/src/styles/utils/typography.scss +13 -0
- package/src/styles/utils.scss +560 -0
- package/src/styles/variables.scss +27 -15
- package/src/theme/icons.ts +16 -5
- package/src/types/CForm.ts +15 -0
- package/src/types/font-awesome.ts +6 -0
- package/src/types.ts +15 -0
- package/.browserslistrc +0 -3
- package/.eslintrc.js +0 -4
- package/.stylelintrc.js +0 -3
- package/babel.config.js +0 -3
- package/dist/citrus-ui.common.js +0 -43434
- package/dist/citrus-ui.common.js.map +0 -1
- package/dist/citrus-ui.css +0 -1
- package/dist/citrus-ui.umd.js +0 -43444
- package/dist/citrus-ui.umd.js.map +0 -1
- package/dist/citrus-ui.umd.min.js +0 -27
- package/dist/citrus-ui.umd.min.js.map +0 -1
- package/dist/demo.html +0 -10
- package/dist/fonts/Blitz-Script.85ed9abe.woff2 +0 -0
- package/dist/fonts/ObjectSans-Bold.5492f3d5.woff2 +0 -0
- package/dist/fonts/ObjectSans-BoldSlanted.29e2a87e.woff2 +0 -0
- package/dist/fonts/ObjectSans-Heavy.d0b2f035.woff2 +0 -0
- package/dist/fonts/ObjectSans-HeavySlanted.45e9c063.woff2 +0 -0
- package/dist/fonts/ObjectSans-Light.f885dec3.woff2 +0 -0
- package/dist/fonts/ObjectSans-LightSlanted.b8eb7c12.woff2 +0 -0
- package/dist/fonts/ObjectSans-Regular.e4ea0b90.woff2 +0 -0
- package/dist/fonts/ObjectSans-Slanted.57a90be9.woff2 +0 -0
- package/dist/fonts/ObjectSans-Thin.86d44227.woff2 +0 -0
- package/dist/fonts/ObjectSans-ThinSlanted.20342160.woff2 +0 -0
- package/jest.config.js +0 -9
- package/plopfile.js +0 -67
- package/project.json +0 -69
- package/src/assets/fonts/Blitz-Script.woff2 +0 -0
- package/src/assets/fonts/ObjectSans-Bold.woff2 +0 -0
- package/src/assets/fonts/ObjectSans-BoldSlanted.woff2 +0 -0
- package/src/assets/fonts/ObjectSans-Heavy.woff2 +0 -0
- package/src/assets/fonts/ObjectSans-HeavySlanted.woff2 +0 -0
- package/src/assets/fonts/ObjectSans-Light.woff2 +0 -0
- package/src/assets/fonts/ObjectSans-LightSlanted.woff2 +0 -0
- package/src/assets/fonts/ObjectSans-Regular.woff2 +0 -0
- package/src/assets/fonts/ObjectSans-Slanted.woff2 +0 -0
- package/src/assets/fonts/ObjectSans-Thin.woff2 +0 -0
- package/src/assets/fonts/ObjectSans-ThinSlanted.woff2 +0 -0
- package/src/components/CAlert.vue +0 -78
- package/src/components/CBanner.vue +0 -47
- package/src/components/CButton.vue +0 -146
- package/src/components/CListItemAction.vue +0 -29
- package/src/components/CSegmentedButton.vue +0 -47
- package/src/components/CSegmentedButtonOption.vue +0 -42
- package/src/components/helpers/FormField.vue +0 -48
- package/src/components/helpers/SelectInput.vue +0 -115
- package/src/shims-scss.d.ts +0 -4
- package/src/shims-vuetify.d.ts +0 -4
- package/src/styles/_blitz.scss +0 -8
- package/src/styles/_object-sans.scss +0 -23
- package/storybook-static/0.799c368cbe88266827ba.manager.bundle.js +0 -1
- package/storybook-static/0.a9f0a9ad.iframe.bundle.js +0 -3
- package/storybook-static/0.a9f0a9ad.iframe.bundle.js.LICENSE.txt +0 -8
- package/storybook-static/0.a9f0a9ad.iframe.bundle.js.map +0 -1
- package/storybook-static/1.0438fd8d.iframe.bundle.js +0 -3
- package/storybook-static/1.0438fd8d.iframe.bundle.js.LICENSE.txt +0 -17
- package/storybook-static/1.0438fd8d.iframe.bundle.js.map +0 -1
- package/storybook-static/1.9ebd2fb519f6726108de.manager.bundle.js +0 -1
- package/storybook-static/10.348d8814.iframe.bundle.js +0 -3
- package/storybook-static/10.348d8814.iframe.bundle.js.LICENSE.txt +0 -30
- package/storybook-static/10.348d8814.iframe.bundle.js.map +0 -1
- package/storybook-static/10.a85ea1a67689be8e19ff.manager.bundle.js +0 -1
- package/storybook-static/11.f4e922583ae35da460f3.manager.bundle.js +0 -2
- package/storybook-static/11.f4e922583ae35da460f3.manager.bundle.js.LICENSE.txt +0 -12
- package/storybook-static/12.1415460941f0bdcb8fa8.manager.bundle.js +0 -1
- package/storybook-static/2.75a17459.iframe.bundle.js +0 -3
- package/storybook-static/2.75a17459.iframe.bundle.js.LICENSE.txt +0 -26
- package/storybook-static/2.75a17459.iframe.bundle.js.map +0 -1
- package/storybook-static/5.f459d151315e6780c20f.manager.bundle.js +0 -2
- package/storybook-static/5.f459d151315e6780c20f.manager.bundle.js.LICENSE.txt +0 -8
- package/storybook-static/6.3bd64d820f3745f262ff.manager.bundle.js +0 -1
- package/storybook-static/6.ce8d99b4.iframe.bundle.js +0 -1
- package/storybook-static/7.3d04765dbf3f1dcd706c.manager.bundle.js +0 -1
- package/storybook-static/7.6633a922.iframe.bundle.js +0 -3
- package/storybook-static/7.6633a922.iframe.bundle.js.LICENSE.txt +0 -12
- package/storybook-static/7.6633a922.iframe.bundle.js.map +0 -1
- package/storybook-static/8.b541eadfcb9164835dfc.manager.bundle.js +0 -1
- package/storybook-static/8.fc5e1ebf.iframe.bundle.js +0 -1
- package/storybook-static/9.411ac8e451bbb10926c7.manager.bundle.js +0 -1
- package/storybook-static/9.724ac3ed.iframe.bundle.js +0 -3
- package/storybook-static/9.724ac3ed.iframe.bundle.js.LICENSE.txt +0 -15
- package/storybook-static/9.724ac3ed.iframe.bundle.js.map +0 -1
- package/storybook-static/css/main.95216119.css +0 -1
- package/storybook-static/css/vendors~main.02dc89bf.css +0 -1
- package/storybook-static/favicon.ico +0 -0
- package/storybook-static/fonts/Blitz-Script.85ed9abe.woff2 +0 -0
- package/storybook-static/fonts/ObjectSans-Bold.5492f3d5.woff2 +0 -0
- package/storybook-static/fonts/ObjectSans-BoldSlanted.29e2a87e.woff2 +0 -0
- package/storybook-static/fonts/ObjectSans-Heavy.d0b2f035.woff2 +0 -0
- package/storybook-static/fonts/ObjectSans-HeavySlanted.45e9c063.woff2 +0 -0
- package/storybook-static/fonts/ObjectSans-Light.f885dec3.woff2 +0 -0
- package/storybook-static/fonts/ObjectSans-LightSlanted.b8eb7c12.woff2 +0 -0
- package/storybook-static/fonts/ObjectSans-Regular.e4ea0b90.woff2 +0 -0
- package/storybook-static/fonts/ObjectSans-Slanted.57a90be9.woff2 +0 -0
- package/storybook-static/fonts/ObjectSans-Thin.86d44227.woff2 +0 -0
- package/storybook-static/fonts/ObjectSans-ThinSlanted.20342160.woff2 +0 -0
- package/storybook-static/iframe.html +0 -348
- package/storybook-static/index.html +0 -51
- package/storybook-static/main.7b4aec9c4352d4bb535b.manager.bundle.js +0 -1
- package/storybook-static/main.9e8c64c7.iframe.bundle.js +0 -1
- package/storybook-static/runtime~main.91a0c7330ab317d35c4a.manager.bundle.js +0 -1
- package/storybook-static/runtime~main.e4da100f.iframe.bundle.js +0 -1
- package/storybook-static/vendors~main.6660eda6.iframe.bundle.js +0 -7
- package/storybook-static/vendors~main.6660eda6.iframe.bundle.js.LICENSE.txt +0 -80
- package/storybook-static/vendors~main.6660eda6.iframe.bundle.js.map +0 -1
- package/storybook-static/vendors~main.f7f16cebbf3aa96a4f89.manager.bundle.js +0 -2
- package/storybook-static/vendors~main.f7f16cebbf3aa96a4f89.manager.bundle.js.LICENSE.txt +0 -110
- package/tsconfig.dist.json +0 -7
- package/tsconfig.json +0 -24
- package/vue.config.js +0 -5
package/README.md
CHANGED
|
@@ -6,67 +6,61 @@ See what components are currently available in [Storybook](https://storybook.pro
|
|
|
6
6
|
|
|
7
7
|
Questions? Ask for eng help in [#unit-eng-frontend-libraries](https://propel-team.slack.com/archives/C02F363U5RB). Get answers to design or cross-functional questions in [#wg-citrus-design-system](https://propel-team.slack.com/archives/C02004PUH5M).
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
9
|
+
## Docs
|
|
10
|
+
|
|
11
|
+
| Page | Description |
|
|
12
|
+
| -------------------------------------------------- | --------------------------------------- |
|
|
13
|
+
| [Development](/libs/citrus-ui/docs/DEVELOPMENT.md) | Linting, testing, and adding components |
|
|
14
|
+
| [Style Guide](/libs/citrus-ui/docs/STYLE_GUIDE.md) | Guidelines for code styles |
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## CDN Usage
|
|
19
|
+
|
|
20
|
+
citrus-ui is published to npm as `@propelinc/citrus-ui` and can be loaded via jsDelivr or unpkg. The following peer dependencies must be loaded separately.
|
|
21
|
+
|
|
22
|
+
> **Note:** `@fortawesome/pro-*` packages require a paid FontAwesome Pro license and are not available on public CDNs. Components that use icons (`CButton`, `CLabel`, `CCheckbox`, `CTextField`, `CSelect`, and others) will not render icons without FontAwesome Pro. See [CDN challenges](#cdn-challenges) below.
|
|
23
|
+
|
|
24
|
+
```html
|
|
25
|
+
<!-- Shoelace styles + assets -->
|
|
26
|
+
<link
|
|
27
|
+
rel="stylesheet"
|
|
28
|
+
href="https://cdn.jsdelivr.net/npm/@shoelace-style/shoelace@2.15.0/cdn/themes/light.css"
|
|
29
|
+
/>
|
|
30
|
+
<script type="module">
|
|
31
|
+
import { setBasePath } from 'https://cdn.jsdelivr.net/npm/@shoelace-style/shoelace@2.15.0/cdn/shoelace-autoloader.js';
|
|
32
|
+
setBasePath('https://cdn.jsdelivr.net/npm/@shoelace-style/shoelace@2.15.0/cdn/');
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<!-- FontAwesome Pro (self-hosted — not available on public CDNs) -->
|
|
36
|
+
<script src="YOUR_SELF_HOSTED_FONTAWESOME_PRO_URL"></script>
|
|
37
|
+
|
|
38
|
+
<!-- citrus-ui styles -->
|
|
39
|
+
<link
|
|
40
|
+
rel="stylesheet"
|
|
41
|
+
href="https://cdn.jsdelivr.net/npm/@propelinc/citrus-ui@1.0.0/dist/styles/main.css"
|
|
42
|
+
/>
|
|
43
|
+
|
|
44
|
+
<!-- citrus-ui + Vue -->
|
|
45
|
+
<script type="module">
|
|
46
|
+
import { createApp } from 'https://cdn.jsdelivr.net/npm/vue@3/dist/vue.esm-browser.prod.js';
|
|
47
|
+
import CitrusUi from 'https://cdn.jsdelivr.net/npm/@propelinc/citrus-ui@1.0.0/dist/index.mjs';
|
|
48
|
+
|
|
49
|
+
const app = createApp({
|
|
50
|
+
/* ... */
|
|
51
|
+
});
|
|
52
|
+
app.use(CitrusUi);
|
|
53
|
+
app.mount('#app');
|
|
54
|
+
</script>
|
|
40
55
|
```
|
|
41
56
|
|
|
42
|
-
###
|
|
57
|
+
### CDN Challenges
|
|
43
58
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
❗️ If you want the component to be available to your Vue app, you'll need to add the component to [index.ts](https://github.com/propelinc/citrus-ui/blob/main/src/index.ts) and define the type in [index.d.ts](https://github.com/propelinc/citrus-ui/blob/main/src/index.d.ts).
|
|
52
|
-
|
|
53
|
-
## Publishing
|
|
54
|
-
|
|
55
|
-
When publishing a new version, bump the version in the package.json according to [semantic versioning](https://semver.org/)
|
|
56
|
-
.
|
|
57
|
-
|
|
58
|
-
Then, run:
|
|
59
|
-
|
|
60
|
-
```bash
|
|
61
|
-
pnpm nx publish
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
### NPM Access
|
|
65
|
-
|
|
66
|
-
Because this package is published to our internal NPM repository, you'll need an [NPM account](https://www.npmjs.com/) and to be part of the [@propelinc organization](https://www.npmjs.com/org/propelinc) to publish. Once you have that set up, you'll have to login:
|
|
67
|
-
|
|
68
|
-
```bash
|
|
69
|
-
npm login --scope=@propelinc
|
|
70
|
-
```
|
|
59
|
+
| Dependency | CDN available? | Notes |
|
|
60
|
+
| ------------------------------------------- | -------------- | ----------------------------------------------------- |
|
|
61
|
+
| `vue` | ✅ | jsDelivr / unpkg |
|
|
62
|
+
| `@shoelace-style/shoelace` | ✅ | Requires `setBasePath` to point at CDN assets |
|
|
63
|
+
| `dayjs`, `lodash`, `i18next`, `maska`, etc. | ✅ | All on public npm, available via CDN |
|
|
64
|
+
| `@fortawesome/pro-*` | ❌ | Paid license, not on public npm — must be self-hosted |
|
|
71
65
|
|
|
72
|
-
|
|
66
|
+
Because FontAwesome Pro cannot be served from a public CDN, components that render icons will require a self-hosted FontAwesome Pro bundle or an alternative delivery mechanism for those packages.
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export type HexColor = `#${string}`;
|
|
2
|
+
export type RgbaColor = `rgba(${number}, ${number}, ${number}, ${number})`;
|
|
3
|
+
/**
|
|
4
|
+
* CSS color value from the palette (hex or rgba). Use this type when a value
|
|
5
|
+
* may be either format, e.g. gray colors are rgba, others are hex.
|
|
6
|
+
*/
|
|
7
|
+
export type CssColor = HexColor | RgbaColor;
|
|
8
|
+
/**
|
|
9
|
+
* Maps a color name to its corresponding CSS color (hex or rgba).
|
|
10
|
+
* Gray neutrals use rgba for transparency; other colors use hex.
|
|
11
|
+
*
|
|
12
|
+
* NOTE: Please write hex codes in lowercase letters
|
|
13
|
+
*/
|
|
14
|
+
declare const Colors: Record<string, CssColor>;
|
|
15
|
+
export default Colors;
|
|
16
|
+
/**
|
|
17
|
+
* This is a type predicate that will allow TypeScript to know that the string tested is a
|
|
18
|
+
* HexColor within the scope of the narrowing.
|
|
19
|
+
*/
|
|
20
|
+
export declare function isHexColor(color?: string): color is HexColor;
|
|
21
|
+
export declare function isRgbaColor(color?: string): color is RgbaColor;
|
|
22
|
+
export declare function isCssColor(color?: string): color is CssColor;
|
|
23
|
+
/**
|
|
24
|
+
* This is a type predicate that will allow TypeScript to know that the string tested is a
|
|
25
|
+
* key of the Colors object.
|
|
26
|
+
*/
|
|
27
|
+
export declare function isColorKey(color?: string): color is keyof typeof Colors;
|
|
28
|
+
/**
|
|
29
|
+
* Validates a string as either a hex color or a color key.
|
|
30
|
+
*/
|
|
31
|
+
export declare function isValidColor(value: string): boolean;
|
package/dist/colors/theme.d.ts
CHANGED
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
primary?: import("vuetify/types/services/theme").VuetifyThemeItem;
|
|
4
|
-
secondary?: import("vuetify/types/services/theme").VuetifyThemeItem;
|
|
5
|
-
accent?: import("vuetify/types/services/theme").VuetifyThemeItem;
|
|
6
|
-
info?: import("vuetify/types/services/theme").VuetifyThemeItem;
|
|
7
|
-
warning?: import("vuetify/types/services/theme").VuetifyThemeItem;
|
|
8
|
-
error?: import("vuetify/types/services/theme").VuetifyThemeItem;
|
|
9
|
-
success?: import("vuetify/types/services/theme").VuetifyThemeItem;
|
|
10
|
-
anchor?: string | number | undefined;
|
|
11
|
-
};
|
|
1
|
+
type Theme = Record<string, string>;
|
|
2
|
+
declare const _default: Theme;
|
|
12
3
|
export default _default;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates utility classes for each Citrus color.
|
|
3
|
+
*
|
|
4
|
+
* For example, for blue-500 it creates:
|
|
5
|
+
* - `.blue-500` - sets background and border
|
|
6
|
+
* - `.blue-500--text` - sets text color
|
|
7
|
+
*
|
|
8
|
+
* This matches the syntax of Vuetify's utils:
|
|
9
|
+
* https://vuetifyjs.com/en/styles/colors/#classes
|
|
10
|
+
*/
|
|
11
|
+
export declare function addColorUtils(): void;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { DefineComponent, ExtractPropTypes, Ref, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
2
|
+
declare const _default: DefineComponent<ExtractPropTypes<{
|
|
3
|
+
/** Removes horizontal padding for all items inside */
|
|
4
|
+
fluid: {
|
|
5
|
+
type: BooleanConstructor;
|
|
6
|
+
default: boolean;
|
|
7
|
+
};
|
|
8
|
+
}>, {
|
|
9
|
+
accordion: Ref<HTMLDivElement | null, HTMLDivElement | null>;
|
|
10
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "change"[], "change", PublicProps, Readonly< ExtractPropTypes<{
|
|
11
|
+
/** Removes horizontal padding for all items inside */
|
|
12
|
+
fluid: {
|
|
13
|
+
type: BooleanConstructor;
|
|
14
|
+
default: boolean;
|
|
15
|
+
};
|
|
16
|
+
}>> & Readonly<{
|
|
17
|
+
onChange?: ((...args: any[]) => any) | undefined;
|
|
18
|
+
}>, {
|
|
19
|
+
fluid: boolean;
|
|
20
|
+
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
21
|
+
export default _default;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { default as SlDetails } from '@shoelace-style/shoelace/dist/components/details/details';
|
|
2
|
+
import { PropType, DefineComponent, ExtractPropTypes, Ref, ComputedRef, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
3
|
+
import { IconDefinition } from '@fortawesome/pro-regular-svg-icons';
|
|
4
|
+
import { FontAwesomeIconProps } from '@fortawesome/vue-fontawesome';
|
|
5
|
+
declare const _default: DefineComponent<ExtractPropTypes<{
|
|
6
|
+
/** Controls whether the item is open */
|
|
7
|
+
value: {
|
|
8
|
+
type: BooleanConstructor;
|
|
9
|
+
default: boolean;
|
|
10
|
+
};
|
|
11
|
+
/** Removes horizontal padding from the content */
|
|
12
|
+
fluid: {
|
|
13
|
+
type: PropType<boolean | null>;
|
|
14
|
+
default: null;
|
|
15
|
+
};
|
|
16
|
+
}>, {
|
|
17
|
+
internalValue: Ref<boolean, boolean>;
|
|
18
|
+
faChevronDown: IconDefinition;
|
|
19
|
+
details: Ref<SlDetails | null, SlDetails | null>;
|
|
20
|
+
injectedOrPropFluid: ComputedRef<boolean>;
|
|
21
|
+
onChange: (value: boolean) => void;
|
|
22
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, "input"[], "input", PublicProps, Readonly< ExtractPropTypes<{
|
|
23
|
+
/** Controls whether the item is open */
|
|
24
|
+
value: {
|
|
25
|
+
type: BooleanConstructor;
|
|
26
|
+
default: boolean;
|
|
27
|
+
};
|
|
28
|
+
/** Removes horizontal padding from the content */
|
|
29
|
+
fluid: {
|
|
30
|
+
type: PropType<boolean | null>;
|
|
31
|
+
default: null;
|
|
32
|
+
};
|
|
33
|
+
}>> & Readonly<{
|
|
34
|
+
onInput?: ((...args: any[]) => any) | undefined;
|
|
35
|
+
}>, {
|
|
36
|
+
fluid: boolean | null;
|
|
37
|
+
value: boolean;
|
|
38
|
+
}, {}, {
|
|
39
|
+
FontAwesomeIcon: DefineComponent<FontAwesomeIconProps>;
|
|
40
|
+
}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
41
|
+
export default _default;
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { PropType, DefineComponent, ExtractPropTypes, Ref, ComputedRef, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
2
|
+
import { HexColor, default as Colors, isValidColor, CssColor } from '../colors/colors';
|
|
3
|
+
declare const _default: DefineComponent<ExtractPropTypes<{
|
|
4
|
+
/**
|
|
5
|
+
* Used to set the background color of the app bar. Needs to accept either a hex code or a
|
|
6
|
+
* a valid color key from the Colors object.
|
|
7
|
+
*/
|
|
8
|
+
backgroundColor: {
|
|
9
|
+
type: PropType<HexColor | keyof typeof Colors>;
|
|
10
|
+
default: string;
|
|
11
|
+
validator: typeof isValidColor;
|
|
12
|
+
};
|
|
13
|
+
color: {
|
|
14
|
+
type: PropType<HexColor | keyof typeof Colors>;
|
|
15
|
+
default: undefined;
|
|
16
|
+
validator: typeof isValidColor;
|
|
17
|
+
};
|
|
18
|
+
/** If true, the app bar will be fixed to the top of the viewport. */
|
|
19
|
+
fixed: {
|
|
20
|
+
type: BooleanConstructor;
|
|
21
|
+
default: boolean;
|
|
22
|
+
};
|
|
23
|
+
/** If true, the app bar will have a bottom border. */
|
|
24
|
+
border: {
|
|
25
|
+
type: BooleanConstructor;
|
|
26
|
+
default: boolean;
|
|
27
|
+
};
|
|
28
|
+
/** Shows text in the center of the component. Typically used for page names. Overrides the title slot. */
|
|
29
|
+
title: {
|
|
30
|
+
type: StringConstructor;
|
|
31
|
+
default: string;
|
|
32
|
+
};
|
|
33
|
+
/** Shows a loading spinner. Overrides the title slot. */
|
|
34
|
+
loading: {
|
|
35
|
+
type: BooleanConstructor;
|
|
36
|
+
default: boolean;
|
|
37
|
+
};
|
|
38
|
+
/** Adds screen reader only text alternative to loading icon, text should be translated */
|
|
39
|
+
loaderAccessibleText: {
|
|
40
|
+
type: StringConstructor;
|
|
41
|
+
default: string;
|
|
42
|
+
};
|
|
43
|
+
}>, {
|
|
44
|
+
bgCssColor: Ref< CssColor | undefined, CssColor | undefined>;
|
|
45
|
+
textCssColor: ComputedRef<CssColor>;
|
|
46
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<{
|
|
47
|
+
/**
|
|
48
|
+
* Used to set the background color of the app bar. Needs to accept either a hex code or a
|
|
49
|
+
* a valid color key from the Colors object.
|
|
50
|
+
*/
|
|
51
|
+
backgroundColor: {
|
|
52
|
+
type: PropType<HexColor | keyof typeof Colors>;
|
|
53
|
+
default: string;
|
|
54
|
+
validator: typeof isValidColor;
|
|
55
|
+
};
|
|
56
|
+
color: {
|
|
57
|
+
type: PropType<HexColor | keyof typeof Colors>;
|
|
58
|
+
default: undefined;
|
|
59
|
+
validator: typeof isValidColor;
|
|
60
|
+
};
|
|
61
|
+
/** If true, the app bar will be fixed to the top of the viewport. */
|
|
62
|
+
fixed: {
|
|
63
|
+
type: BooleanConstructor;
|
|
64
|
+
default: boolean;
|
|
65
|
+
};
|
|
66
|
+
/** If true, the app bar will have a bottom border. */
|
|
67
|
+
border: {
|
|
68
|
+
type: BooleanConstructor;
|
|
69
|
+
default: boolean;
|
|
70
|
+
};
|
|
71
|
+
/** Shows text in the center of the component. Typically used for page names. Overrides the title slot. */
|
|
72
|
+
title: {
|
|
73
|
+
type: StringConstructor;
|
|
74
|
+
default: string;
|
|
75
|
+
};
|
|
76
|
+
/** Shows a loading spinner. Overrides the title slot. */
|
|
77
|
+
loading: {
|
|
78
|
+
type: BooleanConstructor;
|
|
79
|
+
default: boolean;
|
|
80
|
+
};
|
|
81
|
+
/** Adds screen reader only text alternative to loading icon, text should be translated */
|
|
82
|
+
loaderAccessibleText: {
|
|
83
|
+
type: StringConstructor;
|
|
84
|
+
default: string;
|
|
85
|
+
};
|
|
86
|
+
}>> & Readonly<{}>, {
|
|
87
|
+
title: string;
|
|
88
|
+
border: boolean;
|
|
89
|
+
fixed: boolean;
|
|
90
|
+
color: string;
|
|
91
|
+
backgroundColor: string;
|
|
92
|
+
loading: boolean;
|
|
93
|
+
loaderAccessibleText: string;
|
|
94
|
+
}, {}, {
|
|
95
|
+
CLoader: DefineComponent<ExtractPropTypes<{
|
|
96
|
+
accessibleText: {
|
|
97
|
+
type: StringConstructor;
|
|
98
|
+
default: undefined;
|
|
99
|
+
};
|
|
100
|
+
color: {
|
|
101
|
+
type: PropType<HexColor | keyof typeof Colors>;
|
|
102
|
+
default: string;
|
|
103
|
+
validator: typeof isValidColor;
|
|
104
|
+
};
|
|
105
|
+
small: {
|
|
106
|
+
type: BooleanConstructor;
|
|
107
|
+
default: boolean;
|
|
108
|
+
};
|
|
109
|
+
size: {
|
|
110
|
+
type: PropType<"sm" | "lg" | "md">;
|
|
111
|
+
default: string;
|
|
112
|
+
};
|
|
113
|
+
trackColor: {
|
|
114
|
+
type: PropType<HexColor | keyof typeof Colors>;
|
|
115
|
+
default: string;
|
|
116
|
+
validator: typeof isValidColor;
|
|
117
|
+
};
|
|
118
|
+
}>, {
|
|
119
|
+
computedSize: ComputedRef<"sm" | "lg" | "md">;
|
|
120
|
+
indicatorColorCode: Ref< CssColor | undefined, CssColor | undefined>;
|
|
121
|
+
SIZE_TO_FONT_SIZE: Record<"sm" | "lg" | "md", `${number}px`>;
|
|
122
|
+
SIZE_TO_TRACK_WIDTH: Record<"sm" | "lg" | "md", `${number}px`>;
|
|
123
|
+
trackColorCode: Ref< CssColor | undefined, CssColor | undefined>;
|
|
124
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<{
|
|
125
|
+
accessibleText: {
|
|
126
|
+
type: StringConstructor;
|
|
127
|
+
default: undefined;
|
|
128
|
+
};
|
|
129
|
+
color: {
|
|
130
|
+
type: PropType<HexColor | keyof typeof Colors>;
|
|
131
|
+
default: string;
|
|
132
|
+
validator: typeof isValidColor;
|
|
133
|
+
};
|
|
134
|
+
small: {
|
|
135
|
+
type: BooleanConstructor;
|
|
136
|
+
default: boolean;
|
|
137
|
+
};
|
|
138
|
+
size: {
|
|
139
|
+
type: PropType<"sm" | "lg" | "md">;
|
|
140
|
+
default: string;
|
|
141
|
+
};
|
|
142
|
+
trackColor: {
|
|
143
|
+
type: PropType<HexColor | keyof typeof Colors>;
|
|
144
|
+
default: string;
|
|
145
|
+
validator: typeof isValidColor;
|
|
146
|
+
};
|
|
147
|
+
}>> & Readonly<{}>, {
|
|
148
|
+
small: boolean;
|
|
149
|
+
size: "sm" | "lg" | "md";
|
|
150
|
+
accessibleText: string;
|
|
151
|
+
color: string;
|
|
152
|
+
trackColor: string;
|
|
153
|
+
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
154
|
+
CFadeTransition: DefineComponent<{}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
155
|
+
}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
156
|
+
export default _default;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { DefineComponent, ExtractPropTypes, ComputedRef, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
2
|
+
declare const _default: DefineComponent<ExtractPropTypes<{
|
|
3
|
+
/** Sets the text of the badge, can also use default slot */
|
|
4
|
+
text: {
|
|
5
|
+
type: StringConstructor;
|
|
6
|
+
default: undefined;
|
|
7
|
+
};
|
|
8
|
+
/** Adds a unique data-test attribute for testing to the container */
|
|
9
|
+
dataTest: {
|
|
10
|
+
type: StringConstructor;
|
|
11
|
+
default: string;
|
|
12
|
+
};
|
|
13
|
+
/** Sets the background color */
|
|
14
|
+
color: {
|
|
15
|
+
type: StringConstructor;
|
|
16
|
+
default: string;
|
|
17
|
+
};
|
|
18
|
+
/** Sets the text color */
|
|
19
|
+
textColor: {
|
|
20
|
+
type: StringConstructor;
|
|
21
|
+
default: string;
|
|
22
|
+
};
|
|
23
|
+
}>, {
|
|
24
|
+
computedStyle: ComputedRef<Record<string, string>>;
|
|
25
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<{
|
|
26
|
+
/** Sets the text of the badge, can also use default slot */
|
|
27
|
+
text: {
|
|
28
|
+
type: StringConstructor;
|
|
29
|
+
default: undefined;
|
|
30
|
+
};
|
|
31
|
+
/** Adds a unique data-test attribute for testing to the container */
|
|
32
|
+
dataTest: {
|
|
33
|
+
type: StringConstructor;
|
|
34
|
+
default: string;
|
|
35
|
+
};
|
|
36
|
+
/** Sets the background color */
|
|
37
|
+
color: {
|
|
38
|
+
type: StringConstructor;
|
|
39
|
+
default: string;
|
|
40
|
+
};
|
|
41
|
+
/** Sets the text color */
|
|
42
|
+
textColor: {
|
|
43
|
+
type: StringConstructor;
|
|
44
|
+
default: string;
|
|
45
|
+
};
|
|
46
|
+
}>> & Readonly<{}>, {
|
|
47
|
+
text: string;
|
|
48
|
+
dataTest: string;
|
|
49
|
+
color: string;
|
|
50
|
+
textColor: string;
|
|
51
|
+
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
52
|
+
export default _default;
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
import { default as SlDrawer } from '@shoelace-style/shoelace/dist/components/drawer/drawer.js';
|
|
2
|
+
import { Ref, DefineComponent, ExtractPropTypes, ComputedRef, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
3
|
+
import { CssColor } from '../colors/colors';
|
|
4
|
+
import { Coordinate } from '../composables/gestures';
|
|
5
|
+
import { IconDefinition } from '@fortawesome/pro-regular-svg-icons';
|
|
6
|
+
declare const _default: DefineComponent<ExtractPropTypes<{
|
|
7
|
+
/** Aria label for the bottom sheet. This is required if title is hidden */
|
|
8
|
+
ariaLabel: {
|
|
9
|
+
type: StringConstructor;
|
|
10
|
+
default: string;
|
|
11
|
+
};
|
|
12
|
+
/** Background color of the bottom sheet */
|
|
13
|
+
backgroundColor: {
|
|
14
|
+
type: StringConstructor;
|
|
15
|
+
default: string;
|
|
16
|
+
};
|
|
17
|
+
/** Prefix for test selectors */
|
|
18
|
+
dataTest: {
|
|
19
|
+
type: StringConstructor;
|
|
20
|
+
default: string;
|
|
21
|
+
};
|
|
22
|
+
/** Disables the dismiss button */
|
|
23
|
+
disableDismiss: {
|
|
24
|
+
type: BooleanConstructor;
|
|
25
|
+
default: boolean;
|
|
26
|
+
};
|
|
27
|
+
/** Divided into header, body, and footer slots */
|
|
28
|
+
divided: {
|
|
29
|
+
type: BooleanConstructor;
|
|
30
|
+
default: boolean;
|
|
31
|
+
};
|
|
32
|
+
/** Fixed size, in CSS units. By default the drawer sizes itself to its contents. */
|
|
33
|
+
fixedSize: {
|
|
34
|
+
type: StringConstructor;
|
|
35
|
+
default: string;
|
|
36
|
+
};
|
|
37
|
+
/** Hides the dismiss 'x' button */
|
|
38
|
+
hideDismiss: {
|
|
39
|
+
type: BooleanConstructor;
|
|
40
|
+
default: boolean;
|
|
41
|
+
};
|
|
42
|
+
/** Allows for hiding the entire title bar, both the title and the dismiss 'x' button */
|
|
43
|
+
hideTitle: {
|
|
44
|
+
type: BooleanConstructor;
|
|
45
|
+
default: boolean;
|
|
46
|
+
};
|
|
47
|
+
/** Toggles the background behind the sheet. If there's no overlay, the sheet
|
|
48
|
+
* stays open as the user interacts with background content.' */
|
|
49
|
+
overlay: {
|
|
50
|
+
type: BooleanConstructor;
|
|
51
|
+
default: boolean;
|
|
52
|
+
};
|
|
53
|
+
/** Prevents the sheet from being dismissed when tapping on the overlay. If
|
|
54
|
+
* there is no overlay then this property is ignored, as the sheet always
|
|
55
|
+
* stays open. */
|
|
56
|
+
persistent: {
|
|
57
|
+
type: BooleanConstructor;
|
|
58
|
+
default: boolean;
|
|
59
|
+
};
|
|
60
|
+
/** If true, the bottom sheet will be contained within the viewport. */
|
|
61
|
+
contained: {
|
|
62
|
+
type: BooleanConstructor;
|
|
63
|
+
default: boolean;
|
|
64
|
+
};
|
|
65
|
+
/** Do not animate in the bottom sheet if it starts open. */
|
|
66
|
+
skipInitialAnimation: {
|
|
67
|
+
type: BooleanConstructor;
|
|
68
|
+
default: boolean;
|
|
69
|
+
};
|
|
70
|
+
/** The title of the bottom sheet */
|
|
71
|
+
title: {
|
|
72
|
+
type: StringConstructor;
|
|
73
|
+
default: string;
|
|
74
|
+
};
|
|
75
|
+
/** Controls whether or not the bottom sheet is showing */
|
|
76
|
+
value: {
|
|
77
|
+
type: BooleanConstructor;
|
|
78
|
+
default: boolean;
|
|
79
|
+
};
|
|
80
|
+
}>, {
|
|
81
|
+
backgroundCssColor: Ref< CssColor | undefined, CssColor | undefined>;
|
|
82
|
+
animatedValue: ComputedRef<boolean>;
|
|
83
|
+
dragDistance: Ref< Coordinate | null, Coordinate | null>;
|
|
84
|
+
faXmark: IconDefinition;
|
|
85
|
+
footerHasContent: Ref<boolean, boolean>;
|
|
86
|
+
getDataTestAttr: (suffix?: string) => string | null;
|
|
87
|
+
handleDismiss: () => void;
|
|
88
|
+
internalValue: Ref<boolean, boolean>;
|
|
89
|
+
isDismissVisible: ComputedRef<boolean>;
|
|
90
|
+
onRequestClose: (event: Event) => void;
|
|
91
|
+
overlayOpacity: ComputedRef<number>;
|
|
92
|
+
panelTransform: ComputedRef<string>;
|
|
93
|
+
onAfterClose: () => void;
|
|
94
|
+
sheet: Ref<SlDrawer | null, SlDrawer | null>;
|
|
95
|
+
transformDistance: Ref<number, number>;
|
|
96
|
+
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, ("input" | "opened" | "closed")[], "input" | "opened" | "closed", PublicProps, Readonly< ExtractPropTypes<{
|
|
97
|
+
/** Aria label for the bottom sheet. This is required if title is hidden */
|
|
98
|
+
ariaLabel: {
|
|
99
|
+
type: StringConstructor;
|
|
100
|
+
default: string;
|
|
101
|
+
};
|
|
102
|
+
/** Background color of the bottom sheet */
|
|
103
|
+
backgroundColor: {
|
|
104
|
+
type: StringConstructor;
|
|
105
|
+
default: string;
|
|
106
|
+
};
|
|
107
|
+
/** Prefix for test selectors */
|
|
108
|
+
dataTest: {
|
|
109
|
+
type: StringConstructor;
|
|
110
|
+
default: string;
|
|
111
|
+
};
|
|
112
|
+
/** Disables the dismiss button */
|
|
113
|
+
disableDismiss: {
|
|
114
|
+
type: BooleanConstructor;
|
|
115
|
+
default: boolean;
|
|
116
|
+
};
|
|
117
|
+
/** Divided into header, body, and footer slots */
|
|
118
|
+
divided: {
|
|
119
|
+
type: BooleanConstructor;
|
|
120
|
+
default: boolean;
|
|
121
|
+
};
|
|
122
|
+
/** Fixed size, in CSS units. By default the drawer sizes itself to its contents. */
|
|
123
|
+
fixedSize: {
|
|
124
|
+
type: StringConstructor;
|
|
125
|
+
default: string;
|
|
126
|
+
};
|
|
127
|
+
/** Hides the dismiss 'x' button */
|
|
128
|
+
hideDismiss: {
|
|
129
|
+
type: BooleanConstructor;
|
|
130
|
+
default: boolean;
|
|
131
|
+
};
|
|
132
|
+
/** Allows for hiding the entire title bar, both the title and the dismiss 'x' button */
|
|
133
|
+
hideTitle: {
|
|
134
|
+
type: BooleanConstructor;
|
|
135
|
+
default: boolean;
|
|
136
|
+
};
|
|
137
|
+
/** Toggles the background behind the sheet. If there's no overlay, the sheet
|
|
138
|
+
* stays open as the user interacts with background content.' */
|
|
139
|
+
overlay: {
|
|
140
|
+
type: BooleanConstructor;
|
|
141
|
+
default: boolean;
|
|
142
|
+
};
|
|
143
|
+
/** Prevents the sheet from being dismissed when tapping on the overlay. If
|
|
144
|
+
* there is no overlay then this property is ignored, as the sheet always
|
|
145
|
+
* stays open. */
|
|
146
|
+
persistent: {
|
|
147
|
+
type: BooleanConstructor;
|
|
148
|
+
default: boolean;
|
|
149
|
+
};
|
|
150
|
+
/** If true, the bottom sheet will be contained within the viewport. */
|
|
151
|
+
contained: {
|
|
152
|
+
type: BooleanConstructor;
|
|
153
|
+
default: boolean;
|
|
154
|
+
};
|
|
155
|
+
/** Do not animate in the bottom sheet if it starts open. */
|
|
156
|
+
skipInitialAnimation: {
|
|
157
|
+
type: BooleanConstructor;
|
|
158
|
+
default: boolean;
|
|
159
|
+
};
|
|
160
|
+
/** The title of the bottom sheet */
|
|
161
|
+
title: {
|
|
162
|
+
type: StringConstructor;
|
|
163
|
+
default: string;
|
|
164
|
+
};
|
|
165
|
+
/** Controls whether or not the bottom sheet is showing */
|
|
166
|
+
value: {
|
|
167
|
+
type: BooleanConstructor;
|
|
168
|
+
default: boolean;
|
|
169
|
+
};
|
|
170
|
+
}>> & Readonly<{
|
|
171
|
+
onInput?: ((...args: any[]) => any) | undefined;
|
|
172
|
+
onOpened?: ((...args: any[]) => any) | undefined;
|
|
173
|
+
onClosed?: ((...args: any[]) => any) | undefined;
|
|
174
|
+
}>, {
|
|
175
|
+
title: string;
|
|
176
|
+
value: boolean;
|
|
177
|
+
dataTest: string;
|
|
178
|
+
backgroundColor: string;
|
|
179
|
+
ariaLabel: string;
|
|
180
|
+
disableDismiss: boolean;
|
|
181
|
+
divided: boolean;
|
|
182
|
+
fixedSize: string;
|
|
183
|
+
hideDismiss: boolean;
|
|
184
|
+
hideTitle: boolean;
|
|
185
|
+
overlay: boolean;
|
|
186
|
+
persistent: boolean;
|
|
187
|
+
contained: boolean;
|
|
188
|
+
skipInitialAnimation: boolean;
|
|
189
|
+
}, {}, {
|
|
190
|
+
CButtonStack: DefineComponent<ExtractPropTypes<{
|
|
191
|
+
tag: {
|
|
192
|
+
type: StringConstructor;
|
|
193
|
+
default: string;
|
|
194
|
+
};
|
|
195
|
+
large: {
|
|
196
|
+
type: BooleanConstructor;
|
|
197
|
+
default: null;
|
|
198
|
+
};
|
|
199
|
+
}>, void, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<{
|
|
200
|
+
tag: {
|
|
201
|
+
type: StringConstructor;
|
|
202
|
+
default: string;
|
|
203
|
+
};
|
|
204
|
+
large: {
|
|
205
|
+
type: BooleanConstructor;
|
|
206
|
+
default: null;
|
|
207
|
+
};
|
|
208
|
+
}>> & Readonly<{}>, {
|
|
209
|
+
large: boolean;
|
|
210
|
+
tag: string;
|
|
211
|
+
}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
212
|
+
CCloseButton: DefineComponent<{
|
|
213
|
+
disabled?: boolean;
|
|
214
|
+
}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
215
|
+
focus: (...args: any[]) => void;
|
|
216
|
+
blur: (...args: any[]) => void;
|
|
217
|
+
click: (...args: any[]) => void;
|
|
218
|
+
}, string, PublicProps, Readonly<{
|
|
219
|
+
disabled?: boolean;
|
|
220
|
+
}> & Readonly<{
|
|
221
|
+
onFocus?: ((...args: any[]) => any) | undefined;
|
|
222
|
+
onBlur?: ((...args: any[]) => any) | undefined;
|
|
223
|
+
onClick?: ((...args: any[]) => any) | undefined;
|
|
224
|
+
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLButtonElement>;
|
|
225
|
+
}, {}, string, ComponentProvideOptions, true, {}, any>;
|
|
226
|
+
export default _default;
|