@beterdichtbij/component-library 0.9.0 → 0.11.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 (36) hide show
  1. package/dist/bd-component-lib.cjs.js +30 -30
  2. package/dist/bd-component-lib.es.js +2947 -2871
  3. package/dist/bd-component-lib.umd.js +30 -35
  4. package/dist/components/atoms/BDCollapsableCard/BDCollapsableCard.vue.d.ts +50 -0
  5. package/dist/components/atoms/BDCollapsableCard/BDCollapsableCard.vue.d.ts.map +1 -0
  6. package/dist/components/atoms/icons/IconCaretDown.vue.d.ts +2 -0
  7. package/dist/components/atoms/icons/IconCaretDown.vue.d.ts.map +1 -0
  8. package/dist/components/atoms/icons/index.d.ts +2 -1
  9. package/dist/index.d.ts +3 -2
  10. package/dist/interfaces/BDCollapsableCardProps.d.ts +7 -0
  11. package/dist/layout/BDContainer.vue.d.ts +4 -3
  12. package/dist/scss/_alert.scss +11 -0
  13. package/dist/scss/_article.scss +24 -0
  14. package/dist/scss/_base.scss +2 -0
  15. package/dist/scss/_button.scss +54 -0
  16. package/dist/scss/_card.scss +83 -0
  17. package/dist/scss/_collapsable-card.scss +119 -0
  18. package/dist/scss/_dropdown.scss +102 -0
  19. package/dist/scss/_dropzone.scss +72 -0
  20. package/dist/scss/_forms.scss +2 -0
  21. package/dist/scss/_icons.scss +53 -0
  22. package/dist/scss/_markdown-editor.scss +48 -0
  23. package/dist/scss/_modal.scss +16 -0
  24. package/dist/scss/_pagination.scss +29 -0
  25. package/dist/scss/_profile-image.scss +47 -0
  26. package/dist/scss/_toast.scss +84 -0
  27. package/dist/scss/_user.scss +6 -0
  28. package/dist/scss/_zoomslider.scss +72 -0
  29. package/dist/scss/base/typography.scss +16 -0
  30. package/dist/scss/base/variables.scss +162 -0
  31. package/dist/scss/component-library-styling.scss +18 -0
  32. package/dist/scss/forms/_form-check.scss +12 -0
  33. package/dist/scss/forms/_form-input.scss +4 -0
  34. package/dist/scss/mixins.scss +46 -0
  35. package/package.json +3 -2
  36. package/dist/bd-component-lib.css +0 -5
