@inriver/inri 1.14.0 → 1.16.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 (120) hide show
  1. package/.changeset/README.md +8 -0
  2. package/.changeset/config.json +11 -0
  3. package/.eslintrc.js +5 -5
  4. package/azure/pipelines/single-build-release.yml +20 -0
  5. package/azure/pipelines/templates/deployFramework.yml +30 -0
  6. package/azure/pipelines/templates/publishFramwork.yml +39 -0
  7. package/componentProperties.d.ts +8 -8
  8. package/configs/base-eslint-config.js +36 -36
  9. package/configs/base-tailwind-config.js +149 -149
  10. package/i18n.ts +11 -11
  11. package/index.ts +29 -29
  12. package/package.json +7 -2
  13. package/src/components/CAutoBreadcrumbs.vue +72 -72
  14. package/src/components/CBtn.vue +98 -98
  15. package/src/components/CColorPicker.vue +55 -55
  16. package/src/components/CContextMenu.vue +29 -29
  17. package/src/components/CDatePicker.vue +51 -51
  18. package/src/components/CDeleteTileBtn.vue +52 -52
  19. package/src/components/CDialog.vue +253 -253
  20. package/src/components/CDialogCloseBtn.vue +9 -9
  21. package/src/components/CDirtyCheck.vue +68 -68
  22. package/src/components/CDrawer.vue +44 -44
  23. package/src/components/CDrawerButton.vue +91 -91
  24. package/src/components/CExpansionItem.vue +57 -57
  25. package/src/components/CExpansionItemWithCheckbox.vue +41 -41
  26. package/src/components/CFileDropzone.vue +114 -114
  27. package/src/components/CGrid.vue +101 -101
  28. package/src/components/CHeader.vue +10 -10
  29. package/src/components/CHeaderLinks.vue +61 -61
  30. package/src/components/CHeaderMenuLink.vue +51 -51
  31. package/src/components/CHeaderSearch.vue +142 -142
  32. package/src/components/CIconBtn.vue +70 -70
  33. package/src/components/CMenuItem.vue +66 -66
  34. package/src/components/CPageContainer.vue +11 -11
  35. package/src/components/CPageError.vue +24 -24
  36. package/src/components/CPageSpinner.vue +18 -18
  37. package/src/components/CSearch.vue +45 -45
  38. package/src/components/CSection.vue +29 -29
  39. package/src/components/CSectionTitle.vue +8 -8
  40. package/src/components/CSelect.vue +208 -208
  41. package/src/components/CSlideEffect.vue +62 -62
  42. package/src/components/CSpinner.vue +107 -107
  43. package/src/components/CTableActions.vue +16 -16
  44. package/src/components/CTileBtn.vue +178 -178
  45. package/src/components/CTimePicker.vue +42 -42
  46. package/src/components/CToggleGridView.vue +26 -26
  47. package/src/components/CToggleSidebarBtn.vue +19 -19
  48. package/src/components/CTooltip.vue +44 -44
  49. package/src/components/CTreeNode.vue +39 -39
  50. package/src/components/cards/CBannerCard.vue +103 -103
  51. package/src/components/cards/CSmallCard.vue +149 -149
  52. package/src/components/internal-components/ConfirmDialog.vue +78 -78
  53. package/src/composables/useDialog.ts +46 -46
  54. package/src/composables/useDirtyCheck.ts +25 -25
  55. package/src/composables/useDoubleClickListener.ts +28 -28
  56. package/src/composables/useSelectable.ts +62 -62
  57. package/src/composables/useTruncateChips.ts +46 -46
  58. package/src/i18n/de/index.ts +17 -17
  59. package/src/i18n/en/index.ts +84 -84
  60. package/src/i18n/es/index.ts +7 -7
  61. package/src/i18n/fr/index.ts +7 -7
  62. package/src/init/initInriFramework.ts +37 -37
  63. package/src/init/useInriApp.ts +55 -55
  64. package/src/layouts/CLayoutBlank.vue +7 -7
  65. package/src/layouts/CLayoutWithBackButton.vue +50 -50
  66. package/src/layouts/CLayoutWithSidebars.vue +46 -46
  67. package/src/layouts/layout-fragments/CPageAutoBreadcrumbs.vue +6 -6
  68. package/src/layouts/layout-fragments/CPageBackButton.vue +18 -18
  69. package/src/layouts/layout-fragments/CPageBlank.vue +20 -20
  70. package/src/layouts/layout-fragments/CPageFlexCol.vue +5 -5
  71. package/src/layouts/layout-fragments/CPageLeftSidebar.vue +5 -5
  72. package/src/layouts/layout-fragments/CPageMainContent.vue +5 -5
  73. package/src/layouts/layout-fragments/CPageOuterWrapper.vue +5 -5
  74. package/src/layouts/layout-fragments/CPageRightSidebar.vue +5 -5
  75. package/src/layouts/layout-fragments/CPageTitle.vue +34 -34
  76. package/src/plugins/dialog.ts +45 -45
  77. package/src/plugins/errors/ErrorFactories.ts +59 -59
  78. package/src/plugins/errors/Errors.ts +156 -156
  79. package/src/plugins/errors/Exception.ts +6 -6
  80. package/src/plugins/errors/globalErrorHandler.ts +21 -21
  81. package/src/plugins/errors/handleError.ts +34 -34
  82. package/src/plugins/errors/logger.ts +16 -16
  83. package/src/plugins/errors/vueErrorHandler.ts +26 -26
  84. package/src/plugins/globalAppConfig.ts +25 -25
  85. package/src/plugins/i18n.ts +46 -46
  86. package/src/plugins/inriIcons.ts +58 -58
  87. package/src/plugins/inriverQuasarComponentConfigurations.ts +67 -67
  88. package/src/plugins/library.ts +119 -119
  89. package/src/plugins/notify.ts +153 -153
  90. package/src/plugins/quasar-user-options.ts +19 -19
  91. package/src/plugins/validationRules.ts +292 -292
  92. package/src/shims-vue.d.ts +6 -6
  93. package/src/stores/inriStore.ts +54 -54
  94. package/src/stores/interfaceLanguageStore.ts +27 -27
  95. package/src/styles/_css-variables.scss +101 -101
  96. package/src/styles/_reset.scss +67 -67
  97. package/src/styles/_transitions.scss +9 -9
  98. package/src/styles/_utils.scss +15 -15
  99. package/src/styles/components/_breadcrumbs.scss +3 -3
  100. package/src/styles/components/_checkboxes.scss +17 -17
  101. package/src/styles/components/_chips.scss +17 -17
  102. package/src/styles/components/_forms.scss +203 -203
  103. package/src/styles/components/_menu.scss +12 -12
  104. package/src/styles/components/_notifications.scss +24 -24
  105. package/src/styles/components/_q-editor.scss +14 -14
  106. package/src/styles/components/_radio-buttons.scss +17 -17
  107. package/src/styles/components/_tables.scss +92 -92
  108. package/src/styles/components/_tooltips.scss +5 -5
  109. package/src/styles/components/_tree.scss +86 -86
  110. package/src/styles/components/_truncated-chips.scss +39 -39
  111. package/src/styles/main.scss +45 -45
  112. package/src/styles/quasar.variables.scss +50 -50
  113. package/src/styles/tailwind/index.css +2 -2
  114. package/src/typings.d.ts +70 -70
  115. package/src/utils/colorUtils.ts +73 -73
  116. package/src/utils/errorUtils.ts +37 -37
  117. package/src/utils/fileUtils.ts +57 -57
  118. package/src/utils/helpers.ts +6 -6
  119. package/src/utils/routeUtils.ts +23 -23
  120. package/tsconfig.json +34 -34
