@itfin/components 1.2.0 → 1.2.4

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 (32) hide show
  1. package/package.json +14 -13
  2. package/src/ITFSettings.js +8 -0
  3. package/src/assets/scss/_dark-theme.scss +2 -2
  4. package/src/assets/scss/_variables.scss +1 -0
  5. package/src/assets/scss/components/_search-input.scss +3 -2
  6. package/src/assets/scss/components/_selected.scss +3 -2
  7. package/src/assets/scss/directives/loading.scss +20 -13
  8. package/src/assets/scss/directives/tooltip.scss +17 -9
  9. package/src/assets/scss/main.scss +7 -6
  10. package/src/components/app/message.js +2 -2
  11. package/src/components/avatar/index.stories.js +4 -5
  12. package/src/components/button/Button.vue +48 -43
  13. package/src/components/datepicker/DatePicker.vue +10 -6
  14. package/src/components/datepicker/datepicker.scss +25 -23
  15. package/src/components/icon/components/backward10.vue +10 -0
  16. package/src/components/icon/components/forward10.vue +9 -0
  17. package/src/components/icon/components/pause.vue +10 -0
  18. package/src/components/icon/components/play.vue +7 -0
  19. package/src/components/modal/Modal.vue +1 -1
  20. package/src/components/pagination/Pagination.vue +0 -1
  21. package/src/components/pdf-viewer/pdfjs-dist/cmaps/CNS2-V.bcmap +2 -2
  22. package/src/components/pdf-viewer/pdfjs-dist/cmaps/ETenms-B5-H.bcmap +2 -2
  23. package/src/components/pdf-viewer/styles/_colors.scss +2 -2
  24. package/src/components/popover/Popover.vue +9 -5
  25. package/src/components/select/Dropdown.vue +1 -1
  26. package/src/components/select/Select.vue +6 -8
  27. package/src/components/table/Table.vue +4 -2
  28. package/src/components/tabs/tabs.scss +0 -2
  29. package/src/components/tree/TreeView.vue +0 -1
  30. package/src/components/wizard/wizard.scss +0 -2
  31. package/src/assets/scss/main.css +0 -3180
  32. package/src/components/datepicker/datepicker.css +0 -3665
package/package.json CHANGED
@@ -1,18 +1,19 @@
1
1
  {
2
2
  "name": "@itfin/components",
3
- "version": "1.2.0",
4
- "main": "dist/itfin-components.umd.js",
5
- "unpkg": "dist/itfin-components.common.js",
3
+ "version": "1.2.4",
6
4
  "author": "Vitalii Savchuk <esvit666@gmail.com>",
7
- "license": "ISC",
8
5
  "scripts": {
9
- "dev": "start-storybook",
10
6
  "serve": "vue-cli-service serve",
11
7
  "build": "vue-cli-service build --target lib --name ITFComponents src/main.js",
12
8
  "test:unit": "vue-cli-service test:unit",
13
9
  "lint": "vue-cli-service lint",
14
- "build:storybook": "build-storybook -c .storybook -o .out"
10
+ "build:storybook": "build-storybook -c .storybook -o .out",
11
+ "dev": "start-storybook",
12
+ "storybook:build": "vue-cli-service storybook:build -c config/storybook",
13
+ "storybook:serve": "vue-cli-service storybook:serve -p 6006 -c config/storybook"
15
14
  },
15
+ "main": "dist/itfin-components.umd.js",
16
+ "unpkg": "dist/itfin-components.common.js",
16
17
  "files": [
17
18
  "dist",
18
19
  "src/"
@@ -39,10 +40,11 @@
39
40
  "vue2-daterange-picker": "^0.6.1"
40
41
  },
41
42
  "devDependencies": {
42
- "@storybook/addon-docs": "^6.3.8",
43
- "@storybook/addon-knobs": "^6.3.0",
44
- "@storybook/addon-viewport": "^6.3.8",
45
- "@storybook/vue": "^6.3.8",
43
+ "@babel/plugin-proposal-numeric-separator": "^7.18.6",
44
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4",
45
+ "@storybook/addon-docs": "=6.3.8",
46
+ "@storybook/addon-viewport": "=6.3.8",
47
+ "@storybook/vue": "=6.3.8",
46
48
  "@vue/cli-plugin-babel": "^4.5.8",
47
49
  "@vue/cli-plugin-eslint": "^4.5.8",
48
50
  "@vue/cli-plugin-unit-jest": "^4.5.8",
@@ -53,9 +55,7 @@
53
55
  "eslint-plugin-import": "^2.22.1",
54
56
  "eslint-plugin-vue": "^7.1.0",
55
57
  "fibers": "^5.0.0",
56
- "find-in-files": "^0.5.0",
57
58
  "marked": "^1.2.3",
58
- "ncp": "^2.0.0",
59
59
  "sass": "^1.29.0",
60
60
  "sass-loader": "^10.0.5",
61
61
  "vue-class-component": "^7.2.6",
@@ -93,5 +93,6 @@
93
93
  ],
94
94
  "jest": {
95
95
  "preset": "@vue/cli-plugin-unit-jest"
96
- }
96
+ },
97
+ "license": "ISC"
97
98
  }
