@central-design-system/components 2.30.0 → 3.0.0-alpha.0

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.
Files changed (283) hide show
  1. package/dist/cds.css +1 -111
  2. package/dist/cds.d.ts +31 -0
  3. package/dist/cds.es.js +2159 -0
  4. package/dist/cds.umd.js +1 -0
  5. package/dist/components/CdsBadge/CdsBadge.vue.d.ts +32 -0
  6. package/dist/components/CdsButton/CdsButton.vue.d.ts +140 -0
  7. package/dist/components/CdsDrawer/CdsDrawer.vue.d.ts +179 -0
  8. package/dist/components/CdsGrid/CdsCol.vue.d.ts +73 -0
  9. package/dist/components/CdsGrid/CdsGrid.vue.d.ts +55 -0
  10. package/dist/components/CdsGrid/CdsRow.vue.d.ts +37 -0
  11. package/dist/components/CdsGrid/composable/column.d.ts +84 -0
  12. package/dist/components/CdsGrid/composable/grid.d.ts +24 -0
  13. package/dist/components/CdsGrid/composable/index.d.ts +4 -0
  14. package/dist/components/CdsGrid/composable/subgrid.d.ts +20 -0
  15. package/dist/components/CdsGrid/composable/wide.d.ts +12 -0
  16. package/dist/components/CdsGrid/mode/CSSGrid.d.ts +5 -0
  17. package/dist/components/CdsGrid/mode/FlexGrid.d.ts +5 -0
  18. package/dist/components/CdsGrid/types.d.ts +27 -0
  19. package/dist/components/CdsIcon/CdsIcon.vue.d.ts +44 -0
  20. package/dist/components/CdsIcon/index.d.ts +1 -0
  21. package/dist/components/CdsLink/CdsLink.vue.d.ts +50 -0
  22. package/dist/components/CdsList/CdsList.vue.d.ts +170 -0
  23. package/dist/components/CdsList/CdsListGroup.vue.d.ts +125 -0
  24. package/dist/components/CdsList/CdsListItem.vue.d.ts +172 -0
  25. package/dist/components/CdsList/composable/depth.d.ts +3 -0
  26. package/dist/components/CdsList/composable/index.d.ts +2 -0
  27. package/dist/components/CdsList/composable/list.d.ts +19 -0
  28. package/dist/components/CdsList/index.d.ts +3 -0
  29. package/dist/components/CdsLoader/CdsLoader.vue.d.ts +62 -0
  30. package/dist/components/CdsLoader/index.d.ts +1 -0
  31. package/dist/components/CdsStatus/CdsStatus.vue.d.ts +46 -0
  32. package/dist/components/CdsTag/CdsTag.vue.d.ts +96 -0
  33. package/dist/components/index.d.ts +18 -0
  34. package/dist/composable/appearance.d.ts +24 -0
  35. package/dist/composable/color.d.ts +21 -0
  36. package/dist/composable/dark.d.ts +19 -0
  37. package/dist/composable/disabled.d.ts +19 -0
  38. package/dist/composable/focus.d.ts +12 -0
  39. package/dist/composable/icon.d.ts +32 -0
  40. package/dist/composable/index.d.ts +17 -0
  41. package/dist/composable/items.d.ts +78 -0
  42. package/dist/composable/link.d.ts +36 -0
  43. package/dist/composable/loading.d.ts +19 -0
  44. package/dist/composable/nested/nested.d.ts +85 -0
  45. package/dist/composable/nested/openStrategies.d.ts +25 -0
  46. package/dist/composable/nested/selectStrategies.d.ts +21 -0
  47. package/dist/composable/proxyModel.d.ts +8 -0
  48. package/dist/composable/render.d.ts +2 -0
  49. package/dist/composable/size.d.ts +24 -0
  50. package/dist/composable/status.d.ts +21 -0
  51. package/dist/composable/tag.d.ts +16 -0
  52. package/dist/composable/text.d.ts +17 -0
  53. package/dist/composable/toggleScope.d.ts +2 -0
  54. package/dist/directives/index.d.ts +2 -0
  55. package/dist/plugins/index.d.ts +2 -0
  56. package/dist/shims-vue.d.ts +24 -0
  57. package/dist/transitions/createTransition.d.ts +9 -0
  58. package/dist/transitions/expandTransition.d.ts +19 -0
  59. package/dist/transitions/index.d.ts +14 -0
  60. package/dist/types/CdsOptions.d.ts +3 -0
  61. package/dist/utils/changeCase/lowerCase.d.ts +8 -0
  62. package/dist/utils/changeCase/noCase.d.ts +10 -0
  63. package/dist/utils/changeCase/paramCase.d.ts +3 -0
  64. package/dist/utils/changeCase/pascalCase.d.ts +5 -0
  65. package/dist/utils/getCurrentInstance.d.ts +13 -0
  66. package/dist/utils/helpers.d.ts +49 -0
  67. package/dist/utils/index.d.ts +7 -0
  68. package/dist/utils/propsFactory.d.ts +52 -0
  69. package/nuxt.js +13 -0
  70. package/package.json +37 -80
  71. package/src/scss/index.scss +10 -0
  72. package/{dist/mixins/scss → src/scss/mixins}/layout/_convert.scss +4 -2
  73. package/{dist/mixins/scss → src/scss/mixins}/layout/_layout.scss +0 -0
  74. package/{dist/mixins/scss → src/scss/mixins}/layout/_mini-unit.scss +0 -0
  75. package/{dist/mixins/scss → src/scss/mixins}/layout/_spacing.scss +0 -0
  76. package/src/scss/mixins/layout/exports/_mini-unit.module.scss +5 -0
  77. package/src/scss/mixins/layout/exports/_spacing-all.module.scss +3 -0
  78. package/src/scss/mixins/layout/exports/_spacing-fluid.module.scss +8 -0
  79. package/src/scss/mixins/layout/exports/_spacing-layout.module.scss +11 -0
  80. package/src/scss/mixins/layout/exports/_spacing.module.scss +16 -0
  81. package/{dist/mixins/scss → src/scss/mixins}/layout/index.scss +0 -2
  82. package/{dist/mixins/scss → src/scss/mixins}/motion.scss +0 -0
  83. package/{dist/mixins/scss → src/scss/mixins}/typo.scss +0 -67
  84. package/src/scss/modules/_reset.scss +113 -0
  85. package/src/scss/modules/_transition.scss +26 -0
  86. package/src/scss/modules/_typography.scss +36 -0
  87. package/src/scss/modules/_variables.scss +9 -0
  88. package/src/scss/modules/grid/_aspect-ratio.scss +62 -0
  89. package/src/scss/modules/grid/_breakpoint.scss +195 -0
  90. package/src/scss/modules/grid/_config.scss +88 -0
  91. package/src/scss/modules/grid/_css-grid.scss +445 -0
  92. package/src/scss/modules/grid/_flex-grid.scss +39 -0
  93. package/src/scss/modules/grid/_mixins.scss +307 -0
  94. package/src/scss/modules/grid/exports/_config.module.scss +9 -0
  95. package/src/scss/modules/grid/index.scss +5 -0
  96. package/src/scss/themes/b2b/tokens-map.scss +139 -0
  97. package/src/scss/themes/b2b/tokens.json +2190 -0
  98. package/{dist/tokens → src/scss/themes}/b2b/variables.css +0 -0
  99. package/src/scss/themes/cds/tokens-map.scss +138 -0
  100. package/src/scss/themes/cds/tokens.json +2184 -0
  101. package/{dist/tokens → src/scss/themes}/cds/variables.css +0 -1
  102. package/src/scss/themes/index.ts +43 -0
  103. package/src/scss/utility/display.scss +13 -0
  104. package/src/scss/utility/flexbox.scss +37 -0
  105. package/src/scss/utility/generatedFiles/generatedStyles.json +1 -0
  106. package/src/scss/utility/generatedFiles/generatedStyles.scss +300 -0
  107. package/src/scss/utility/index.scss +7 -0
  108. package/src/scss/utility/layout.scss +11 -0
  109. package/src/scss/utility/lists.scss +76 -0
  110. package/src/scss/utility/spacing.scss +89 -0
  111. package/src/scss/utility/typography.scss +16 -0
  112. package/src/scss/utility/variables.scss +116 -0
  113. package/README.md +0 -87
  114. package/build/utils/postInstall.js +0 -20
  115. package/build/utils/print.js +0 -38
  116. package/dist/CdsAccordion/index.js +0 -8
  117. package/dist/CdsAccordion/styles.css +0 -11
  118. package/dist/CdsBadge/index.js +0 -8
  119. package/dist/CdsBadge/styles.css +0 -9
  120. package/dist/CdsBreadcrumbs/index.js +0 -8
  121. package/dist/CdsBreadcrumbs/styles.css +0 -11
  122. package/dist/CdsButton/index.js +0 -8
  123. package/dist/CdsButton/styles.css +0 -11
  124. package/dist/CdsCheckbox/index.js +0 -8
  125. package/dist/CdsCheckbox/styles.css +0 -15
  126. package/dist/CdsCombobox/index.js +0 -8
  127. package/dist/CdsCombobox/styles.css +0 -15
  128. package/dist/CdsContainer/index.js +0 -8
  129. package/dist/CdsContainer/styles.css +0 -11
  130. package/dist/CdsContentSwitcher/index.js +0 -8
  131. package/dist/CdsContentSwitcher/styles.css +0 -15
  132. package/dist/CdsDataTable/index.js +0 -8
  133. package/dist/CdsDataTable/styles.css +0 -21
  134. package/dist/CdsDatePicker/index.js +0 -24
  135. package/dist/CdsDatePicker/styles.css +0 -15
  136. package/dist/CdsDrawer/index.js +0 -8
  137. package/dist/CdsDrawer/styles.css +0 -17
  138. package/dist/CdsDropdown/index.js +0 -8
  139. package/dist/CdsDropdown/styles.css +0 -15
  140. package/dist/CdsEmptyState/index.js +0 -8
  141. package/dist/CdsEmptyState/styles.css +0 -9
  142. package/dist/CdsFooter/index.js +0 -8
  143. package/dist/CdsFooter/styles.css +0 -17
  144. package/dist/CdsForm/index.js +0 -8
  145. package/dist/CdsForm/styles.css +0 -15
  146. package/dist/CdsGrid/index.js +0 -8
  147. package/dist/CdsGrid/styles.css +0 -9
  148. package/dist/CdsHeader/index.js +0 -8
  149. package/dist/CdsHeader/styles.css +0 -11
  150. package/dist/CdsIcon/index.js +0 -8
  151. package/dist/CdsIcon/styles.css +0 -9
  152. package/dist/CdsImage/index.js +0 -8
  153. package/dist/CdsImage/styles.css +0 -9
  154. package/dist/CdsInput/index.js +0 -8
  155. package/dist/CdsInput/styles.css +0 -13
  156. package/dist/CdsLink/index.js +0 -8
  157. package/dist/CdsLink/styles.css +0 -9
  158. package/dist/CdsList/index.js +0 -8
  159. package/dist/CdsList/styles.css +0 -9
  160. package/dist/CdsLoading/index.js +0 -8
  161. package/dist/CdsLoading/styles.css +0 -9
  162. package/dist/CdsModal/index.js +0 -8
  163. package/dist/CdsModal/styles.css +0 -15
  164. package/dist/CdsMultiselect/index.js +0 -8
  165. package/dist/CdsMultiselect/styles.css +0 -17
  166. package/dist/CdsNotification/index.js +0 -8
  167. package/dist/CdsNotification/styles.css +0 -21
  168. package/dist/CdsOverflowMenu/index.js +0 -8
  169. package/dist/CdsOverflowMenu/styles.css +0 -21
  170. package/dist/CdsPagination/index.js +0 -8
  171. package/dist/CdsPagination/styles.css +0 -13
  172. package/dist/CdsRadioButton/index.js +0 -8
  173. package/dist/CdsRadioButton/styles.css +0 -15
  174. package/dist/CdsSearch/index.js +0 -8
  175. package/dist/CdsSearch/styles.css +0 -19
  176. package/dist/CdsSelect/index.js +0 -8
  177. package/dist/CdsSelect/styles.css +0 -15
  178. package/dist/CdsSidebar/index.js +0 -8
  179. package/dist/CdsSidebar/styles.css +0 -15
  180. package/dist/CdsSkeleton/index.js +0 -8
  181. package/dist/CdsSkeleton/styles.css +0 -9
  182. package/dist/CdsStages/index.js +0 -8
  183. package/dist/CdsStages/styles.css +0 -9
  184. package/dist/CdsStatus/index.js +0 -8
  185. package/dist/CdsStatus/styles.css +0 -15
  186. package/dist/CdsSteps/index.js +0 -8
  187. package/dist/CdsSteps/styles.css +0 -19
  188. package/dist/CdsTable/index.js +0 -16
  189. package/dist/CdsTable/styles.css +0 -21
  190. package/dist/CdsTabs/index.js +0 -8
  191. package/dist/CdsTabs/styles.css +0 -9
  192. package/dist/CdsTag/index.js +0 -8
  193. package/dist/CdsTag/styles.css +0 -11
  194. package/dist/CdsTextArea/index.js +0 -8
  195. package/dist/CdsTextArea/styles.css +0 -17
  196. package/dist/CdsTextInput/index.js +0 -8
  197. package/dist/CdsTextInput/styles.css +0 -15
  198. package/dist/CdsToggle/index.js +0 -8
  199. package/dist/CdsToggle/styles.css +0 -9
  200. package/dist/CdsTooltip/index.js +0 -8
  201. package/dist/CdsTooltip/styles.css +0 -13
  202. package/dist/CdsUploader/index.js +0 -14
  203. package/dist/CdsUploader/styles.css +0 -25
  204. package/dist/cds.js +0 -38
  205. package/dist/cds.min.css +0 -7
  206. package/dist/cds.min.js +0 -38
  207. package/dist/index.html +0 -60
  208. package/dist/mixins/scss/layout/_breakpoint.scss +0 -237
  209. package/dist/mixins/scss/layout/_key-height.scss +0 -90
  210. package/dist/mixins/scss/layout/_spacing-export.scss +0 -34
  211. package/dist/mixins/scss/layout/_utilities.scss +0 -33
  212. package/dist/types/CdsAccordion.ts +0 -4
  213. package/dist/types/CdsAccordionItem.ts +0 -10
  214. package/dist/types/CdsBreadcrumbs.ts +0 -11
  215. package/dist/types/CdsBreadcrumbsItem.ts +0 -12
  216. package/dist/types/CdsButton.ts +0 -30
  217. package/dist/types/CdsCheckbox.ts +0 -20
  218. package/dist/types/CdsCheckboxGroup.ts +0 -14
  219. package/dist/types/CdsCol.ts +0 -38
  220. package/dist/types/CdsCombobox.ts +0 -42
  221. package/dist/types/CdsContainer.ts +0 -32
  222. package/dist/types/CdsContentSwitcher.ts +0 -4
  223. package/dist/types/CdsContentSwitcherButton.ts +0 -21
  224. package/dist/types/CdsDataTable.ts +0 -48
  225. package/dist/types/CdsDatePicker.ts +0 -40
  226. package/dist/types/CdsDrawer.ts +0 -25
  227. package/dist/types/CdsDrawerGroup.ts +0 -8
  228. package/dist/types/CdsDrawerItem.ts +0 -12
  229. package/dist/types/CdsDrawerLabel.ts +0 -4
  230. package/dist/types/CdsDropdown.ts +0 -14
  231. package/dist/types/CdsEmptyState.ts +0 -10
  232. package/dist/types/CdsFooter.ts +0 -17
  233. package/dist/types/CdsFooterService.ts +0 -16
  234. package/dist/types/CdsForm.ts +0 -4
  235. package/dist/types/CdsFormGroup.ts +0 -8
  236. package/dist/types/CdsFormItem.ts +0 -4
  237. package/dist/types/CdsGrid.ts +0 -16
  238. package/dist/types/CdsHeader.ts +0 -27
  239. package/dist/types/CdsHeaderService.ts +0 -4
  240. package/dist/types/CdsIcon.ts +0 -6
  241. package/dist/types/CdsLink.ts +0 -22
  242. package/dist/types/CdsList.ts +0 -6
  243. package/dist/types/CdsLoading.ts +0 -14
  244. package/dist/types/CdsModal.ts +0 -17
  245. package/dist/types/CdsMultiselect.ts +0 -33
  246. package/dist/types/CdsNotification.ts +0 -22
  247. package/dist/types/CdsOverflowMenu.ts +0 -16
  248. package/dist/types/CdsPagination.ts +0 -12
  249. package/dist/types/CdsRadioButton.ts +0 -29
  250. package/dist/types/CdsRow.ts +0 -18
  251. package/dist/types/CdsSearch.ts +0 -24
  252. package/dist/types/CdsSelect.ts +0 -37
  253. package/dist/types/CdsSkeleton.ts +0 -14
  254. package/dist/types/CdsStages.ts +0 -10
  255. package/dist/types/CdsStatus.ts +0 -22
  256. package/dist/types/CdsSteps.ts +0 -22
  257. package/dist/types/CdsStepsItem.ts +0 -12
  258. package/dist/types/CdsTable.ts +0 -46
  259. package/dist/types/CdsTabs.ts +0 -19
  260. package/dist/types/CdsTabsItem.ts +0 -18
  261. package/dist/types/CdsTag.ts +0 -20
  262. package/dist/types/CdsTextArea.ts +0 -26
  263. package/dist/types/CdsTextInput.ts +0 -32
  264. package/dist/types/CdsToggle.ts +0 -18
  265. package/dist/types/CdsTooltip.ts +0 -18
  266. package/dist/types/CdsTooltipDefinition.ts +0 -16
  267. package/dist/types/CdsTooltipInteractive.ts +0 -11
  268. package/dist/types/CdsUploader.ts +0 -44
  269. package/dist/types/Sidebar.ts +0 -17
  270. package/dist/types/types.ts +0 -2
  271. package/dist/utils/convertRemToPx.js +0 -9
  272. package/dist/utils/deepFind.js +0 -14
  273. package/dist/utils/expiringStorage.js +0 -28
  274. package/dist/utils/helpers.js +0 -33
  275. package/dist/utils/index.js +0 -1
  276. package/dist/utils/isCorrectTag.js +0 -5
  277. package/dist/utils/isRightProps.js +0 -5
  278. package/dist/utils/memoize.js +0 -8
  279. package/dist/utils/suffixPropName.js +0 -12
  280. package/dist/utils/test/deepFind.test.js +0 -18
  281. package/dist/utils/test/isCorrectTag.test.js +0 -9
  282. package/dist/utils/test/isCorrectTagDataSet.js +0 -51
  283. package/dist/utils/validationProps.js +0 -7