@@ -1,62 +1,62 @@
1
- <template>
2
- <!-- This will be create a white background behind the slide effect to make all colors work -->
3
-
4
- <div class="absolute overflow-hidden inset-0">
5
- <div
6
- class="bg-white slide-box"
7
- :class="slideOffsetClasses"
8
- />
9
-
10
- <!-- Slider -->
11
- <div
12
- class="slide-box"
13
- :class="[transitionBg, slideOffsetClasses]"
14
- />
15
- </div>
16
- </template>
17
-
18
- <script setup lang="ts">
19
- import { computed } from 'vue'
20
- import { getRelatedColors } from '../utils/colorUtils'
21
-
22
- const props = defineProps({
23
- parentColor: {
24
- type: String,
25
- default: 'primary',
26
- },
27
- slideEffectColor: {
28
- type: String,
29
- default: undefined,
30
- },
31
- slideRight: {
32
- type: Boolean,
33
- default: false,
34
- },
35
- })
36
-
37
- const slideOffsetClasses = computed(() => {
38
- if (props.slideRight) {
39
- return '-left-full group-hover:left-0 group-focus:left-0'
40
- }
41
-
42
- return '-right-full group-hover:right-0 group-focus:right-0'
43
- })
44
-
45
- const transitionBg = computed(() => {
46
- // Override calculated color effect
47
- if (props.slideEffectColor) {
48
- return 'bg-' + props.slideEffectColor
49
- }
50
-
51
- const color = props.parentColor
52
- const relatedColors = getRelatedColors(color)
53
-
54
- return relatedColors ? 'bg-' + relatedColors.effectColor : `bg-${color} opacity-60`
55
- })
56
- </script>
57
-
58
- <style scoped>
59
- .slide-box {
60
- @apply absolute transition-all duration-500 w-full h-full top-0;
61
- }
62
- </style>
1
+ <template>
2
+ <!-- This will be create a white background behind the slide effect to make all colors work -->
3
+
4
+ <div class="absolute overflow-hidden inset-0">
5
+ <div
6
+ class="bg-white slide-box"
7
+ :class="slideOffsetClasses"
8
+ />
9
+
10
+ <!-- Slider -->
11
+ <div
12
+ class="slide-box"
13
+ :class="[transitionBg, slideOffsetClasses]"
14
+ />
15
+ </div>
16
+ </template>
17
+
18
+ <script setup lang="ts">
19
+ import { computed } from 'vue'
20
+ import { getRelatedColors } from '../utils/colorUtils'
21
+
22
+ const props = defineProps({
23
+ parentColor: {
24
+ type: String,
25
+ default: 'primary',
26
+ },
27
+ slideEffectColor: {
28
+ type: String,
29
+ default: undefined,
30
+ },
31
+ slideRight: {
32
+ type: Boolean,
33
+ default: false,
34
+ },
35
+ })
36
+
37
+ const slideOffsetClasses = computed(() => {
38
+ if (props.slideRight) {
39
+ return '-left-full group-hover:left-0 group-focus:left-0'
40
+ }
41
+
42
+ return '-right-full group-hover:right-0 group-focus:right-0'
43
+ })
44
+
45
+ const transitionBg = computed(() => {
46
+ // Override calculated color effect
47
+ if (props.slideEffectColor) {
48
+ return 'bg-' + props.slideEffectColor
49
+ }
50
+
51
+ const color = props.parentColor
52
+ const relatedColors = getRelatedColors(color)
53
+
54
+ return relatedColors ? 'bg-' + relatedColors.effectColor : `bg-${color} opacity-60`
55
+ })
56
+ </script>
57
+
58
+ <style scoped>
59
+ .slide-box {
60
+ @apply absolute transition-all duration-500 w-full h-full top-0;
61
+ }
62
+ </style>
@@ -1,107 +1,107 @@
1
- <template>
2
- <div
3
- class="c-spinner"
4
- :style="{
5
- width: size + 'px',
6
- height: size + 'px',
7
- position: absolute ? 'absolute' : 'relative',
8
- gridGap: gap + 'px',
9
- }"
10
- :class="transitionColor"
11
- >
12
- <div />
13
- <div />
14
- <div />
15
- <div />
16
- <div />
17
- <div />
18
- <div />
19
- <div />
20
- <div />
21
- </div>
22
- </template>
23
-
24
- <script setup lang="ts">
25
- import { computed } from 'vue'
26
- import { getRelatedColors } from '../utils/colorUtils'
27
-
28
- const props = defineProps({
29
- size: {
30
- type: [String, Number],
31
- default: 70,
32
- },
33
- absolute: Boolean,
34
- gap: {
35
- type: [String, Number],
36
- default: 2,
37
- },
38
- parentColor: {
39
- type: String,
40
- default: 'primary',
41
- },
42
- color: {
43
- type: String,
44
- default: undefined,
45
- },
46
- })
47
-
48
- // Return fixed color or calculated color based on parent color
49
- const transitionColor = computed(() => {
50
- if (props.color) {
51
- return 'text-' + props.color
52
- }
53
-
54
- const color = props.parentColor
55
- const relatedColors = getRelatedColors(color)
56
-
57
- return relatedColors ? 'text-' + relatedColors.effectColor : `text-${color} opacity-60`
58
- })
59
-
60
- </script>
61
-
62
- <style lang="scss">
63
- // Based on:
64
- // https://codepen.io/joshuaward/pen/XejbZv
65
-
66
- .c-spinner {
67
- display: grid;
68
- grid-template-columns: 1fr 1fr 1fr;
69
-
70
- > div {
71
- position: relative;
72
- width: 100%;
73
- height: 100%;
74
- background: currentColor;
75
- transform: scale(0);
76
- transform-origin: center center;
77
- animation: loader 2s infinite linear;
78
-
79
- &:nth-of-type(1),
80
- &:nth-of-type(5),
81
- &:nth-of-type(9) {
82
- animation-delay: 0.4s;
83
- }
84
-
85
- &:nth-of-type(4),
86
- &:nth-of-type(8) {
87
- animation-delay: 0.2s;
88
- }
89
-
90
- &:nth-of-type(2),
91
- &:nth-of-type(6) {
92
- animation-delay: 0.6s;
93
- }
94
-
95
- &:nth-of-type(3) {
96
- animation-delay: 0.8s;
97
- }
98
- }
99
- }
100
-
101
- @keyframes loader {
102
- 0% { transform: scale(0); }
103
- 40% { transform: scale(1); }
104
- 80% { transform: scale(1); }
105
- 100% { transform: scale(0); }
106
- }
107
- </style>
1
+ <template>
2
+ <div
3
+ class="c-spinner"
4
+ :style="{
5
+ width: size + 'px',
6
+ height: size + 'px',
7
+ position: absolute ? 'absolute' : 'relative',
8
+ gridGap: gap + 'px',
9
+ }"
10
+ :class="transitionColor"
11
+ >
12
+ <div />
13
+ <div />
14
+ <div />
15
+ <div />
16
+ <div />
17
+ <div />
18
+ <div />
19
+ <div />
20
+ <div />
21
+ </div>
22
+ </template>
23
+
24
+ <script setup lang="ts">
25
+ import { computed } from 'vue'
26
+ import { getRelatedColors } from '../utils/colorUtils'
27
+
28
+ const props = defineProps({
29
+ size: {
30
+ type: [String, Number],
31
+ default: 70,
32
+ },
33
+ absolute: Boolean,
34
+ gap: {
35
+ type: [String, Number],
36
+ default: 2,
37
+ },
38
+ parentColor: {
39
+ type: String,
40
+ default: 'primary',
41
+ },
42
+ color: {
43
+ type: String,
44
+ default: undefined,
45
+ },
46
+ })
47
+
48
+ // Return fixed color or calculated color based on parent color
49
+ const transitionColor = computed(() => {
50
+ if (props.color) {
51
+ return 'text-' + props.color
52
+ }
53
+
54
+ const color = props.parentColor
55
+ const relatedColors = getRelatedColors(color)
56
+
57
+ return relatedColors ? 'text-' + relatedColors.effectColor : `text-${color} opacity-60`
58
+ })
59
+
60
+ </script>
61
+
62
+ <style lang="scss">
63
+ // Based on:
64
+ // https://codepen.io/joshuaward/pen/XejbZv
65
+
66
+ .c-spinner {
67
+ display: grid;
68
+ grid-template-columns: 1fr 1fr 1fr;
69
+
70
+ > div {
71
+ position: relative;
72
+ width: 100%;
73
+ height: 100%;
74
+ background: currentColor;
75
+ transform: scale(0);
76
+ transform-origin: center center;
77
+ animation: loader 2s infinite linear;
78
+
79
+ &:nth-of-type(1),
80
+ &:nth-of-type(5),
81
+ &:nth-of-type(9) {
82
+ animation-delay: 0.4s;
83
+ }
84
+
85
+ &:nth-of-type(4),
86
+ &:nth-of-type(8) {
87
+ animation-delay: 0.2s;
88
+ }
89
+
90
+ &:nth-of-type(2),
91
+ &:nth-of-type(6) {
92
+ animation-delay: 0.6s;
93
+ }
94
+
95
+ &:nth-of-type(3) {
96
+ animation-delay: 0.8s;
97
+ }
98
+ }
99
+ }
100
+
101
+ @keyframes loader {
102
+ 0% { transform: scale(0); }
103
+ 40% { transform: scale(1); }
104
+ 80% { transform: scale(1); }
105
+ 100% { transform: scale(0); }
106
+ }
107
+ </style>
@@ -1,16 +1,16 @@
1
- <template>
2
- <q-td v-bind="$attrs">
3
- <div class="flex flex-nowrap justify-end">
4
- <slot />
5
- </div>
6
- </q-td>
7
- </template>
8
-
9
- <script setup lang="ts">
10
- defineProps({
11
- alwaysVisible: {
12
- type: Boolean,
13
- default: false,
14
- },
15
- })
16
- </script>
1
+ <template>
2
+ <q-td v-bind="$attrs">
3
+ <div class="flex flex-nowrap justify-end">
4
+ <slot />
5
+ </div>
6
+ </q-td>
7
+ </template>
8
+
9
+ <script setup lang="ts">
10
+ defineProps({
11
+ alwaysVisible: {
12
+ type: Boolean,
13
+ default: false,
14
+ },
15
+ })
16
+ </script>