@@ -1,10 +1,18 @@
1
1
  class ITFSettings {
2
2
  options = {
3
3
  firstDayOfWeek: 'Monday',
4
+ defaultLocale: 'en_US',
4
5
  defaultDisplayDateFormat: 'MM/dd/yyyy',
5
6
  // defaultDisplayDateFormat: 'dd.MM.yyyy',
6
7
  };
7
8
 
9
+ get supportLanguages() {
10
+ return [
11
+ { locale: 'en_US', name: 'English', dateFormat: 'MM/dd/yyyy' },
12
+ { locale: 'uk_UA', name: 'Українська (Ukrainian)', dateFormat: 'dd.MM.yyyy' },
13
+ ];
14
+ }
15
+
8
16
  get firstDayOfWeek() {
9
17
  return this.options.firstDayOfWeek;
10
18
  }
@@ -1,5 +1,5 @@
1
- @media (prefers-color-scheme: notdark) {
2
- body {
1
+ @media (prefers-color-scheme: dark) {
2
+ .support-dark body {
3
3
  background-color: $dark-body-bg !important;
4
4
  color: $dark-body-color !important;
5
5
 
@@ -72,6 +72,7 @@ $pagination-border-width: 0;
72
72
  // 3. Include remainder of required Bootstrap stylesheets
73
73
  @import "~bootstrap/scss/variables.scss";
74
74
  @import "~bootstrap/scss/mixins.scss";
75
+ @import "~bootstrap/scss/maps.scss";
75
76
  @import "~bootstrap/scss/utilities.scss";
76
77
 
77
78
  $custom-colors: (
@@ -40,8 +40,9 @@ $font-size: 1em;
40
40
 
41
41
  .vs__search::placeholder {
42
42
  color: mix($body-color, $body-bg, 50%);
43
-
44
- @media (prefers-color-scheme: notdark) {
43
+ }
44
+ @media (prefers-color-scheme: dark) {
45
+ .support-dark .vs__search::placeholder {
45
46
  color: mix($dark-body-color, $dark-body-bg, 50%);
46
47
  }
47
48
  }
@@ -20,8 +20,9 @@
20
20
  &.badge {
21
21
  padding: 0.1875rem 0.5rem;
22
22
  }
23
-
24
- @media (prefers-color-scheme: notdark) {
23
+ }
24
+ @media (prefers-color-scheme: dark) {
25
+ .support-dark .vs--multiple .vs__selected {
25
26
  background-color: #221;
26
27
  color: $dark-body-color;
27
28
  }
@@ -2,6 +2,21 @@
2
2
 
3
3
  :root {
4
4
  --loader-color: #1967d2;
5
+ --itf-spinner-border-color: rgba(97, 97, 97, 0.29);
6
+ --itf-spinner-main-color: rgb(100, 100, 100);
7
+ --itf-spinner-white-border-color: rgba(158, 158, 158, 0.29);
8
+ --itf-spinner-white-main-color: rgb(155, 155, 155);
9
+ --itf-loading-bg-color: rgba(255, 255, 255, .4);
10
+ }
11
+
12
+ @media (prefers-color-scheme: dark) {
13
+ .support-dark {
14
+ --itf-spinner-border-color: rgba(158, 158, 158, 0.29);
15
+ --itf-spinner-main-color: rgb(155, 155, 155);
16
+ --itf-spinner-white-border-color: rgba(97, 97, 97, 0.29);
17
+ --itf-spinner-white-main-color: rgb(100, 100, 100);
18
+ --itf-loading-bg-color: rgba($dark-body-bg, .75);
19
+ }
5
20
  }
6
21
 
7
22
  .itf-spinner {
@@ -17,19 +32,15 @@
17
32
  height: 1.5rem;
18
33
  border-width: 2px;
19
34
  border-style: solid;
20
- border-color: rgba(97, 97, 97, 0.29);
21
- border-top-color: rgb(100, 100, 100);
35
+ border-color: var(--itf-spinner-border-color);
36
+ border-top-color: var(--itf-spinner-main-color);
22
37
  -webkit-animation: spinner 0.7s linear infinite;
23
38
  animation: spinner 0.7s linear infinite;
24
39
  mix-blend-mode: difference;
25
40
 
26
41
  &.itf-spinner__white {
27
- border-color: rgba(158, 158, 158, 0.29);
28
- border-top-color: rgb(155, 155, 155);
29
- }
30
- @media (prefers-color-scheme: notdark) {
31
- border-color: rgba(158, 158, 158, 0.29);
32
- border-top-color: rgb(155, 155, 155);
42
+ border-color: var(--itf-spinner-white-border-color);
43
+ border-top-color: var(--itf-spinner-white-main-color);
33
44
  }
34
45
  }
35
46
 
@@ -42,7 +53,7 @@
42
53
  cursor: progress;
43
54
  pointer-events: all;
44
55
  position: absolute;
45
- background-color: rgba(255, 255, 255, .4);
56
+ background-color: var(--itf-loading-bg-color);
46
57
  top: 0;
47
58
  left: 0;
48
59
  right: 0;
@@ -51,10 +62,6 @@
51
62
  color: var(--loader-color);
52
63
  backdrop-filter: blur(5px);
53
64
 
54
- @media (prefers-color-scheme: notdark) {
55
- background-color: rgba($dark-body-bg, .75);
56
- }
57
-
58
65
  &-message {
59
66
  text-align: center;
60
67
  position: absolute;
@@ -3,21 +3,29 @@
3
3
  $tooltip-color: #fff9ae;
4
4
  $dark-tooltip-color: #7b52eb;
5
5
 
6
+ :root {
7
+ --itf-tooltip-shadow: 0 0 20px 4px rgba(154, 161, 177, .15), 0 4px 80px -8px rgba(36, 40, 47, .25), 0 4px 4px -2px rgba(91, 94, 105, .15);
8
+ --itf-tooltip-color: $body-color;
9
+ --itf-tooltip-bg-color: $tooltip-color;
10
+ }
11
+
12
+ @media (prefers-color-scheme: dark) {
13
+ .support-dark {
14
+ --itf-tooltip-shadow: 0 0 20px 4px rgba(87, 78, 101, 0.15), 0 4px 80px -8px rgba(211, 208, 219, 0.25), 0 4px 4px -2px rgba(156, 150, 164, 0.15);
15
+ --itf-tooltip-color: $dark-body-color;
16
+ --itf-tooltip-bg-color: $dark-tooltip-color;
17
+ }
18
+ }
19
+
6
20
  .tippy-box[data-theme~=itfin] {
7
- color: $body-color;
8
- background-color: $tooltip-color;
21
+ color: var(--itf-tooltip-color);
22
+ background-color: var(--itf-tooltip-bg-color);
9
23
  font-size: 12px;
10
24
  border-radius: 5px;
11
- box-shadow: 0 0 20px 4px rgba(154, 161, 177, .15), 0 4px 80px -8px rgba(36, 40, 47, .25), 0 4px 4px -2px rgba(91, 94, 105, .15);
25
+ box-shadow: var(--itf-tooltip-shadow);
12
26
  padding: 5px;
13
27
  cursor: default;
14
28
 
15
- @media (prefers-color-scheme: notdark) {
16
- background-color: $dark-tooltip-color;
17
- color: $dark-body-color;
18
- box-shadow: 0 0 20px 4px rgba(87, 78, 101, 0.15), 0 4px 80px -8px rgba(211, 208, 219, 0.25), 0 4px 4px -2px rgba(156, 150, 164, 0.15);
19
- }
20
-
21
29
  &[data-placement^=top] > .tippy-arrow:before {
22
30
  border-top-color: $tooltip-color
23
31
  }
@@ -2,7 +2,6 @@
2
2
  @import './fonts.scss';
3
3
  @import './dark-theme.scss';
4
4
  @import './scrollbar';
5
- @import '~bootstrap/scss/spinners.scss';
6
5
 
7
6
  .color-project-tnm {
8
7
  color: $project-tnm;
@@ -23,12 +22,14 @@
23
22
  }
24
23
 
25
24
 
26
- @media (prefers-color-scheme: notdark) {
27
- a {
28
- color: $dark-btn-primary-color;
25
+ @media (prefers-color-scheme: dark) {
26
+ .support-dark {
27
+ a {
28
+ color: $dark-btn-primary-color;
29
29
 
30
- &:hover {
31
- color: darken($dark-btn-primary-color, 10%);
30
+ &:hover {
31
+ color: darken($dark-btn-primary-color, 10%);
32
+ }
32
33
  }
33
34
  }
34
35
  }
@@ -32,9 +32,9 @@ const Message = function (options) {
32
32
  options.onClose = function () {
33
33
  Message.close(id, userOnClose);
34
34
  };
35
-
35
+ const parent = document.getElementById('itf-app');
36
36
  const instance = new MessageConstructor({
37
- parent: document.getElementById('itf-app').__vue__,
37
+ parent: parent ? parent.__vue__ : null,
38
38
  el: document.createElement('div'),
39
39
  data: options
40
40
  });
@@ -1,5 +1,4 @@
1
1
  import { storiesOf } from '@storybook/vue';
2
- import { withKnobs, boolean, text, number } from '@storybook/addon-knobs';
3
2
  import itfAvatar from './Avatar.vue';
4
3
 
5
4
  storiesOf('Common', module)
@@ -10,16 +9,16 @@ storiesOf('Common', module)
10
9
  },
11
10
  props: {
12
11
  src: {
13
- default: text('Url', 'https://img.freepik.com/free-vector/cartoon-monster-face-avatar-halloween-monster_6996-1164.jpg?size=338&ext=jpg'),
12
+ default: 'https://img.freepik.com/free-vector/cartoon-monster-face-avatar-halloween-monster_6996-1164.jpg?size=338&ext=jpg',
14
13
  },
15
14
  letters: {
16
- default: text('Letter when no image', 'AA'),
15
+ default: 'AA',
17
16
  },
18
17
  size: {
19
- default: number('Photo size', 64)
18
+ default: 64
20
19
  },
21
20
  statusBadge: {
22
- default: boolean('Show status badge', false)
21
+ default: false
23
22
  },
24
23
  },
25
24
  template: `<div>
@@ -1,6 +1,52 @@
1
1
  <style lang="scss">
2
2
  @import '../../assets/scss/main';
3
- //@import '~bootstrap/scss/buttons';
3
+
4
+ :root {
5
+ --itf-button-basic-bg-color: rgba(9, 30, 66, 0.08);
6
+ }
7
+
8
+ @media (prefers-color-scheme: dark) {
9
+ .support-dark {
10
+ --itf-button-basic-bg-color: rgba(246, 225, 189, 0.08);
11
+
12
+ .itf-button.btn {
13
+ &.btn-secondary {
14
+ &, &.disabled {
15
+ background-color: $dark-btn-secondary-color;
16
+ border-color: $dark-btn-secondary-color;
17
+ }
18
+
19
+ &:active, &:focus {
20
+ background-color: lighten($dark-btn-secondary-color, 5%);
21
+ border-color: lighten($dark-btn-secondary-color, 5%);
22
+ }
23
+ &:hover {
24
+ background-color: lighten($dark-btn-secondary-color, 10%);
25
+ border-color: lighten($dark-btn-secondary-color, 10%);
26
+ }
27
+ }
28
+ &.btn-primary {
29
+ &, &.disabled {
30
+ background-color: $dark-btn-primary-color;
31
+ border-color: $dark-btn-primary-color;
32
+ color: $body-color;
33
+ }
34
+
35
+ &:active, &:focus {
36
+ color: $body-color;
37
+ background-color: darken($dark-btn-primary-color, 5%);
38
+ border-color: darken($dark-btn-primary-color, 5%);
39
+ box-shadow: 0 0 0 0.125rem mix($dark-btn-primary-color, $dark-body-bg, 50%);
40
+ }
41
+ &:hover {
42
+ color: $body-color;
43
+ background-color: darken($dark-btn-primary-color, 10%);
44
+ border-color: darken($dark-btn-primary-color, 10%);
45
+ }
46
+ }
47
+ }
48
+ }
49
+ }
4
50
 
5
51
  .itf-button.btn {
6
52
  display: inline-flex;
@@ -42,11 +88,7 @@
42
88
  }
43
89
  &.btn-basic {
44
90
  &:hover, &.active {
45
- background-color: rgba(9, 30, 66, 0.08);
46
-
47
- @media (prefers-color-scheme: notdark) {
48
- background-color: rgba(246, 225, 189, 0.08);
49
- }
91
+ background-color: var(--itf-button-basic-bg-color);
50
92
  }
51
93
  }
52
94
  &.btn-icon {
@@ -68,43 +110,6 @@
68
110
  }
69
111
  }
70
112
  }
71
-
72
- @media (prefers-color-scheme: notdark) {
73
- &.btn-secondary {
74
- &, &.disabled {
75
- background-color: $dark-btn-secondary-color;
76
- border-color: $dark-btn-secondary-color;
77
- }
78
-
79
- &:active, &:focus {
80
- background-color: lighten($dark-btn-secondary-color, 5%);
81
- border-color: lighten($dark-btn-secondary-color, 5%);
82
- }
83
- &:hover {
84
- background-color: lighten($dark-btn-secondary-color, 10%);
85
- border-color: lighten($dark-btn-secondary-color, 10%);
86
- }
87
- }
88
- &.btn-primary {
89
- &, &.disabled {
90
- background-color: $dark-btn-primary-color;
91
- border-color: $dark-btn-primary-color;
92
- color: $body-color;
93
- }
94
-
95
- &:active, &:focus {
96
- color: $body-color;
97
- background-color: darken($dark-btn-primary-color, 5%);
98
- border-color: darken($dark-btn-primary-color, 5%);
99
- box-shadow: 0 0 0 0.125rem mix($dark-btn-primary-color, $dark-body-bg, 50%);
100
- }
101
- &:hover {
102
- color: $body-color;
103
- background-color: darken($dark-btn-primary-color, 10%);
104
- border-color: darken($dark-btn-primary-color, 10%);
105
- }
106
- }
107
- }
108
113
  }
109
114
  </style>
110
115
  <!---template>
@@ -54,6 +54,16 @@
54
54
  @import '../../assets/scss/directives/tooltip';
55
55
  @import '../../assets/scss/input-addon';
56
56
 
57
+ @media (prefers-color-scheme: dark) {
58
+ .support-dark .itf-datepicker {
59
+ &__dropdown {
60
+ background-color: $dark-body-bg;
61
+ border-color: $dark-border-color;
62
+ box-shadow: 0 0 0 2px $dark-input-focus-border;
63
+ }
64
+ }
65
+ }
66
+
57
67
  .itf-datepicker {
58
68
  &.with-addon .addon-end {
59
69
  pointer-events: all;
@@ -75,12 +85,6 @@
75
85
  // Avoid using mixin so we can pass custom focus shadow properly
76
86
  box-shadow: $input-btn-focus-box-shadow;
77
87
  }
78
-
79
- @media (prefers-color-scheme: notdark) {
80
- background-color: $dark-body-bg;
81
- border-color: $dark-border-color;
82
- box-shadow: 0 0 0 2px $dark-input-focus-border;
83
- }
84
88
  }
85
89
  }
86
90
  </style>
@@ -1,7 +1,29 @@
1
1
  @import '../../assets/scss/variables';
2
- /* -------------------------------------------------
3
- Datepicker vars
4
- ------------------------------------------------- */
2
+
3
+
4
+
5
+ @media (prefers-color-scheme: dark) {
6
+ .support-dark .air-datepicker {
7
+ --adp-background-color: #{$dark-body-bg};
8
+ --adp-color-current-date: #{$dark-primary};
9
+ --adp-cell-background-color-selected: #{$dark-primary};
10
+ --adp-cell-background-color-selected-hover: #{lighten($dark-primary, 10%)};
11
+ --adp-day-name-color: #bfbfbf;
12
+ --adp-color: #dedede;
13
+ --adp-color-other-month: #4a4a4a;
14
+ --adp-cell-background-color-in-range: #{$dark-input-focus-border-color};
15
+ --adp-background-color-hover: #{darken($dark-primary, 25%)};
16
+ --adp-border-color-inner: #{lighten($dark-body-bg, 25%)};
17
+
18
+ --adp-background-color-selected-other-month-focused: #{$dark-primary};
19
+ --adp-background-color-selected-other-month: #{lighten($dark-primary, 10%)};
20
+
21
+ .air-datepicker-cell.-selected-, .air-datepicker-cell.-selected-.-current- {
22
+ color: $dark-body-bg;
23
+ }
24
+ }
25
+ }
26
+
5
27
  .air-datepicker {
6
28
  --adp-width: 246px; // Day cell width will be equal to 34px
7
29
  --adp-z-index: 100;
@@ -39,26 +61,6 @@
39
61
  //--adp-border-color-inline: #d7d7d7;
40
62
  --adp-border-color-inline: transparent;
41
63
 
42
- @media (prefers-color-scheme: notdark) {
43
- --adp-background-color: #{$dark-body-bg};
44
- --adp-color-current-date: #{$dark-primary};
45
- --adp-cell-background-color-selected: #{$dark-primary};
46
- --adp-cell-background-color-selected-hover: #{lighten($dark-primary, 10%)};
47
- --adp-day-name-color: #bfbfbf;
48
- --adp-color: #dedede;
49
- --adp-color-other-month: #4a4a4a;
50
- --adp-cell-background-color-in-range: #{$dark-input-focus-border-color};
51
- --adp-background-color-hover: #{darken($dark-primary, 25%)};
52
- --adp-border-color-inner: #{lighten($dark-body-bg, 25%)};
53
-
54
- --adp-background-color-selected-other-month-focused: #{$dark-primary};
55
- --adp-background-color-selected-other-month: #{lighten($dark-primary, 10%)};
56
-
57
- .air-datepicker-cell.-selected-, .air-datepicker-cell.-selected-.-current- {
58
- color: $dark-body-bg;
59
- }
60
- }
61
-
62
64
  --adp-nav-height: 32px;
63
65
  --adp-nav-arrow-color: var(--adp-color-secondary);
64
66
  --adp-nav-color-secondary: var(--adp-color-secondary);
@@ -0,0 +1,10 @@
1
+ <template><svg viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill="currentColor" d="M26,18A10,10,0,1,1,16,8h4v5l6-6L20,1V6H16A12,12,0,1,0,28,18Z" transform="translate(32 0) scale(-1,1)"/>
3
+ <path
4
+ fill="currentColor"
5
+ d="M19.63,22.13a2.84,2.84,0,0,1-1.28-.27,2.44,2.44,0,0,1-.89-.77,3.57,3.57,0,0,1-.52-1.25,7.69,7.69,0,0,1-.17-1.68,7.83,7.83,0,0,1,.17-1.68,3.65,3.65,0,0,1,.52-1.25,2.44,2.44,0,0,1,.89-.77,2.84,2.84,0,0,1,1.28-.27,2.44,2.44,0,0,1,2.16,1,5.23,5.23,0,0,1,.7,2.93,5.23,5.23,0,0,1-.7,2.93A2.44,2.44,0,0,1,19.63,22.13Zm0-1.22a1.07,1.07,0,0,0,1-.55A3.38,3.38,0,0,0,21,18.85V17.47a3.31,3.31,0,0,0-.29-1.5,1.23,1.23,0,0,0-2.06,0,3.31,3.31,0,0,0-.29,1.5v1.38a3.38,3.38,0,0,0,.29,1.51A1.06,1.06,0,0,0,19.63,20.91Z"
6
+ transform="translate(0 0)"
7
+ />
8
+ <path fill="currentColor" d="M10.63,22V20.82h2V15.63l-1.86,1-.55-1.06,2.32-1.3H14v6.5h1.78V22Z" transform="translate(0 0)"/>
9
+ </svg>
10
+ </template>
@@ -0,0 +1,9 @@
1
+ <template><svg viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill="currentColor" d="M26,18A10,10,0,1,1,16,8h4v5l6-6L20,1V6H16A12,12,0,1,0,28,18Z" transform="translate(0 0)"/>
3
+ <path
4
+ fill="currentColor"
5
+ d="M19.63,22.13a2.84,2.84,0,0,1-1.28-.27,2.44,2.44,0,0,1-.89-.77,3.57,3.57,0,0,1-.52-1.25,7.69,7.69,0,0,1-.17-1.68,7.83,7.83,0,0,1,.17-1.68,3.65,3.65,0,0,1,.52-1.25,2.44,2.44,0,0,1,.89-.77,2.84,2.84,0,0,1,1.28-.27,2.44,2.44,0,0,1,2.16,1,5.23,5.23,0,0,1,.7,2.93,5.23,5.23,0,0,1-.7,2.93A2.44,2.44,0,0,1,19.63,22.13Zm0-1.22a1.07,1.07,0,0,0,1-.55A3.38,3.38,0,0,0,21,18.85V17.47a3.31,3.31,0,0,0-.29-1.5,1.23,1.23,0,0,0-2.06,0,3.31,3.31,0,0,0-.29,1.5v1.38a3.38,3.38,0,0,0,.29,1.51A1.06,1.06,0,0,0,19.63,20.91Z"
6
+ transform="translate(0 0)"/>
7
+ <path fill="currentColor" d="M10.63,22V20.82h2V15.63l-1.86,1-.55-1.06,2.32-1.3H14v6.5h1.78V22Z" transform="translate(0 0)"/>
8
+ </svg>
9
+ </template>
@@ -0,0 +1,10 @@
1
+ <template><svg height="762" viewBox="0 0 762 762" width="762" xmlns="http://www.w3.org/2000/svg">
2
+ <g fill="currentColor" fill-rule="evenodd" stroke="none" transform="translate(125 125)">
3
+ <path
4
+ d="M224,435.8V76.1c0-6.7-5.4-12.1-12.2-12.1h-71.6c-6.8,0-12.2,5.4-12.2,12.1v359.7c0,6.7,5.4,12.2,12.2,12.2h71.6 C218.6,448,224,442.6,224,435.8z"/>
5
+
6
+ <path
7
+ d="M371.8,64h-71.6c-6.7,0-12.2,5.4-12.2,12.1v359.7c0,6.7,5.4,12.2,12.2,12.2h71.6c6.7,0,12.2-5.4,12.2-12.2V76.1 C384,69.4,378.6,64,371.8,64z"/>
8
+ </g>
9
+ </svg>
10
+ </template>
@@ -0,0 +1,7 @@
1
+ <template><svg height="21" viewBox="5.5 5 11 11" width="21" xmlns="http://www.w3.org/2000/svg">
2
+ <g fill="none" fill-rule="evenodd" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"
3
+ transform="translate(2 5)">
4
+ <path d="m7.5 7.5 3-2-3-2z" fill="currentColor"/>
5
+ </g>
6
+ </svg>
7
+ </template>
@@ -120,7 +120,7 @@ class itfModal extends Vue {
120
120
  this.$el.parentNode.removeChild(this.$el);
121
121
  document.body.appendChild(this.$el); // should append only to body
122
122
  }
123
- const { default: Modal } = await import('bootstrap/js/src/modal.js');
123
+ const { default: Modal } = await import('bootstrap/js/src/modal');
124
124
  this.modalEl = new Modal(this.$el, { backdrop: 'static' });
125
125
  this.onVisibleChanged(this.value);
126
126
  this.bindEvents();
@@ -27,7 +27,6 @@
27
27
  </template>
28
28
  <style lang="scss">
29
29
  @import '../../assets/scss/variables';
30
- @import '~bootstrap/scss/pagination';
31
30
 
32
31
  .itf-pagination.pagination {
33
32
  padding-left: 0;
@@ -1,3 +1,3 @@
1
- �RCopyright 1990-2009 Adobe Systems Incorporated.
1
+ �RCopyright 1990-2009 Adobe Systems Incorporated.
2
2
  All rights reserved.
3
- See ./LICENSE�CNS2-H
3
+ See ./LICENSE�CNS2-H
@@ -1,3 +1,3 @@
1
- �RCopyright 1990-2009 Adobe Systems Incorporated.
1
+ �RCopyright 1990-2009 Adobe Systems Incorporated.
2
2
  All rights reserved.
3
- See ./LICENSE� ETen-B5-H` ^
3
+ See ./LICENSE� ETen-B5-H` ^
@@ -35,8 +35,8 @@
35
35
  --pdf-button-hover-bg-color: #{mix($primary, $body-bg, 50%)};
36
36
  }
37
37
 
38
- @media (prefers-color-scheme: notdark) {
39
- .pdf-app {
38
+ @media (prefers-color-scheme: dark) {
39
+ .support-dark .pdf-app {
40
40
  --pdf-app-background-color: #{$pdf-app-background-color-light};
41
41
  --pdf-sidebar-content-color: #{$pdf-sidebar-content-color-light};
42
42
  --pdf-toolbar-sidebar-color: #{$pdf-toolbar-sidebar-color-light};
@@ -11,8 +11,6 @@
11
11
  </template>
12
12
  <style lang="scss">
13
13
  @import '../../assets/scss/variables';
14
- @import '~bootstrap/scss/popover';
15
- @import '~bootstrap/scss/transitions';
16
14
 
17
15
  .itf-popover {
18
16
  display: none;
@@ -47,7 +45,9 @@
47
45
  }
48
46
  </style>
49
47
  <script>
50
- import { Vue, Component, Prop, Watch, PropSync, Inject } from 'vue-property-decorator';
48
+ import {
49
+ Vue, Component, Prop, Watch, PropSync,
50
+ } from 'vue-property-decorator';
51
51
 
52
52
  let globalModalIndex = 0; // base modal z-index
53
53
 
@@ -58,14 +58,18 @@ export default @Component({
58
58
  })
59
59
  class itfPopover extends Vue {
60
60
  @PropSync('visible') value;
61
+
61
62
  @Prop({ type: String, default: 'bottom', validator: (value) => ['bottom', 'left', 'right', 'top'].includes(value) }) placement;
63
+
62
64
  @Prop({ type: String, default: 'click', validator: (value) => ['click', 'focus', 'hover', 'manual'].includes(value) }) trigger;
65
+
63
66
  @Prop({ type: String, default: '' }) customClass;
64
67
 
65
68
  modalId = '';
69
+
66
70
  modalEl = null;
67
71
 
68
- beforeDestroy () {
72
+ beforeDestroy() {
69
73
  this.hide();
70
74
  }
71
75
 
@@ -91,7 +95,7 @@ class itfPopover extends Vue {
91
95
  return;
92
96
  }
93
97
  const el = this.$refs.popover;
94
- const { default: Popover } = await import('bootstrap/js/src/popover.js');
98
+ const { default: Popover } = await import('bootstrap/js/src/popover');
95
99
 
96
100
  const context = this.$el.closest('.itf-append-context') || document.body;
97
101
  this.modalEl = new Popover(this.$el, {
@@ -55,7 +55,7 @@ export default @Component({
55
55
  name: 'itfDropdown',
56
56
  components: {}
57
57
  })
58
- class itfSegmentedControl extends Vue {
58
+ class itfDropdown extends Vue {
59
59
  @Prop({ type: Number, default: undefined }) dropdownWidth;
60
60
  @Prop({ type: [Array, String, Number], default: undefined }) value;
61
61
  @Prop({ type: Boolean }) isValueEmpty;