@@ -0,0 +1,48 @@
1
+ .bd-markdown-editor {
2
+ padding: 0.5rem;
3
+ border: 1px solid $gray-500;
4
+ background-color: $white;
5
+ border-radius: 0.5rem;
6
+
7
+
8
+ &.is-invalid {
9
+ border: 1px solid $color-red;
10
+
11
+ +.invalid-feedback {
12
+ display: block;
13
+ }
14
+ }
15
+
16
+ .ProseMirror {
17
+ padding: 8px;
18
+
19
+ &-focused {
20
+ outline: none;
21
+ }
22
+
23
+ p {
24
+ &.is-editor-empty:first-child::before {
25
+ content: attr(data-placeholder);
26
+ float: left;
27
+ color: #adb5bd;
28
+ pointer-events: none;
29
+ height: 0;
30
+ }
31
+ }
32
+ }
33
+
34
+ &__menu-bottom {
35
+ display: flex;
36
+ gap: 0.5rem;
37
+
38
+ .popover-body {
39
+ padding h3 {
40
+ margin-bottom: 5px;
41
+ }
42
+
43
+ fieldset.form-group {
44
+ margin: 0px;
45
+ }
46
+ }
47
+ }
48
+ }
@@ -0,0 +1,16 @@
1
+ .modal.bd-modal{
2
+ .modal-footer {
3
+ justify-content: flex-start;
4
+ }
5
+
6
+ @include media-breakpoint-up(md) {
7
+ .modal-footer {
8
+ padding-left: 1.75rem;
9
+ padding-bottom:1rem;
10
+ }
11
+ }
12
+
13
+ .btn-close{
14
+ align-self: baseline;
15
+ }
16
+ }
@@ -0,0 +1,29 @@
1
+
2
+ .page-link, .page-link:hover {
3
+ width: 40px;
4
+ height: 40px;
5
+ border:$pagination-border-width solid $pagination-border-color;
6
+ border-radius: $pagination-border-radius;
7
+ font-weight: $font-semibold;
8
+ color: $pagination-color;
9
+ margin-right: 8px;
10
+ background-color: $white;
11
+ cursor: pointer;
12
+
13
+ .active &{
14
+ border-color: $primary;
15
+ background-color: $white;
16
+ color: $font-color-primary;
17
+
18
+ .colleague & {
19
+ border-color: $color-colleague;
20
+ }
21
+
22
+ }
23
+
24
+ .disabled &{
25
+ border:none;
26
+ width: 20px;
27
+ background-color: transparent;
28
+ }
29
+ }
@@ -0,0 +1,47 @@
1
+ $image-sizes:
2
+ "xs" 27px,
3
+ "sm" 48px,
4
+ "md" 60px,
5
+ "lg" 130px;
6
+
7
+
8
+ .bd-profile-picture {
9
+
10
+ @each $variant, $size in $image-sizes {
11
+ &.#{$variant} {
12
+ width:$size;
13
+ height:$size;
14
+ }
15
+ }
16
+
17
+ overflow:hidden;
18
+ position: relative;
19
+ background-color:$color-bg;
20
+
21
+ img{
22
+ width:100%;
23
+ height:100%;
24
+ object-fit:cover;
25
+ }
26
+
27
+ &__footer{
28
+ background-color:rgba($color-black, 0.54);
29
+ font-size: 12px;
30
+ color: $color-white;
31
+ text-align: center;
32
+ height:27px;
33
+ width:100%;
34
+ z-index:1;
35
+ text-decoration: none;
36
+ cursor: pointer;
37
+ &:hover{
38
+ text-decoration: underline;
39
+ color:$color-white;
40
+ }
41
+
42
+ .sm &, .xs &, .md & {
43
+ display: none;
44
+ }
45
+ }
46
+ }
47
+
@@ -0,0 +1,84 @@
1
+ .toast{
2
+ &.bd-toast{
3
+ position: absolute;
4
+ margin: 0.5rem;
5
+ bottom: 0%;
6
+ right: 0%;
7
+ border: 0px;
8
+
9
+ .toast-left-border{
10
+ width: 4px;
11
+ background-color: $info;
12
+ position: absolute;
13
+ left: 0;
14
+ top: 0;
15
+ height: 100%;
16
+ border-radius: $border-radius-default 0px 0px $border-radius-default;
17
+ }
18
+
19
+ .toast-header{
20
+ border-bottom: 1px solid hsla(203, 62%, 51%, 0.4) ;
21
+ padding: 20px 14px;
22
+ display:flex;
23
+ justify-content: baseline;
24
+
25
+ button{
26
+ margin-left:auto;
27
+ margin-right:0px;
28
+ }
29
+
30
+ svg{
31
+ fill: $info;
32
+ margin-right: 1rem;
33
+ }
34
+
35
+ }
36
+
37
+ .toast-body {
38
+ padding-left: 20px;
39
+ }
40
+
41
+ &-danger{
42
+ .toast-left-border{
43
+ background-color: $danger;
44
+ }
45
+ .toast-header{
46
+ border-color: hsla(8, 74%, 53%, 0.4);
47
+
48
+ svg{
49
+ fill: $danger;
50
+ }
51
+ }
52
+
53
+
54
+ }
55
+
56
+ &-warning{
57
+ .toast-left-border{
58
+ background-color: $warning;
59
+ }
60
+ .toast-header{
61
+ border-color: hsla(48, 100%, 47%, 0.4);
62
+
63
+ svg{
64
+ fill: $warning;
65
+ }
66
+ }
67
+
68
+
69
+ }
70
+
71
+ &-success{
72
+ .toast-left-border{
73
+ background-color: $success;
74
+ }
75
+ .toast-header{
76
+ border-color: hsla(155, 100%, 37%,0.4);
77
+ svg{
78
+ fill: $success
79
+ }
80
+ }
81
+
82
+ }
83
+ }
84
+ }
@@ -0,0 +1,6 @@
1
+ .bd-user{
2
+ display: flex;
3
+ align-items: center;
4
+ gap: 16px;
5
+ // dit is de utility variant: d-flex align-items-center gap-3"
6
+ }
@@ -0,0 +1,72 @@
1
+ $form-range-track-height: .2rem;
2
+ $form-range-track-bg: #eceff1;
3
+ $form-range-track-border-radius: 8px;
4
+ $form-range-thumb-bg: #ABB1BF;
5
+
6
+ @mixin track {
7
+ background: $form-range-track-bg;
8
+ cursor: $form-range-track-cursor;
9
+ height: $form-range-track-height;
10
+ width: $form-range-track-width;
11
+ }
12
+
13
+ @mixin thumb {
14
+ background: $form-range-thumb-bg;
15
+ border: 1px solid white;
16
+ border-radius: $form-range-thumb-border-radius;
17
+ cursor: $form-range-track-cursor;
18
+ height: $form-range-thumb-height;
19
+ width: $form-range-thumb-width;
20
+ }
21
+
22
+ .bd-zoom-slider {
23
+ width: auto;
24
+ background-color: $primary;
25
+ border-radius: 8px;
26
+ padding: 10px;
27
+
28
+ .bd-zoom-slider-min-button {
29
+ align-items: center;
30
+ cursor: $form-range-track-cursor;
31
+ height: 20px;
32
+ width: 20px;
33
+ fill: white;
34
+ margin-right: 10px;
35
+ }
36
+
37
+ .bd-zoom-slider-plus-button {
38
+ align-items: center;
39
+ cursor: $form-range-track-cursor;
40
+ height: 20px;
41
+ width: 20px;
42
+ fill: white;
43
+ margin-left: 10px;
44
+ }
45
+
46
+ .bd-zoom-slider-input{
47
+ -webkit-appearance: none;
48
+ appearance: none;
49
+ margin: 8px;
50
+ border-radius: 8px;
51
+ width: $form-range-track-width;
52
+
53
+ &::-webkit-slider-runnable-track {
54
+ @include track;
55
+ }
56
+
57
+ &::-webkit-slider-thumb {
58
+ @include thumb;
59
+ -webkit-appearance: none;
60
+ margin-top: -6px;
61
+ }
62
+
63
+ &::-moz-range-track {
64
+ @include track;
65
+ }
66
+
67
+ &::-moz-range-thumb {
68
+ @include thumb;
69
+ }
70
+ }
71
+
72
+ }
@@ -0,0 +1,16 @@
1
+ h5 {
2
+ .bd-user & {
3
+ margin: 0 0 4px;
4
+ }
5
+
6
+ .toast & {
7
+ margin-bottom: initial;
8
+ }
9
+
10
+ }
11
+
12
+ span {
13
+ .bd-user &{
14
+ color: #6a758a;
15
+ }
16
+ }
@@ -0,0 +1,162 @@
1
+ //gray scale
2
+ $white: #fff;
3
+ $gray-100: #f8f9fa;
4
+ $gray-200: #e9ecef;
5
+ $gray-300: #dee2e6;
6
+ $gray-400: #ced4da;
7
+ $gray-500: #adb5bd;
8
+ $gray-600: #6c757d;
9
+ $gray-700: #495057;
10
+ $gray-800: #343a40;
11
+ $gray-900: #212529;
12
+ $black: #000;
13
+
14
+ // colors
15
+ $blue: #3594CF; // BD-blue
16
+ $indigo: #6610f2;
17
+ $purple: #6f42c1;
18
+ $pink: #d63384;
19
+ $red: #e0452c; // BD-red
20
+ $orange: #fd7e14;
21
+ $yellow: hsl(48, 100%, 47%); // BD-yellow
22
+ $green: #00BF6F; // BD-green
23
+ $teal: #20c997;
24
+ $cyan: #0dcaf0;
25
+
26
+ // theme colors
27
+ $danger:$red;
28
+ $primary:$blue;
29
+ $success:$green;
30
+ $warning:$yellow;
31
+ $secondary:$gray-600;
32
+ $info:$blue;
33
+ $light:$white;
34
+ $dark:$gray-900;
35
+
36
+ $grid-breakpoints: (xs: 0,
37
+ sm: 576px,
38
+ md: 768px,
39
+ lg: 850px,
40
+ xl: 1200px,
41
+ xxl: 1400px);
42
+
43
+ // mapping
44
+ $theme-colors: (
45
+ "primary": $primary,
46
+ "secondary": $secondary,
47
+ "info": $info,
48
+ "warning": $warning,
49
+ "danger": $danger,
50
+ "success": $success,
51
+ "light": $light,
52
+ "dark" : $dark
53
+ );
54
+
55
+ //variables
56
+ $font-family-base: 'Work Sans',
57
+ sans-serif;
58
+ $headings-font-family: $font-family-base;
59
+
60
+ //Old BD variables
61
+ $color-blue :#4D5875; // is een donkerdere kleur dan BD-blauw
62
+ $color-red:#e0462e;
63
+ $color-darkblue:#394156;
64
+ $color-lightblue: #EBF3F8;
65
+ $color-bg:#F5F5F5;
66
+
67
+ $color-white : #ffffff;
68
+ $color-black : #000000;
69
+
70
+ $color-colleague : $green;
71
+
72
+ //variables font
73
+ $font-family-base: 'Work Sans',
74
+ sans-serif;
75
+ $font-secondary : 'Quicksand',
76
+ sans-serif;
77
+
78
+ $font-light : 300;
79
+ $font-normal : 400;
80
+ $font-medium : 500;
81
+ $font-semibold : 600;
82
+ $font-bold : 700;
83
+ $font-black : 900;
84
+
85
+ $font-color-primary : $color-darkblue;
86
+
87
+
88
+
89
+ //dropdown item vars
90
+ $dropdown-bg: #fff;
91
+ $dropdown-color: $color-blue;
92
+ $dropdown-border-radius: 0px;
93
+ $dropdown-border-width: 0px;
94
+ $dropdown-box-shadow: 0 2px 5px 0 rgba(77,88,117,.2);
95
+ $dropdown-item-padding-y: 0.25rem;
96
+ $dropdown-item-padding-x: 1.5rem;
97
+
98
+ //caret
99
+ $caret-width: 0.5rem;
100
+
101
+ //border
102
+ $border-radius-default: 8px;
103
+
104
+
105
+ // scss-docs-start form-label-variables
106
+ $form-label-font-size: 15px;
107
+ $form-label-font-weight:700;
108
+ $form-label-color:$color-darkblue;
109
+ $form-label-margin-bottom: 0;
110
+ // scss-docs-end form-label-variables
111
+
112
+ // scss-docs-start form-input-variables
113
+ $input-color: $color-blue;
114
+ $input-border-color: #abb1bf;
115
+ $input-border-width:1px;
116
+ $input-disabled-color: $gray-300;
117
+ $input-disabled-bg: $color-bg;
118
+ $input-disabled-border-color: $gray-300;
119
+ $form-feedback-icon-invalid: none;
120
+ $form-feedback-icon-valid: none;
121
+ // scss-docs-end form-input-variables
122
+
123
+ //checkbox
124
+ $form-check-input-width: calc(22px/16px * 1em) ;
125
+ $form-check-input-border: 1px solid $gray-500;
126
+ $form-check-input-checked-bg-color: $white;
127
+ $form-check-input-checked-border-color: $primary;
128
+ $form-check-input-checked-bg-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="15" viewBox="0 0 20 15"><g id="Symbols" fill="none" fill-rule="evenodd" stroke="none" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"><g id="form/checkbox-checked" stroke="%233594CF" stroke-width="3" transform="translate(-1 -3)"><polyline id="Shape" points="19 5 8 16 3 11"/></g></g></svg>');
129
+
130
+ //badge
131
+ $badge-padding-y: 8px;
132
+ $badge-padding-x: 4px;
133
+ $badge-border-radius: $border-radius-default;
134
+
135
+ //badge
136
+ $badge-padding-y: 8px;
137
+ $badge-padding-x: 4px;
138
+ $badge-border-radius: $border-radius-default;
139
+
140
+ //bdmodal
141
+ $modal-header-border-width: 0px;
142
+ $modal-footer-border-width: 0px;
143
+ $modal-inner-padding: 1rem 2rem;
144
+ $modal-header-padding: 1rem 2rem;
145
+
146
+ //btn-close
147
+ $btn-close-opacity:1;
148
+
149
+ //toast
150
+ $toast-background-color: $color-white;
151
+ $toast-color: $color-darkblue;
152
+ $toast-padding-x: 1.25rem;
153
+ $toast-border-radius: $border-radius-default;
154
+ $toast-header-background-color : $color-white;
155
+ $toast-header-color:$color-darkblue;
156
+
157
+ // pagination variables
158
+
159
+ $pagination-color: $gray-600;
160
+ $pagination-border-color:$gray-500;
161
+ $pagination-border-radius: 4px;
162
+ $pagination-border-width: 1px;
@@ -0,0 +1,18 @@
1
+ @import "mixins";
2
+ @import "base";
3
+ @import "button";
4
+ @import "article";
5
+ @import "alert";
6
+ @import "zoomslider";
7
+ @import "card";
8
+ @import "collapsable-card";
9
+ @import "profile-image";
10
+ @import "icons";
11
+ @import "pagination";
12
+ @import "forms";
13
+ @import "toast";
14
+ @import "dropdown";
15
+ @import "dropzone";
16
+ @import "user";
17
+ @import "markdown-editor";
18
+ @import "modal";
@@ -0,0 +1,12 @@
1
+ .form-check.bd-form-checkbox{
2
+ input {
3
+ background-size: 16px 11px;
4
+ background-repeat: no-repeat;
5
+ background-position: 50%;
6
+
7
+ &.form-check-input.is-invalid{
8
+ border-color: $gray-500;
9
+ background-color: revert;
10
+ }
11
+ }
12
+ }
@@ -0,0 +1,4 @@
1
+ .form-label {
2
+ line-height: 33px;
3
+ padding:0;
4
+ }
@@ -0,0 +1,46 @@
1
+ @mixin alert($color, $bg-color) {
2
+ border-radius: 8px;
3
+ padding: 15px;
4
+ font-size: 16px;
5
+ background-color: $bg-color;
6
+ color: $color;
7
+ border: 1px solid $color;
8
+ svg {
9
+ fill: $color;
10
+ &.icon{
11
+ margin-right:8px;
12
+ }
13
+ }
14
+ }
15
+
16
+ @mixin button($variant, $color, $bg-color, $hover-color, $hover-bg-color, $border, $solid, $border-color) {
17
+ color: $color;
18
+ background-color: $bg-color;
19
+ border:$border $solid $border-color;
20
+
21
+ svg {
22
+ fill: $color;
23
+ path{
24
+ fill:$color
25
+ }
26
+ }
27
+
28
+ &:hover, &:focus{
29
+ color: $hover-color;
30
+ background-color: $hover-bg-color;
31
+ border:$border $solid $border-color;
32
+
33
+ svg {
34
+ fill: $hover-color;
35
+ path{
36
+ fill:$hover-color;
37
+ }
38
+ }
39
+ }
40
+
41
+ &.disabled{
42
+ opacity: 0.5;
43
+ color: $color;
44
+ background-color: $bg-color;
45
+ }
46
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@beterdichtbij/component-library",
3
3
  "private": false,
4
- "version": "0.9.0",
4
+ "version": "0.11.0",
5
5
  "author": "Ralph van der Neut <rvanderneut@beterdichtbij.nl>",
6
6
  "type": "module",
7
7
  "files": [
@@ -67,7 +67,6 @@
67
67
  "@tiptap/extension-underline": "2.1.12",
68
68
  "@tiptap/pm": "2.1.12",
69
69
  "@tiptap/vue-3": "2.1.12",
70
- "@types/bootstrap": "5.2.10",
71
70
  "@vueuse/core": "10.6.1",
72
71
  "dropzone": "5.9.3",
73
72
  "uid": "2.0.2"
@@ -84,6 +83,7 @@
84
83
  "@storybook/testing-library": "^0.2.2",
85
84
  "@storybook/vue3": "^7.0.11",
86
85
  "@storybook/vue3-vite": "^7.0.11",
86
+ "@types/bootstrap": "5.2.10",
87
87
  "@types/dropzone": "5.7.6",
88
88
  "@typescript-eslint/eslint-plugin": "6.8.0",
89
89
  "@typescript-eslint/parser": "6.8.0",
@@ -101,6 +101,7 @@
101
101
  "prettier": "3.0.3",
102
102
  "react": "^18.2.0",
103
103
  "react-dom": "^18.2.0",
104
+ "rollup-plugin-copy": "3.5.0",
104
105
  "rollup-plugin-typescript2": "^0.34.1",
105
106
  "sass": "^1.62.1",
106
107
  "storybook": "^7.0.11",