@@ -1,29 +0,0 @@
1
- import { PropType } from 'vue';
2
- import { Component, Prop, Vue } from 'vue-property-decorator';
3
-
4
- export type RadioButtonOption = {
5
- value: string | number;
6
- description?: string;
7
- label: string;
8
- disabled?: boolean;
9
- checked?: boolean;
10
- };
11
-
12
- @Component('CdsRadioButton')
13
- export default class CdsRadioButton extends Vue {
14
- @Prop({ type: String, default: null }) public label?: string;
15
-
16
- @Prop({ type: String, default: null }) public description?: string;
17
-
18
- @Prop({ type: Boolean, default: false }) public horizontal?: boolean;
19
-
20
- @Prop({ type: Array as PropType<RadioButtonOption[]>, default: [] }) public options?: RadioButtonOption[];
21
-
22
- @Prop({ type: String, default: null }) public name?: string;
23
-
24
- @Prop({ type: Boolean, default: false }) public autofocus?: boolean;
25
-
26
- @Prop({ type: Boolean, default: false }) public error?: boolean;
27
-
28
- @Prop({ type: String, default: null }) public errorMessage?: string | null;
29
- }
@@ -1,18 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
- import { GridAlignment, GridGutters } from './types';
3
- import { PropType } from 'vue';
4
-
5
- @Component('CdsRow')
6
- export default class CdsRow extends Vue {
7
- @Prop({ type: String, default: 'div' }) public tag?: string;
8
-
9
- @Prop({ type: Boolean, default: false }) public noGutters?: boolean;
10
-
11
- @Prop({ type: String as PropType<GridGutters>, default: null }) public noGutter?: GridGutters;
12
-
13
- @Prop({ type: String as PropType<GridAlignment>, default: null }) public alignV: GridAlignment;
14
-
15
- @Prop({ type: String as PropType<GridAlignment>, default: null }) public alignH: GridAlignment;
16
-
17
- @Prop({ type: String as PropType<GridAlignment>, default: null }) public alignContent: GridAlignment;
18
- }
@@ -1,24 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
-
3
- @Component('CdsSearch')
4
- export default class CdsSearch extends Vue {
5
- @Prop({ type: String, default: '' }) public label?: string;
6
-
7
- @Prop({ type: Boolean, default: false }) public autofocus?: boolean;
8
-
9
- @Prop({ type: String, default: '' }) public placeholder?: string;
10
-
11
- @Prop({ type: [String, Number], default: '' }) public value?: string | number;
12
-
13
- @Prop({ type: String, default: 'Очистить поле поиска' }) public clearAriaLabel?: string;
14
-
15
- @Prop({ type: [String, Number], default: 3 }) public limit?: string | number;
16
-
17
- @Prop({ type: [String, Number], default: 500 }) public delay?: string | number;
18
-
19
- @Prop({ type: Boolean, default: false }) public loading?: boolean;
20
-
21
- @Prop({ type: Boolean, default: false }) public dropdown?: boolean;
22
-
23
- @Prop({ type: Array, default: [] }) public results?: any[];
24
- }
@@ -1,37 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
- import { PropType } from 'vue';
3
-
4
- export type SelectOptions = {
5
- text: string;
6
- value: string | number;
7
- title?: string;
8
- label?: string;
9
- options?: SelectOptions[];
10
- }
11
-
12
- @Component('CdsSelect')
13
- export default class CdsSelect extends Vue {
14
- @Prop({ type: String, required: true }) public label?: string;
15
-
16
- @Prop({ type: String, default: null }) public description?: string;
17
-
18
- @Prop({ type: String, default: 'Не выбрано' }) public placeholder?: string;
19
-
20
- @Prop({ type: Boolean, default: false }) public isHiddenLabel?: boolean;
21
-
22
- @Prop({ type: Array as PropType<SelectOptions[]>, default: [] }) public options?: SelectOptions[];
23
-
24
- @Prop({ type: [String, Number], default: '' }) public value?: string | number;
25
-
26
- @Prop({ type: Boolean, default: false }) public disabled?: boolean;
27
-
28
- @Prop({ type: Boolean, default: false }) public autofocus?: boolean;
29
-
30
- @Prop({ type: Boolean, default: false }) public optional?: boolean;
31
-
32
- @Prop({ type: String, default: null }) public optionalLabel?: string;
33
-
34
- @Prop({ type: Boolean, default: false }) public error?: boolean;
35
-
36
- @Prop({ type: String, default: null }) public errorMessage?: string | null;
37
- }
@@ -1,14 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
-
3
- @Component('CdsSkeleton')
4
- export default class CdsSkeleton extends Vue {
5
- @Prop({type: Number, default: 100}) public maxWidth?: number;
6
-
7
- @Prop({type: Number, default: 80}) public minWidth?: number;
8
-
9
- @Prop({ type: String, default: '1rem' }) public height?: string;
10
-
11
- @Prop({ type: String, default: '100%' }) public width?: string;
12
-
13
- @Prop({ type: Boolean, default: false }) public randomWidth?: boolean;
14
- }
@@ -1,10 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
-
3
- @Component('CdsStages')
4
- export default class CdsStages extends Vue {
5
- @Prop({ type: [String, Number], default: 0 }) public current?: string | number;
6
-
7
- @Prop({ type: Array, required: true }) public stages: string[];
8
-
9
- @Prop({ type: Array, default: [] }) public error: number[];
10
- }
@@ -1,22 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
- import { PropType } from 'vue';
3
-
4
- export type StatusVariant = 'primary' | 'secondary';
5
- export type StatusStatus = 'info' | 'warning' | 'success' | 'error' | 'progress';
6
- export type StatusTooltipDirection = 'top' | 'bottom' | 'left' | 'right';
7
- export type StatusTooltipAlign = 'start' | 'center' | 'end';
8
-
9
- @Component('CdsStatus')
10
- export default class CdsStatus extends Vue {
11
- @Prop({ type: String, required: true }) public text: string;
12
-
13
- @Prop({ type: String as PropType<StatusVariant>, default: 'primary' }) public variant?: StatusVariant;
14
-
15
- @Prop({ type: String as PropType<StatusStatus>, default: 'info' }) public status?: StatusStatus;
16
-
17
- @Prop({ type: String, default: '' }) public tooltip?: string;
18
-
19
- @Prop({ type: String as PropType<StatusTooltipDirection>, default: 'right' }) public tooltipDirection?: StatusTooltipDirection;
20
-
21
- @Prop({ type: String as PropType<StatusTooltipAlign>, default: 'right' }) public tooltipAlign?: StatusTooltipAlign;
22
- }
@@ -1,22 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
- import { PropType } from 'vue';
3
-
4
- export type Steps = {
5
- label: string;
6
- description?: string;
7
- error?: boolean;
8
- disabled?: boolean;
9
- }
10
-
11
- @Component('CdsSteps')
12
- export default class CdsSteps extends Vue {
13
- @Prop({ type: [String, Number], default: 0 }) public current?: string | number;
14
-
15
- @Prop({ type: Array as PropType<Steps[]>, default: [] }) public steps?: Steps[];
16
-
17
- @Prop({ type: Boolean, default: false }) public vertical: boolean;
18
-
19
- @Prop({ type: Boolean, default: false }) public fullWidth: boolean;
20
-
21
- @Prop({ type: Boolean, default: false }) public tooltipReverse: boolean;
22
- }
@@ -1,12 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
-
3
- @Component('CdsStepsItem')
4
- export default class CdsStepsItem extends Vue {
5
- @Prop({ type: String, required: true }) public label: string;
6
-
7
- @Prop({ type: String, default: '' }) public description?: string;
8
-
9
- @Prop({ type: Boolean, default: false }) public error?: boolean;
10
-
11
- @Prop({ type: Boolean, default: false }) public disabled?: boolean;
12
- }
@@ -1,46 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
- import { PropType } from 'vue';
3
-
4
- export type TableRowSize = 'standard' | 'short';
5
-
6
- @Component('CdsTable')
7
- export default class CdsStatus extends Vue {
8
- @Prop({ type: String , required: true }) public name: string;
9
-
10
- @Prop({ type: String, default: '' }) public title?: string;
11
-
12
- @Prop({ type: String, default: '' }) public description?: string;
13
-
14
- @Prop({ type: Boolean, default: false }) public hoverable?: boolean;
15
-
16
- @Prop({ type: Boolean, default: false }) public selectable?: boolean;
17
-
18
- @Prop({ type: Boolean, default: false }) public multiselectable?: boolean;
19
-
20
- @Prop({ type: Array, default: [] }) public columns?: any[];
21
-
22
- @Prop({ type: Array, default: [] }) public dataSource?: any[];
23
-
24
- @Prop({ type: Boolean, default: false }) public autoWidth?: boolean;
25
-
26
- @Prop({ type: Boolean, default: false }) public borderless?: boolean;
27
-
28
- @Prop({ type: Boolean, default: false }) public ellipsis?: boolean;
29
-
30
- @Prop({ type: Boolean, default: false }) public sortable?: boolean;
31
-
32
- @Prop({ type: Boolean, default: false }) public fixHeader?: boolean;
33
-
34
- @Prop({ type: Boolean, default: false }) public hideHeader?: boolean;
35
-
36
- @Prop({ type: Boolean, default: false }) public alwaysShowHeader?: boolean;
37
-
38
- @Prop({ type: String, default: null }) public treeKey?: string | null;
39
-
40
- @Prop({ type: Boolean, default: false }) public defaultOverflow?: boolean;
41
-
42
- @Prop({ type: String as PropType<TableRowSize>, default: 'standard' }) public rowSize?: TableRowSize;
43
-
44
- @Prop({ type: Object, default: {} }) public rowSelection?: object;
45
-
46
- }
@@ -1,19 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
- import { PropType } from 'vue';
3
-
4
- export type Breakpoint = 'sm' | 'md' | 'lg' | 'xlg' | 'max';
5
-
6
- @Component('CdsTabs')
7
- export default class CdsTabs extends Vue {
8
- @Prop({ type: String, default: null }) public tabsId?: string;
9
-
10
- @Prop({ type: String, default: null }) public activeTab?: string;
11
-
12
- @Prop({ type: Boolean, default: false }) public useGetParam?: boolean;
13
-
14
- @Prop({ type: String, default: 'tab-id' }) public getParamName?: string;
15
-
16
- @Prop({ type: Boolean, default: false }) public isSecondary?: boolean;
17
-
18
- @Prop({ type: String as PropType<Breakpoint>, default: 'md' }) public breakpoint?: Breakpoint;
19
- }
@@ -1,18 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
-
3
- @Component('CdsTabsItem')
4
- export default class CdsTabsItem extends Vue {
5
- @Prop({ type: String, required: true }) public name: string;
6
-
7
- @Prop({ type: String, default: '' }) public prefix?: string;
8
-
9
- @Prop({ type: String, default: '' }) public suffix?: string;
10
-
11
- @Prop({ type: Boolean, default: false }) public isDisabled?: boolean;
12
-
13
- @Prop({ type: String, default: '' }) public tabsId?: string;
14
-
15
- @Prop({ type: String, default: void 0 }) public targetId?: string;
16
-
17
- @Prop({ type: String, default: 'section' }) public tag?: string;
18
- }
@@ -1,20 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
- import { PropType } from 'vue';
3
-
4
- export type TagSize = 'sm' | 'md';
5
- export type TagColor = 'yellow' | 'green' | 'light-blue' | 'blue' | 'deep-purple' | 'purple' | 'pink';
6
-
7
- @Component('CdsTag')
8
- export default class CdsTag extends Vue {
9
- @Prop({ type: String, required: true }) public title: string;
10
-
11
- @Prop({ type: String, default: '' }) public href?: string;
12
-
13
- @Prop({ type: Boolean, default: false }) public removable?: boolean;
14
-
15
- @Prop({ type: Boolean, default: false }) public disabled?: boolean;
16
-
17
- @Prop({ type: String as PropType<TagSize>, default: 'default' }) public size?: TagSize;
18
-
19
- @Prop({ type: String as PropType<TagColor>, default: 'default' }) public color?: TagColor;
20
- }
@@ -1,26 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
-
3
- @Component('CdsTextArea')
4
- export default class CdsTextArea extends Vue {
5
- @Prop({ type: String, required: true }) public label: string;
6
-
7
- @Prop({ type: String, required: true }) public placeholder: string;
8
-
9
- @Prop({ type: [String, Boolean], default: '' }) public description?: string | boolean;
10
-
11
- @Prop({ type: Boolean, default: false }) public disabled?: boolean;
12
-
13
- @Prop({ type: Boolean, default: false }) public autofocus?: boolean;
14
-
15
- @Prop({ type: Number, default: null }) public limit?: number;
16
-
17
- @Prop({ type: String, default: null }) public value?: string;
18
-
19
- @Prop({ type: Boolean, default: false }) public optional?: boolean;
20
-
21
- @Prop({ type: String, default: null }) public optionalLabel?: string;
22
-
23
- @Prop({ type: Boolean, default: false }) public error?: boolean;
24
-
25
- @Prop({ type: String, default: null }) public errorMessage?: string | null;
26
- }
@@ -1,32 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
-
3
- @Component('CdsTextInput')
4
- export default class CdsTextInput extends Vue {
5
- @Prop({ type: String, required: true }) public label: string;
6
-
7
- @Prop({ type: String, default: '' }) public placeholder?: string;
8
-
9
- @Prop({ type: [String, Boolean], default: '' }) public description?: string | boolean;
10
-
11
- @Prop({ type: Boolean, default: false }) public password?: boolean;
12
-
13
- @Prop({ type: Boolean, default: false }) public disabled?: boolean;
14
-
15
- @Prop({ type: Boolean, default: false }) public autofocus?: boolean;
16
-
17
- @Prop({ type: Number, default: null }) public limit?: number;
18
-
19
- @Prop({ type: [String, Number], default: null }) public value?: string | number;
20
-
21
- @Prop({ type: String, default: '' }) public prefixClass?: string;
22
-
23
- @Prop({ type: String, default: '' }) public suffixClass?: string;
24
-
25
- @Prop({ type: Boolean, default: false }) public optional?: boolean;
26
-
27
- @Prop({ type: String, default: null }) public optionalLabel?: string;
28
-
29
- @Prop({ type: Boolean, default: false }) public error?: boolean;
30
-
31
- @Prop({ type: String, default: null }) public errorMessage?: string | null;
32
- }
@@ -1,18 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
-
3
- @Component('CdsToggle')
4
- export default class CdsToggle extends Vue {
5
- @Prop({ type: String, required: true }) public label: string;
6
-
7
- @Prop({ type: String, default: '' }) public textOn?: string;
8
-
9
- @Prop({ type: String, default: '' }) public textOff?: string;
10
-
11
- @Prop({ type: Boolean, default: false }) public checked?: boolean;
12
-
13
- @Prop({ type: [String, Number, Boolean], default: false }) public value?: string | number | boolean;
14
-
15
- @Prop({ type: Boolean, default: false }) public disabled?: boolean;
16
-
17
- @Prop({ type: Boolean, default: false }) public hiddenLabel?: boolean;
18
- }
@@ -1,18 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
- import { PropType } from 'vue';
3
-
4
- export type TooltipDirection = 'top' | 'bottom' | 'left' | 'right';
5
- export type TooltipAlign = 'start' | 'center' | 'end';
6
-
7
- @Component('CdsTooltip')
8
- export default class CdsTooltip extends Vue {
9
- @Prop({ type: Boolean, default: false }) public visible?: boolean;
10
-
11
- @Prop({ type: String as PropType<TooltipDirection>, default: 'bottom' }) public direction?: TooltipDirection;
12
-
13
- @Prop({ type: String as PropType<TooltipAlign>, default: 'center' }) public align?: TooltipAlign;
14
-
15
- @Prop({ type: String, required: true }) public tip: string;
16
-
17
- @Prop({ type: Boolean, required: false, default: false }) public disabled?: boolean;
18
- }
@@ -1,16 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
- import { PropType } from 'vue';
3
-
4
- type TooltipDirection = 'top' | 'bottom' | 'left' | 'right';
5
- type TooltipAlign = 'start' | 'center' | 'end';
6
-
7
- @Component('CdsTooltipDefinition')
8
- export default class CdsTooltipDefinition extends Vue {
9
- @Prop({ type: Boolean, default: false }) public visible?: boolean;
10
-
11
- @Prop({ type: String as PropType<TooltipDirection>, default: 'bottom' }) public direction?: TooltipDirection;
12
-
13
- @Prop({ type: String as PropType<TooltipAlign>, default: 'center' }) public align?: TooltipAlign;
14
-
15
- @Prop({ type: String, required: true }) public tip: string;
16
- }
@@ -1,11 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
- import { PropType } from 'vue';
3
-
4
- type TooltipDirection = 'top' | 'bottom' | 'left' | 'right';
5
-
6
- @Component('CdsTooltipInteractive')
7
- export default class CdsTooltipInteractive extends Vue {
8
- @Prop({ type: Boolean, default: false }) public visible?: boolean;
9
-
10
- @Prop({ type: String as PropType<TooltipDirection>, default: 'bottom' }) public direction?: TooltipDirection;
11
- }
@@ -1,44 +0,0 @@
1
- import { Component, Prop, Vue } from 'vue-property-decorator';
2
-
3
- @Component('CdsUploader')
4
- export default class CdsUploader extends Vue {
5
- @Prop({ type: String, default: null }) public label?: string;
6
-
7
- @Prop({ type: String, default: null }) public description?: string;
8
-
9
- @Prop({ type: String, default: 'Загрузить файл' }) public buttonText?: string;
10
-
11
- @Prop({ type: String, required: true }) public uploadUrl: string;
12
-
13
- @Prop({ type: String, required: true }) public deleteUrl: string;
14
-
15
- @Prop({ type: String, default: '' }) public downloadUrl: string;
16
-
17
- @Prop({ type: String, default: '' }) public putAction?: string;
18
-
19
- @Prop({ type: Object, default: {} }) public headers?: any;
20
-
21
- @Prop({ type: Array, default: ['jpeg', 'jpg', 'png', 'doc', 'docs', 'zip'] }) public allowedTypes?: string[];
22
-
23
- @Prop({ type: String, default: null }) public name?: string;
24
-
25
- @Prop({ type: Boolean, default: false }) public multiple?: boolean;
26
-
27
- @Prop({ type: Number, default: 0 }) public size?: number;
28
-
29
- @Prop({ type: Number, default: 100 }) public maximum?: number;
30
-
31
- @Prop({ type: Boolean, default: false }) public disabled?: boolean;
32
-
33
- @Prop({ type: Boolean, default: false }) public allowDuplicate?: boolean;
34
-
35
- @Prop({ type: Number, default: 0 }) public timeout?: number;
36
-
37
- @Prop({ type: Object, default: {} }) public requestData?: any;
38
-
39
- @Prop({ type: Function, default: null }) public onUploadResponse?: Function;
40
-
41
- @Prop({ type: Function, default: null }) public inputFilter?: Function;
42
-
43
- @Prop({ type: Boolean, default: false }) public error?: boolean;
44
- }
@@ -1,17 +0,0 @@
1
- import { Component, Vue, Prop } from 'vue-property-decorator';
2
- import { PropType } from 'vue';
3
-
4
- export type CdsSidebarSize = 'sm' | 'md' | 'lg' | '3xl';
5
-
6
- @Component('CdsSidebar')
7
- export default class CdsSidebar extends Vue {
8
- @Prop({ type: String, required: true }) title: string;
9
-
10
- @Prop({ type: Boolean, required: false, default: false }) showed?: boolean;
11
-
12
- @Prop({ type: Boolean, required: false, default: false }) visible?: boolean;
13
-
14
- @Prop({ type: [String, Number], required: false, default: '' }) id?: string | number;
15
-
16
- @Prop({ type: String as PropType<CdsSidebarSize>, required: false, default: 'm' }) public size?: CdsSidebarSize;
17
- }
@@ -1,2 +0,0 @@
1
- export type GridAlignment = 'start' | 'end' | 'center' | 'between' | 'around' | 'baseline' | 'stretch';
2
- export type GridGutters = 'left' | 'right';
@@ -1,9 +0,0 @@
1
- const convertRemToPixels = (rem) => {
2
- if (rem.includes('rem')) {
3
- rem = rem.replace('rem', '');
4
- }
5
-
6
- return rem * parseFloat(getComputedStyle(document.documentElement).fontSize);
7
- };
8
-
9
- export default convertRemToPixels;
@@ -1,14 +0,0 @@
1
- export const deepFind = (f, obj = {}) => {
2
- if (Object(obj) === obj) {
3
- if (f(obj) === true) return obj;
4
-
5
- // eslint-disable-next-line no-unused-vars
6
- for (const [k, v] of Object.entries(obj)) {
7
- const res = deepFind(f, v);
8
-
9
- if (res !== undefined) return res;
10
- }
11
- }
12
-
13
- return undefined;
14
- };
@@ -1,28 +0,0 @@
1
- class ExpiringStorage {
2
- get(key) {
3
- const cached = JSON.parse(localStorage.getItem(key));
4
-
5
- if (!cached) {
6
- return null;
7
- }
8
-
9
- const expires = new Date(cached.expires);
10
-
11
- if (expires < new Date()) {
12
- localStorage.removeItem(key);
13
- return null;
14
- }
15
-
16
- return cached.value;
17
- }
18
-
19
- set(key, value, lifeTimeInMinutes) {
20
- const currentTime = new Date().getTime();
21
-
22
- const expires = new Date(currentTime + lifeTimeInMinutes * 60000);
23
-
24
- localStorage.setItem(key, JSON.stringify({ value, expires }));
25
- }
26
- }
27
-
28
- export default new ExpiringStorage();
@@ -1,33 +0,0 @@
1
- export const keyCodes = Object.freeze({
2
- enter: 13,
3
- tab: 9,
4
- delete: 46,
5
- esc: 27,
6
- space: 32,
7
- up: 38,
8
- down: 40,
9
- left: 37,
10
- right: 39,
11
- end: 35,
12
- home: 36,
13
- del: 46,
14
- backspace: 8,
15
- insert: 45,
16
- pageup: 33,
17
- pagedown: 34,
18
- });
19
-
20
- export const state = Object.freeze({
21
- hover: 'cds-state-hover',
22
- focus: 'cds-state-focus',
23
- active: 'cds-state-active',
24
- visited: 'cds-state-visited',
25
- disabled: 'cds-state-disabled',
26
- checked: 'cds-state-checked',
27
- indeterminate: 'cds-state-indeterminate',
28
- invalid: 'cds-state-invalid',
29
- empty: 'cds-state-empty',
30
- loading: 'cds-state-loading',
31
- });
32
-
33
- export const noop = () => {};
@@ -1 +0,0 @@
1
- import validationProps from"./validationProps";import suffixPropName from"./suffixPropName";import isCorrectTag from"./isCorrectTag";import memoize from"./memoize";import convertRemToPx from"./convertRemToPx";export{validationProps,suffixPropName,isCorrectTag,memoize,convertRemToPx};
@@ -1,5 +0,0 @@
1
- import { kebabCase, camelCase, upperCaseFirst } from 'change-case';
2
-
3
- export default function isCorrectTag(tag, compareTag) {
4
- return [upperCaseFirst(camelCase(tag)), kebabCase(tag)].includes(compareTag);
5
- }
@@ -1,5 +0,0 @@
1
- export const validationProps = (available, value, errorText) => {
2
- const valid = value.match(new RegExp(`(${available.join('|')})`));
3
- if (!valid) console.warn(`${errorText} должно быть одно из следующих: ${available.join(', ')}`);
4
- return valid;
5
- };
@@ -1,8 +0,0 @@
1
- export default function memoize(fn) {
2
- const cache = Object.create(null);
3
-
4
- return function memoizedFn() {
5
- const args = JSON.stringify(arguments);
6
- return (cache[args] = cache[args] || fn.apply(null, arguments));
7
- };
8
- }
@@ -1,12 +0,0 @@
1
- import { upperCaseFirst } from 'change-case';
2
-
3
- /**
4
- * Suffix can be a falsey value so nothing is appended to string.
5
- * (helps when looping over props & some shouldn't change)
6
- * Use data last parameters to allow for currying.
7
- * @param {string} suffix
8
- * @param {string} str
9
- */
10
- export default function suffixPropName(suffix, str) {
11
- return str + (suffix ? upperCaseFirst(suffix) : '');
12
- }
@@ -1,18 +0,0 @@
1
- import { deepFind } from '../deepFind';
2
-
3
- const data = [
4
- { a: 1, b: 1 },
5
- { a: 2, b: 2, c: { d: [{ e: 2 }] } },
6
- { a: 3, b: { c: { d: { e: { f: 3 } } } } },
7
- ];
8
-
9
- describe('deepFind function', () => {
10
- it('should be right find deep', () => {
11
- expect(deepFind((x) => x.a === 1, data)).toEqual({ a: 1, b: 1 });
12
- expect(deepFind((x) => x.e === 2, data)).toEqual({ e: 2 });
13
- expect(deepFind((x) => Array.isArray(x.d), data)).toEqual({ d: [{ e: 2 }] });
14
- expect(deepFind((x) => x.f === 3, data)).toEqual({ f: 3 });
15
- expect(deepFind((x) => x.e && x.e.f === 3, data)).toEqual({ e: { f: 3 } });
16
- expect(deepFind((x) => x.z === 9, data)).toEqual(undefined);
17
- });
18
- });