@contena/meteor-component-library 5.6.2 → 5.7.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 (270) hide show
  1. package/dist/{channel-c0a7f238.mjs → channel-24cdec8b.mjs} +1 -1
  2. package/dist/{channel-c7fd2abb.js → channel-41ddc4ca.js} +1 -1
  3. package/dist/common/MtActionMenuItem.d.ts +1 -1
  4. package/dist/common/MtBadge.d.ts +1 -1
  5. package/dist/common/MtBanner.d.ts +1 -1
  6. package/dist/common/MtBaseField.d.ts +2 -2
  7. package/dist/common/MtBaseField.js +1 -1
  8. package/dist/common/MtButton.d.ts +35 -32
  9. package/dist/common/MtButton.js +6 -3
  10. package/dist/common/MtCard.js +2 -2
  11. package/dist/common/MtCheckbox.d.ts +2 -2
  12. package/dist/common/MtCheckbox.js +1 -1
  13. package/dist/common/MtColorpicker.d.ts +9 -3
  14. package/dist/common/MtColorpicker.js +2 -2
  15. package/dist/common/MtContextButton.js +2 -2
  16. package/dist/common/MtContextMenuItem.d.ts +2 -2
  17. package/dist/common/MtContextMenuItem.js +1 -1
  18. package/dist/common/MtDataTable.d.ts +58 -47
  19. package/dist/common/MtDataTable.js +3 -3
  20. package/dist/common/MtDataTableBadgeRenderer.d.ts +3 -3
  21. package/dist/common/MtDataTableFilter.js +2 -2
  22. package/dist/common/MtDataTableSettings.d.ts +11 -8
  23. package/dist/common/MtDataTableSettings.js +2 -2
  24. package/dist/common/MtDatepicker.d.ts +24 -1
  25. package/dist/common/MtDatepicker.js +2 -1
  26. package/dist/common/MtEmailField.d.ts +1 -0
  27. package/dist/common/MtEmailField.js +5 -3
  28. package/dist/common/MtEntityDataTable.js +4 -4
  29. package/dist/common/MtEntitySelect.js +3 -3
  30. package/dist/common/MtFieldCopyable.js +1 -1
  31. package/dist/common/MtFieldHint.d.ts +5 -0
  32. package/dist/common/MtFieldHint.js +19 -13
  33. package/dist/common/MtFloatingUi.js +1 -1
  34. package/dist/common/MtGrantPermissionServiceBanner.d.ts +14 -1
  35. package/dist/common/MtGrantPermissionServiceBanner.js +11 -149
  36. package/dist/common/MtNumberField.d.ts +26 -3
  37. package/dist/common/MtNumberField.js +5 -4
  38. package/dist/common/MtPasswordField.d.ts +3 -1
  39. package/dist/common/MtPasswordField.js +6 -4
  40. package/dist/common/MtPopover.d.ts +4 -4
  41. package/dist/common/MtPopover.js +2 -2
  42. package/dist/common/MtPopoverItem.d.ts +2 -2
  43. package/dist/common/MtPopoverItem.js +1 -1
  44. package/dist/common/MtPopoverItemResult.d.ts +5 -2
  45. package/dist/common/MtPopoverItemResult.js +1 -1
  46. package/dist/common/MtSearch.d.ts +2 -0
  47. package/dist/common/MtSearch.js +12 -7
  48. package/dist/common/MtSegmentedControl.d.ts +6 -6
  49. package/dist/common/MtSegmentedControl.js +2 -2
  50. package/dist/common/MtSelect.d.ts +30 -20
  51. package/dist/common/MtSelect.js +20 -3
  52. package/dist/common/MtSelectBase.d.ts +4 -4
  53. package/dist/common/MtSelectBase.js +2 -2
  54. package/dist/common/MtSelectResult.d.ts +0 -16
  55. package/dist/common/MtSelectResult.js +2 -22
  56. package/dist/common/MtSelectSelectionList.js +4 -0
  57. package/dist/common/MtSlider.d.ts +36 -7
  58. package/dist/common/MtSlider.js +3 -1
  59. package/dist/common/MtSnackbarNotification.js +2 -6
  60. package/dist/common/MtTabs.d.ts +2 -2
  61. package/dist/common/MtTabs.js +9 -8
  62. package/dist/common/MtTextEditor.js +4 -4
  63. package/dist/common/MtTextEditorToolbar.js +2 -2
  64. package/dist/common/MtTextEditorToolbarButton.js +1 -1
  65. package/dist/common/MtTextEditorToolbarButtonColor.js +2 -2
  66. package/dist/common/MtTextEditorToolbarButtonLink.js +1 -1
  67. package/dist/common/MtTextEditorToolbarButtonTable.js +10 -10
  68. package/dist/common/MtTextField.d.ts +28 -3
  69. package/dist/common/MtTextField.js +12 -2
  70. package/dist/common/MtTextarea.d.ts +1 -0
  71. package/dist/common/MtTextarea.js +10 -8
  72. package/dist/common/MtThemeSelect.js +2 -2
  73. package/dist/common/MtUnitField.js +3 -3
  74. package/dist/common/MtUnitSelect.js +4 -4
  75. package/dist/common/MtUnitSelectResult.js +2 -2
  76. package/dist/common/MtUrlField.d.ts +2 -0
  77. package/dist/common/MtUrlField.js +5 -3
  78. package/dist/common/components/mt-snackbar/composables/use-snackbar.d.ts +1 -1
  79. package/dist/common/composables/useServicePermission.d.ts +15 -0
  80. package/dist/common/index.d.ts +2 -1
  81. package/dist/common/index.js +13 -12
  82. package/dist/common/mixins/validation.mixin.d.ts +2 -2
  83. package/dist/esm/MtActionMenuItem.d.ts +1 -1
  84. package/dist/esm/MtBadge.d.ts +1 -1
  85. package/dist/esm/MtBanner.d.ts +1 -1
  86. package/dist/esm/MtBaseField.d.ts +2 -2
  87. package/dist/esm/MtBaseField.js +1 -1
  88. package/dist/esm/MtButton.d.ts +35 -32
  89. package/dist/esm/MtButton.js +6 -3
  90. package/dist/esm/MtCard.js +2 -2
  91. package/dist/esm/MtCheckbox.d.ts +2 -2
  92. package/dist/esm/MtCheckbox.js +1 -1
  93. package/dist/esm/MtColorpicker.d.ts +9 -3
  94. package/dist/esm/MtColorpicker.js +2 -2
  95. package/dist/esm/MtContextButton.js +2 -2
  96. package/dist/esm/MtContextMenuItem.d.ts +2 -2
  97. package/dist/esm/MtContextMenuItem.js +1 -1
  98. package/dist/esm/MtDataTable.d.ts +58 -47
  99. package/dist/esm/MtDataTable.js +3 -3
  100. package/dist/esm/MtDataTableBadgeRenderer.d.ts +3 -3
  101. package/dist/esm/MtDataTableFilter.js +2 -2
  102. package/dist/esm/MtDataTableSettings.d.ts +11 -8
  103. package/dist/esm/MtDataTableSettings.js +2 -2
  104. package/dist/esm/MtDatepicker.d.ts +24 -1
  105. package/dist/esm/MtDatepicker.js +2 -1
  106. package/dist/esm/MtEmailField.d.ts +1 -0
  107. package/dist/esm/MtEmailField.js +5 -3
  108. package/dist/esm/MtEntityDataTable.js +4 -4
  109. package/dist/esm/MtEntitySelect.js +3 -3
  110. package/dist/esm/MtFieldCopyable.js +1 -1
  111. package/dist/esm/MtFieldHint.d.ts +5 -0
  112. package/dist/esm/MtFieldHint.js +20 -14
  113. package/dist/esm/MtFloatingUi.js +1 -1
  114. package/dist/esm/MtGrantPermissionServiceBanner.d.ts +14 -1
  115. package/dist/esm/MtGrantPermissionServiceBanner.js +11 -149
  116. package/dist/esm/MtNumberField.d.ts +26 -3
  117. package/dist/esm/MtNumberField.js +5 -4
  118. package/dist/esm/MtPasswordField.d.ts +3 -1
  119. package/dist/esm/MtPasswordField.js +6 -4
  120. package/dist/esm/MtPopover.d.ts +4 -4
  121. package/dist/esm/MtPopover.js +2 -2
  122. package/dist/esm/MtPopoverItem.d.ts +2 -2
  123. package/dist/esm/MtPopoverItem.js +1 -1
  124. package/dist/esm/MtPopoverItemResult.d.ts +5 -2
  125. package/dist/esm/MtPopoverItemResult.js +1 -1
  126. package/dist/esm/MtSearch.d.ts +2 -0
  127. package/dist/esm/MtSearch.js +12 -7
  128. package/dist/esm/MtSegmentedControl.d.ts +6 -6
  129. package/dist/esm/MtSegmentedControl.js +2 -2
  130. package/dist/esm/MtSelect.d.ts +30 -20
  131. package/dist/esm/MtSelect.js +20 -3
  132. package/dist/esm/MtSelectBase.d.ts +4 -4
  133. package/dist/esm/MtSelectBase.js +2 -2
  134. package/dist/esm/MtSelectResult.d.ts +0 -16
  135. package/dist/esm/MtSelectResult.js +2 -22
  136. package/dist/esm/MtSelectSelectionList.js +4 -0
  137. package/dist/esm/MtSlider.d.ts +36 -7
  138. package/dist/esm/MtSlider.js +3 -1
  139. package/dist/esm/MtSnackbarNotification.js +2 -6
  140. package/dist/esm/MtTabs.d.ts +2 -2
  141. package/dist/esm/MtTabs.js +10 -9
  142. package/dist/esm/MtTextEditor.js +4 -4
  143. package/dist/esm/MtTextEditorToolbar.js +2 -2
  144. package/dist/esm/MtTextEditorToolbarButton.js +1 -1
  145. package/dist/esm/MtTextEditorToolbarButtonColor.js +2 -2
  146. package/dist/esm/MtTextEditorToolbarButtonLink.js +1 -1
  147. package/dist/esm/MtTextEditorToolbarButtonTable.js +10 -10
  148. package/dist/esm/MtTextField.d.ts +28 -3
  149. package/dist/esm/MtTextField.js +12 -2
  150. package/dist/esm/MtTextarea.d.ts +1 -0
  151. package/dist/esm/MtTextarea.js +10 -8
  152. package/dist/esm/MtThemeSelect.js +2 -2
  153. package/dist/esm/MtUnitField.js +3 -3
  154. package/dist/esm/MtUnitSelect.js +4 -4
  155. package/dist/esm/MtUnitSelectResult.js +2 -2
  156. package/dist/esm/MtUrlField.d.ts +2 -0
  157. package/dist/esm/MtUrlField.js +5 -3
  158. package/dist/esm/components/mt-snackbar/composables/use-snackbar.d.ts +1 -1
  159. package/dist/esm/composables/useServicePermission.d.ts +15 -0
  160. package/dist/esm/index.d.ts +2 -1
  161. package/dist/esm/index.js +62 -61
  162. package/dist/esm/mixins/validation.mixin.d.ts +2 -2
  163. package/dist/example-radio-option.css +1 -107
  164. package/dist/{index-26e65048.mjs → index-1e353711.mjs} +1 -1
  165. package/dist/{index-2cb63874.js → index-269e5194.js} +3 -3
  166. package/dist/{index-ddce4e37.mjs → index-b57e37f8.mjs} +3 -3
  167. package/dist/{index-f8d7f486.js → index-fab01d0b.js} +1 -1
  168. package/dist/index.css +1 -1012
  169. package/dist/mt-action-menu-group.css +1 -23
  170. package/dist/mt-action-menu-item.css +1 -68
  171. package/dist/mt-action-menu.css +1 -28
  172. package/dist/mt-avatar.css +1 -66
  173. package/dist/mt-badge.css +1 -51
  174. package/dist/mt-banner.css +1 -95
  175. package/dist/mt-base-field.css +1 -206
  176. package/dist/mt-button.css +1 -249
  177. package/dist/mt-card.css +1 -210
  178. package/dist/mt-chart.css +1 -37
  179. package/dist/mt-checkbox.css +1 -176
  180. package/dist/mt-collapsible-content.css +1 -32
  181. package/dist/mt-colorpicker.css +1 -355
  182. package/dist/mt-context-button.css +1 -22
  183. package/dist/mt-data-table-filter.css +1 -71
  184. package/dist/mt-data-table-number-renderer.css +1 -8
  185. package/dist/mt-data-table-price-renderer.css +1 -8
  186. package/dist/mt-data-table-reset-filter-button.css +1 -14
  187. package/dist/mt-data-table-text-renderer.css +1 -33
  188. package/dist/mt-data-table.css +1 -653
  189. package/dist/mt-datepicker.css +1 -293
  190. package/dist/{mt-datepicker.vue_vue_type_style_index_0_lang-2db831f0.mjs → mt-datepicker.vue_vue_type_style_index_0_lang-5edbea9c.mjs} +21 -14
  191. package/dist/{mt-datepicker.vue_vue_type_style_index_0_lang-d200a30e.js → mt-datepicker.vue_vue_type_style_index_0_lang-81316ad9.js} +21 -14
  192. package/dist/mt-email-field.css +1 -97
  193. package/dist/mt-empty-state.css +1 -37
  194. package/dist/mt-entity-data-table.css +1 -43
  195. package/dist/{mt-entity-data-table.vue_vue_type_style_index_0_lang-84494335.js → mt-entity-data-table.vue_vue_type_style_index_0_lang-063ce600.js} +2 -2
  196. package/dist/{mt-entity-data-table.vue_vue_type_style_index_0_lang-20da6e77.mjs → mt-entity-data-table.vue_vue_type_style_index_0_lang-24a26788.mjs} +2 -2
  197. package/dist/{mt-entity-select.vue_vue_type_script_setup_true_lang-2cdffea0.js → mt-entity-select.vue_vue_type_script_setup_true_lang-eb9894c1.js} +1 -1
  198. package/dist/{mt-entity-select.vue_vue_type_script_setup_true_lang-f3c35d00.mjs → mt-entity-select.vue_vue_type_script_setup_true_lang-f94e984f.mjs} +1 -1
  199. package/dist/mt-field-affix.css +1 -23
  200. package/dist/mt-field-copyable.css +1 -4
  201. package/dist/mt-field-error.css +1 -8
  202. package/dist/mt-field-hint.css +1 -24
  203. package/dist/mt-field-label.css +1 -31
  204. package/dist/mt-floating-ui.css +1 -87
  205. package/dist/{mt-floating-ui.vue_vue_type_style_index_0_lang-90b9d50a.mjs → mt-floating-ui.vue_vue_type_style_index_0_lang-1e4e0347.mjs} +15 -7
  206. package/dist/{mt-floating-ui.vue_vue_type_style_index_0_lang-2ea8a18a.js → mt-floating-ui.vue_vue_type_style_index_0_lang-f48de489.js} +14 -6
  207. package/dist/mt-grant-permission-service-banner-62995d3a.mjs +191 -0
  208. package/dist/mt-grant-permission-service-banner-dc1f0940.js +190 -0
  209. package/dist/mt-grant-permission-service-banner.css +1 -88
  210. package/dist/mt-help-text.css +1 -33
  211. package/dist/mt-highlight-text.css +1 -5
  212. package/dist/mt-icon.css +1 -3697
  213. package/dist/mt-inheritance-switch.css +1 -12
  214. package/dist/mt-inset.css +1 -7
  215. package/dist/mt-label.css +1 -71
  216. package/dist/mt-link.css +1 -38
  217. package/dist/mt-loader.css +1 -76
  218. package/dist/mt-modal-root.css +1 -20
  219. package/dist/mt-modal.css +1 -160
  220. package/dist/mt-number-field.css +1 -71
  221. package/dist/mt-pagination.css +1 -78
  222. package/dist/mt-password-field.css +1 -27
  223. package/dist/mt-popover-deprecated.css +1 -7
  224. package/dist/mt-popover-item-result.css +1 -135
  225. package/dist/mt-popover-item.css +1 -175
  226. package/dist/mt-popover.css +1 -99
  227. package/dist/mt-progress-bar.css +1 -26
  228. package/dist/mt-promo-badge.css +1 -4
  229. package/dist/mt-radio-group-indicator.css +1 -47
  230. package/dist/mt-radio-group-item.css +1 -25
  231. package/dist/mt-radio-group-list.css +1 -6
  232. package/dist/mt-radio-group-root.css +1 -33
  233. package/dist/mt-search.css +1 -61
  234. package/dist/mt-segmented-control.css +1 -146
  235. package/dist/mt-select-base.css +1 -121
  236. package/dist/mt-select-result-list.css +1 -120
  237. package/dist/mt-select-result.css +1 -114
  238. package/dist/mt-select-selection-list.css +1 -127
  239. package/dist/mt-skeleton-bar.css +1 -33
  240. package/dist/mt-slider.css +1 -152
  241. package/dist/mt-snackbar-notification.css +1 -63
  242. package/dist/mt-snackbar.css +1 -58
  243. package/dist/mt-status-dot.css +1 -58
  244. package/dist/mt-switch.css +1 -94
  245. package/dist/mt-tabs.css +1 -111
  246. package/dist/mt-text-editor-diff-modal.css +3 -696
  247. package/dist/mt-text-editor-toolbar-button-color.css +1 -19
  248. package/dist/mt-text-editor-toolbar-button-link.css +1 -6
  249. package/dist/mt-text-editor-toolbar-button-table.css +1 -6
  250. package/dist/mt-text-editor-toolbar-button.css +1 -26
  251. package/dist/mt-text-editor-toolbar.css +1 -36
  252. package/dist/mt-text-editor.css +1 -338
  253. package/dist/mt-text.css +1 -53
  254. package/dist/mt-textarea.css +1 -62
  255. package/dist/{mt-theme-select.vue_vue_type_script_setup_true_lang-42a2e3c8.js → mt-theme-select.vue_vue_type_script_setup_true_lang-b8126f05.js} +1 -0
  256. package/dist/{mt-theme-select.vue_vue_type_script_setup_true_lang-6ecf0bcb.mjs → mt-theme-select.vue_vue_type_script_setup_true_lang-f57bd5cc.mjs} +1 -0
  257. package/dist/mt-toast-notification.css +1 -161
  258. package/dist/mt-toast.css +1 -101
  259. package/dist/mt-tooltip.css +1 -47
  260. package/dist/mt-unit-field.css +1 -12
  261. package/dist/mt-unit-select-result.css +1 -34
  262. package/dist/mt-unit-select.css +1 -44
  263. package/dist/mt-url-field.css +1 -147
  264. package/dist/{repository-e7884115.mjs → repository-2316b912.mjs} +1 -1
  265. package/dist/{repository-9c56cf7b.js → repository-3d192939.js} +1 -1
  266. package/dist/{tooltip.directive-4ea0fee9.js → tooltip.directive-7b51326d.js} +23 -0
  267. package/dist/{tooltip.directive-f216b7fb.mjs → tooltip.directive-a5042569.mjs} +23 -0
  268. package/dist/{useRepository-6804d3b6.js → useRepository-86f5a789.js} +1 -1
  269. package/dist/{useRepository-28dfccf5.mjs → useRepository-f3e9ffc6.mjs} +1 -1
  270. package/package.json +5 -9
@@ -1,37 +1 @@
1
-
2
- .mt-empty-state[data-v-07f005f6] {
3
- display: flex;
4
- flex-direction: column;
5
- align-items: center;
6
- max-width: 560px;
7
- text-align: center;
8
- }
9
-
10
- /* @deprecated tag:v5 remove leftAligned class */
11
- .mt-empty-state--left-aligned[data-v-07f005f6] {
12
- align-items: flex-start;
13
- max-width: none;
14
- text-align: left;
15
- }
16
- .mt-empty-state__icon[data-v-07f005f6] {
17
- width: var(--scale-size-48);
18
- height: var(--scale-size-48);
19
- display: grid;
20
- place-items: center;
21
- border-radius: var(--border-radius-xs);
22
- background-color: var(--color-background-tertiary-default);
23
- }
24
- .mt-empty-state__headline[data-v-07f005f6] {
25
- margin-top: var(--scale-size-24);
26
- margin-bottom: 0;
27
- }
28
- .mt-empty-state__description[data-v-07f005f6] {
29
- margin-top: var(--scale-size-8);
30
- text-wrap: pretty;
31
- }
32
- .mt-empty-state__link[data-v-07f005f6] {
33
- margin-top: var(--scale-size-8);
34
- }
35
- .mt-empty-state__button[data-v-07f005f6] {
36
- margin-top: var(--scale-size-24);
37
- }
1
+ .mt-empty-state[data-v-07f005f6]{display:flex;flex-direction:column;align-items:center;max-width:560px;text-align:center}.mt-empty-state--left-aligned[data-v-07f005f6]{align-items:flex-start;max-width:none;text-align:left}.mt-empty-state__icon[data-v-07f005f6]{width:var(--scale-size-48);height:var(--scale-size-48);display:grid;place-items:center;border-radius:var(--border-radius-xs);background-color:var(--color-background-tertiary-default)}.mt-empty-state__headline[data-v-07f005f6]{margin-top:var(--scale-size-24);margin-bottom:0}.mt-empty-state__description[data-v-07f005f6]{margin-top:var(--scale-size-8);text-wrap:pretty}.mt-empty-state__link[data-v-07f005f6]{margin-top:var(--scale-size-8)}.mt-empty-state__button[data-v-07f005f6]{margin-top:var(--scale-size-24)}
@@ -1,43 +1 @@
1
- /* ------------------------------------
2
- * Administration variables
3
- * Table of contents
4
- *
5
- * 1. Primary colors
6
- * 2. Status colors
7
- * 3. Module colors
8
- * 4. Generic colors
9
- * 5. Gradients
10
- * 6. Typography
11
- * 7. Miscellaneous
12
- * 8. z-index
13
- * 9. Global widths
14
- * ------------------------------------ */
15
- /* ------------------------------------
16
- * 1. Primary colors
17
- * ------------------------------------ */
18
- /* ------------------------------------
19
- * 2. Status colors
20
- * ------------------------------------ */
21
- /* ------------------------------------
22
- * 3. Module colors
23
- * ------------------------------------ */
24
- /* ------------------------------------
25
- * 4. Generic colors
26
- * ------------------------------------ */
27
- /* ------------------------------------
28
- * 5. Gradients
29
- * ------------------------------------ */
30
- /* ------------------------------------
31
- * 6. Typography
32
- * ------------------------------------ */
33
- /* ------------------------------------
34
- * 7. Miscellaneous
35
- * ------------------------------------ */
36
- /* ------------------------------------
37
- * 8. z-index
38
- * ------------------------------------ */
39
- .mt-entity-data-table__delete-modal-footer {
40
- display: flex;
41
- gap: 0.5rem;
42
- justify-content: flex-end;
43
- }
1
+ .mt-entity-data-table__delete-modal-footer{display:flex;gap:.5rem;justify-content:flex-end}
@@ -2,7 +2,7 @@ import './mt-entity-data-table.css';
2
2
  "use strict";
3
3
  const vue = require("vue");
4
4
  const Criteria = require("./Criteria-86968a69.js");
5
- const useRepository = require("./useRepository-6804d3b6.js");
5
+ const useRepository = require("./useRepository-86f5a789.js");
6
6
  const MtDataTable = require("./common/MtDataTable.js");
7
7
  const index = require("./index-e582fef8.js");
8
8
  const vueI18n = require("vue-i18n");
@@ -238,7 +238,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
238
238
  itemToDelete.value = id;
239
239
  const isInIframe = window.self !== window.top;
240
240
  if (isInIframe && !props.forceRealModal) {
241
- const { ui } = await Promise.resolve().then(() => require("./index-2cb63874.js"));
241
+ const { ui } = await Promise.resolve().then(() => require("./index-269e5194.js"));
242
242
  ui.modal.open({
243
243
  title: t("entity.delete.title"),
244
244
  textContent: t("entity.delete.description"),
@@ -1,7 +1,7 @@
1
1
  import './mt-entity-data-table.css';
2
2
  import { defineComponent, ref, watch, onMounted, openBlock, createElementBlock, Fragment, createVNode, mergeProps, unref, createSlots, renderList, withCtx, renderSlot, normalizeProps, guardReactiveProps, createElementVNode, toDisplayString, createBlock, createCommentVNode, createTextVNode } from "vue";
3
3
  import { C as Criteria } from "./Criteria-dda62b10.mjs";
4
- import { u as useRepository, g as getRepository } from "./useRepository-28dfccf5.mjs";
4
+ import { u as useRepository, g as getRepository } from "./useRepository-f3e9ffc6.mjs";
5
5
  import MtDataTable from "./esm/MtDataTable.js";
6
6
  import { c as computedAsync } from "./index-03602e2a.mjs";
7
7
  import { useI18n } from "vue-i18n";
@@ -237,7 +237,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
237
237
  itemToDelete.value = id;
238
238
  const isInIframe = window.self !== window.top;
239
239
  if (isInIframe && !props.forceRealModal) {
240
- const { ui } = await import("./index-ddce4e37.mjs");
240
+ const { ui } = await import("./index-b57e37f8.mjs");
241
241
  ui.modal.open({
242
242
  title: t("entity.delete.title"),
243
243
  textContent: t("entity.delete.description"),
@@ -2,7 +2,7 @@
2
2
  const vue = require("vue");
3
3
  const MtSelect = require("./common/MtSelect.js");
4
4
  const Criteria = require("./Criteria-86968a69.js");
5
- const useRepository = require("./useRepository-6804d3b6.js");
5
+ const useRepository = require("./useRepository-86f5a789.js");
6
6
  const _sfc_main = /* @__PURE__ */ vue.defineComponent({
7
7
  __name: "mt-entity-select",
8
8
  props: {
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, ref, onMounted, openBlock, createBlock, mergeProps, createSlots, renderList, withCtx, renderSlot, normalizeProps, guardReactiveProps } from "vue";
2
2
  import MtSelect from "./esm/MtSelect.js";
3
3
  import { C as Criteria } from "./Criteria-dda62b10.mjs";
4
- import { u as useRepository } from "./useRepository-28dfccf5.mjs";
4
+ import { u as useRepository } from "./useRepository-f3e9ffc6.mjs";
5
5
  const _sfc_main = /* @__PURE__ */ defineComponent({
6
6
  __name: "mt-entity-select",
7
7
  props: {
@@ -1,23 +1 @@
1
-
2
- .mt-field-affix[data-v-97222200] {
3
- display: grid;
4
- place-items: center;
5
- padding-inline: var(--scale-size-12);
6
- color: var(--color-text-primary-default);
7
- font-family: var(--font-family-body);
8
- font-size: var(--font-size-2xs);
9
- line-height: var(--font-line-height-2xs);
10
- font-weight: var(--font-weight-medium);
11
- background: var(--color-background-tertiary-default);
12
- height: 100%;
13
- }
14
- .mt-field-affix--suffix[data-v-97222200] {
15
- border-inline-start: 1px solid var(--color-border-primary-default);
16
- border-top-right-radius: var(--border-radius-xs);
17
- border-bottom-right-radius: var(--border-radius-xs);
18
- }
19
- .mt-field-affix--prefix[data-v-97222200] {
20
- border-inline-end: 1px solid var(--color-border-primary-default);
21
- border-top-left-radius: var(--border-radius-xs);
22
- border-bottom-left-radius: var(--border-radius-xs);
23
- }
1
+ .mt-field-affix[data-v-97222200]{display:grid;place-items:center;padding-inline:var(--scale-size-12);color:var(--color-text-primary-default);font-family:var(--font-family-body);font-size:var(--font-size-2xs);line-height:var(--font-line-height-2xs);font-weight:var(--font-weight-medium);background:var(--color-background-tertiary-default);height:100%}.mt-field-affix--suffix[data-v-97222200]{border-inline-start:1px solid var(--color-border-primary-default);border-top-right-radius:var(--border-radius-xs);border-bottom-right-radius:var(--border-radius-xs)}.mt-field-affix--prefix[data-v-97222200]{border-inline-end:1px solid var(--color-border-primary-default);border-top-left-radius:var(--border-radius-xs);border-bottom-left-radius:var(--border-radius-xs)}
@@ -1,4 +1 @@
1
-
2
- .mt-field-copyable[data-v-ec56a4b5] {
3
- cursor: pointer;
4
- }
1
+ .mt-field-copyable[data-v-ec56a4b5]{cursor:pointer}
@@ -1,8 +1 @@
1
-
2
- .mt-field__error[data-v-d0181d69] {
3
- display: flex;
4
- align-items: center;
5
- gap: var(--scale-size-4);
6
- margin-top: var(--scale-size-4);
7
- color: var(--color-icon-critical-default);
8
- }
1
+ .mt-field__error[data-v-d0181d69]{display:flex;align-items:center;gap:var(--scale-size-4);margin-top:var(--scale-size-4);color:var(--color-icon-critical-default)}
@@ -1,24 +1 @@
1
-
2
- .mt-field-hint[data-v-e5d87355] {
3
- display: flex;
4
- flex-direction: row;
5
- align-items: flex-start;
6
- gap: var(--scale-size-4);
7
- padding: var(--scale-size-3);
8
- min-width: 0;
9
- }
10
- .mt-field-hint__icon[data-v-e5d87355] {
11
- flex-shrink: 0;
12
- /*
13
- * Keeps the icon optically centered on the first line of the hint instead of
14
- * on the whole block, so it stays put when the hint text wraps.
15
- */
16
- margin-top: calc((var(--font-line-height-xs) - var(--scale-size-12)) / 2);
17
- }
18
- .mt-field-hint__text[data-v-e5d87355] {
19
- color: var(--color-text-secondary-default);
20
- font-family: var(--font-family-body);
21
- font-size: var(--font-size-xs, 14px);
22
- font-weight: var(--font-weight-regular);
23
- line-height: var(--font-line-height-xs);
24
- }
1
+ .mt-field-hint[data-v-10dc0393]{display:flex;flex-direction:row;align-items:flex-start;gap:var(--scale-size-4);min-width:0;color:var(--color-text-secondary-default);font-family:var(--font-family-body);font-size:var(--font-size-xs, 14px);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-xs)}.mt-field-hint__icon-wrapper[data-v-10dc0393]{flex-shrink:0;display:flex;align-items:center;height:1lh}.mt-field-hint__text[data-v-10dc0393]{min-width:0}
@@ -1,31 +1 @@
1
-
2
- .mt-field-label[data-v-03761b39] {
3
- display: flex;
4
- column-gap: var(--scale-size-4);
5
- align-items: center;
6
- color: var(--color-text-primary-default);
7
- font-family: var(--font-family-body);
8
- font-size: var(--font-size-xs);
9
- font-weight: var(--font-weight-regular);
10
- line-height: var(--font-line-height-xs);
11
- }
12
- .mt-field-label--is-required[data-v-03761b39]::after {
13
- content: "*";
14
- color: var(--color-text-brand-default);
15
- }
16
- .mt-field-label--has-linked-inheritance[data-v-03761b39] {
17
- color: var(--color-text-accent-default);
18
- }
19
- .mt-field-label--with-error[data-v-03761b39] {
20
- color: var(--color-text-critical-default);
21
- }
22
- .mt-field-label__inheritance-switch {
23
- &[data-v-03761b39] {
24
- margin-right: var(--scale-size-4);
25
- }
26
- &[data-v-03761b39]:focus-visible {
27
- outline-offset: 0.25rem;
28
- border-radius: var(--border-radius-2xs);
29
- outline-color: var(--color-border-brand-default);
30
- }
31
- }
1
+ .mt-field-label[data-v-03761b39]{display:flex;column-gap:var(--scale-size-4);align-items:center;color:var(--color-text-primary-default);font-family:var(--font-family-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-xs)}.mt-field-label--is-required[data-v-03761b39]:after{content:"*";color:var(--color-text-brand-default)}.mt-field-label--has-linked-inheritance[data-v-03761b39]{color:var(--color-text-accent-default)}.mt-field-label--with-error[data-v-03761b39]{color:var(--color-text-critical-default)}.mt-field-label__inheritance-switch[data-v-03761b39]{margin-right:var(--scale-size-4)}.mt-field-label__inheritance-switch[data-v-03761b39]:focus-visible{outline-offset:.25rem;border-radius:var(--border-radius-2xs);outline-color:var(--color-border-brand-default)}
@@ -1,87 +1 @@
1
- /* ------------------------------------
2
- * Administration variables
3
- * Table of contents
4
- *
5
- * 1. Primary colors
6
- * 2. Status colors
7
- * 3. Module colors
8
- * 4. Generic colors
9
- * 5. Gradients
10
- * 6. Typography
11
- * 7. Miscellaneous
12
- * 8. z-index
13
- * 9. Global widths
14
- * ------------------------------------ */
15
- /* ------------------------------------
16
- * 1. Primary colors
17
- * ------------------------------------ */
18
- /* ------------------------------------
19
- * 2. Status colors
20
- * ------------------------------------ */
21
- /* ------------------------------------
22
- * 3. Module colors
23
- * ------------------------------------ */
24
- /* ------------------------------------
25
- * 4. Generic colors
26
- * ------------------------------------ */
27
- /* ------------------------------------
28
- * 5. Gradients
29
- * ------------------------------------ */
30
- /* ------------------------------------
31
- * 6. Typography
32
- * ------------------------------------ */
33
- /* ------------------------------------
34
- * 7. Miscellaneous
35
- * ------------------------------------ */
36
- /* ------------------------------------
37
- * 8. z-index
38
- * ------------------------------------ */
39
- .mt-floating-ui {
40
- display: inline-block;
41
- position: relative;
42
- }
43
- .mt-floating-ui .mt-floating-ui__trigger {
44
- display: inline-block;
45
- }
46
- .mt-floating-ui.mt-floating-ui--detached {
47
- display: contents;
48
- }
49
- .mt-floating-ui__content {
50
- position: fixed;
51
- top: 0;
52
- left: 0;
53
- z-index: 1070;
54
- /***
55
- * Arrow indicator
56
- */
57
- }
58
- .mt-floating-ui__content[data-show] {
59
- display: block;
60
- }
61
- .mt-floating-ui__content .mt-floating-ui__arrow {
62
- position: absolute;
63
- width: var(--scale-size-8);
64
- height: var(--scale-size-8);
65
- background: inherit;
66
- transform: rotate(45deg);
67
- }
68
- .mt-floating-ui__content.mt-floating-ui--top .mt-popover__content {
69
- transform-origin: top;
70
- }
71
- .mt-floating-ui__content.mt-floating-ui--right .mt-popover__content {
72
- transform-origin: right;
73
- }
74
- .mt-floating-ui__content.mt-floating-ui--bottom .mt-popover__content {
75
- transform-origin: bottom;
76
- }
77
- .mt-floating-ui__content.mt-floating-ui--left .mt-popover__content {
78
- transform-origin: left;
79
- }
80
- .popoverTransition-enter-active,
81
- .popoverTransition-leave-active {
82
- transition: transform 0.15s, opacity 0.15s;
83
- }
84
- .popoverTransition-enter, .popoverTransition-leave-to {
85
- transform: scale3d(1, 0, 1);
86
- opacity: 0;
87
- }
1
+ .mt-floating-ui{display:inline-block;position:relative}.mt-floating-ui .mt-floating-ui__trigger{display:inline-block}.mt-floating-ui.mt-floating-ui--detached{display:contents}.mt-floating-ui__content{position:fixed;top:0;left:0;z-index:1070}.mt-floating-ui__content[data-show]{display:block}.mt-floating-ui__content .mt-floating-ui__arrow{position:absolute;width:var(--scale-size-8);height:var(--scale-size-8);background:inherit;transform:rotate(45deg)}.mt-floating-ui__content.mt-floating-ui--top .mt-popover__content{transform-origin:top}.mt-floating-ui__content.mt-floating-ui--right .mt-popover__content{transform-origin:right}.mt-floating-ui__content.mt-floating-ui--bottom .mt-popover__content{transform-origin:bottom}.mt-floating-ui__content.mt-floating-ui--left .mt-popover__content{transform-origin:left}.popoverTransition-enter-active,.popoverTransition-leave-active{transition:transform .15s,opacity .15s}.popoverTransition-enter-from,.popoverTransition-leave-to{transform:scale3d(1,0,1);opacity:0}
@@ -1,6 +1,6 @@
1
1
  import './mt-floating-ui.css';
2
2
  import { getCurrentScope, onScopeDispose, toRef as toRef$1, readonly, customRef, ref, watch, toValue, computed, defineComponent, nextTick, onBeforeUnmount, openBlock, createElementBlock, normalizeClass, renderSlot, createCommentVNode, createBlock, Teleport, withDirectives, normalizeStyle, createVNode, Transition, withCtx, unref } from "vue";
3
- import { b as autoUpdate, c as computePosition, o as offset, a as arrow, f as flip, d as size } from "./floating-ui.dom-3a2ca2f5.mjs";
3
+ import { b as autoUpdate, c as computePosition, o as offset, a as arrow, f as flip, d as size, h as hide } from "./floating-ui.dom-3a2ca2f5.mjs";
4
4
  function tryOnScopeDispose(fn) {
5
5
  if (getCurrentScope()) {
6
6
  onScopeDispose(fn);
@@ -316,17 +316,18 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
316
316
  (c) => c !== "mt-floating-ui"
317
317
  );
318
318
  floatingUiContent.value.classList.add(...givenClasses);
319
+ const { middleware: consumerMiddleware, ...consumerOptions } = props.floatingUiOptions ?? {};
319
320
  cleanup = autoUpdate(
320
321
  referenceEl,
321
322
  floatingUiContent.value,
322
323
  () => {
323
- var _a3;
324
324
  if (!referenceEl || !floatingUiContent.value) {
325
325
  return;
326
326
  }
327
327
  computePosition(referenceEl, floatingUiContent.value, {
328
328
  placement: "bottom-start",
329
329
  strategy: "fixed",
330
+ ...consumerOptions,
330
331
  middleware: [
331
332
  offset(props.offset ?? 6),
332
333
  ...(() => {
@@ -336,16 +337,17 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
336
337
  return [];
337
338
  })(),
338
339
  flip(),
339
- ...((_a3 = props.floatingUiOptions) == null ? void 0 : _a3.middleware) ?? [],
340
+ ...consumerMiddleware ?? [],
340
341
  size({
341
342
  apply({ rects }) {
342
343
  referenceElementWidth.value = rects.reference.width ?? 0;
343
344
  referenceElementHeight.value = rects.reference.height ?? 0;
344
345
  }
345
- })
346
- ],
347
- ...props.floatingUiOptions
346
+ }),
347
+ hide()
348
+ ]
348
349
  }).then(({ x, y, middlewareData, placement, strategy }) => {
350
+ var _a3;
349
351
  if (!floatingUiContent.value) {
350
352
  return;
351
353
  }
@@ -364,10 +366,16 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
364
366
  [staticSide]: "-2px"
365
367
  });
366
368
  }
369
+ const referenceRect = referenceEl.getBoundingClientRect();
370
+ const referenceIsMeasurable = referenceRect.width > 0 && referenceRect.height > 0;
367
371
  Object.assign(floatingUiContent.value.style, {
368
372
  position: strategy,
369
373
  left: `${x}px`,
370
- top: `${y}px`
374
+ top: `${y}px`,
375
+ // The content follows its reference on scroll; once the reference is
376
+ // fully scrolled out of its clipping containers the content must not
377
+ // stay visible (it would float over unrelated UI).
378
+ visibility: referenceIsMeasurable && ((_a3 = middlewareData.hide) == null ? void 0 : _a3.referenceHidden) ? "hidden" : "visible"
371
379
  });
372
380
  ["top", "right", "bottom", "left"].forEach((side) => {
373
381
  var _a4;
@@ -317,17 +317,18 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
317
317
  (c) => c !== "mt-floating-ui"
318
318
  );
319
319
  floatingUiContent.value.classList.add(...givenClasses);
320
+ const { middleware: consumerMiddleware, ...consumerOptions } = props.floatingUiOptions ?? {};
320
321
  cleanup = floatingUi_dom.autoUpdate(
321
322
  referenceEl,
322
323
  floatingUiContent.value,
323
324
  () => {
324
- var _a3;
325
325
  if (!referenceEl || !floatingUiContent.value) {
326
326
  return;
327
327
  }
328
328
  floatingUi_dom.computePosition(referenceEl, floatingUiContent.value, {
329
329
  placement: "bottom-start",
330
330
  strategy: "fixed",
331
+ ...consumerOptions,
331
332
  middleware: [
332
333
  floatingUi_dom.offset(props.offset ?? 6),
333
334
  ...(() => {
@@ -337,16 +338,17 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
337
338
  return [];
338
339
  })(),
339
340
  floatingUi_dom.flip(),
340
- ...((_a3 = props.floatingUiOptions) == null ? void 0 : _a3.middleware) ?? [],
341
+ ...consumerMiddleware ?? [],
341
342
  floatingUi_dom.size({
342
343
  apply({ rects }) {
343
344
  referenceElementWidth.value = rects.reference.width ?? 0;
344
345
  referenceElementHeight.value = rects.reference.height ?? 0;
345
346
  }
346
- })
347
- ],
348
- ...props.floatingUiOptions
347
+ }),
348
+ floatingUi_dom.hide()
349
+ ]
349
350
  }).then(({ x, y, middlewareData, placement, strategy }) => {
351
+ var _a3;
350
352
  if (!floatingUiContent.value) {
351
353
  return;
352
354
  }
@@ -365,10 +367,16 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
365
367
  [staticSide]: "-2px"
366
368
  });
367
369
  }
370
+ const referenceRect = referenceEl.getBoundingClientRect();
371
+ const referenceIsMeasurable = referenceRect.width > 0 && referenceRect.height > 0;
368
372
  Object.assign(floatingUiContent.value.style, {
369
373
  position: strategy,
370
374
  left: `${x}px`,
371
- top: `${y}px`
375
+ top: `${y}px`,
376
+ // The content follows its reference on scroll; once the reference is
377
+ // fully scrolled out of its clipping containers the content must not
378
+ // stay visible (it would float over unrelated UI).
379
+ visibility: referenceIsMeasurable && ((_a3 = middlewareData.hide) == null ? void 0 : _a3.referenceHidden) ? "hidden" : "visible"
372
380
  });
373
381
  ["top", "right", "bottom", "left"].forEach((side) => {
374
382
  var _a4;
@@ -0,0 +1,191 @@
1
+ import './mt-grant-permission-service-banner.css';
2
+ import { ref, computed, defineComponent, useId, unref, openBlock, createElementBlock, createElementVNode, createVNode, withCtx, createTextVNode, toDisplayString, createCommentVNode } from "vue";
3
+ import { c as computedAsync } from "./index-03602e2a.mjs";
4
+ import { useI18n } from "vue-i18n";
5
+ import { _ as _sfc_main$1 } from "./mt-icon.vue_vue_type_style_index_0_lang-c90dc25b.mjs";
6
+ import MtText from "./esm/MtText.js";
7
+ import MtButton from "./esm/MtButton.js";
8
+ import { c as createSender } from "./channel-24cdec8b.mjs";
9
+ import { g as getAppInformation } from "./index-1e353711.mjs";
10
+ import { _ as _export_sfc } from "./_plugin-vue_export-helper-cc2b3d55.mjs";
11
+ const isService = createSender("contextIsService", {});
12
+ const grant = createSender("servicePermissionGrant", {});
13
+ const isGranted = createSender("servicePermissionIsGranted", {});
14
+ function useServicePermission() {
15
+ const isGranting = ref(false);
16
+ const isService$1 = computedAsync(async () => {
17
+ try {
18
+ return await isService();
19
+ } catch {
20
+ return null;
21
+ }
22
+ }, null);
23
+ const permissionGranted = computedAsync(async () => {
24
+ try {
25
+ return await isGranted();
26
+ } catch {
27
+ return null;
28
+ }
29
+ }, null);
30
+ const isShowPermissionUI = computed(
31
+ () => isService$1.value === true && permissionGranted.value === false
32
+ );
33
+ async function grant$1() {
34
+ if (isGranting.value)
35
+ return;
36
+ isGranting.value = true;
37
+ try {
38
+ await grant();
39
+ } catch (error) {
40
+ console.error("Error granting permission:", error);
41
+ throw error;
42
+ } finally {
43
+ isGranting.value = false;
44
+ }
45
+ }
46
+ return {
47
+ isGranting,
48
+ isService: isService$1,
49
+ permissionGranted,
50
+ isShowPermissionUI,
51
+ grant: grant$1
52
+ };
53
+ }
54
+ const dispatch = createSender("telemetryDispatch");
55
+ const _hoisted_1 = {
56
+ key: 0,
57
+ class: "mt-grant-permission-service-banner__container"
58
+ };
59
+ const _hoisted_2 = ["aria-labelledby"];
60
+ const _hoisted_3 = { class: "mt-grant-permission-service-banner__body" };
61
+ const _hoisted_4 = { class: "mt-grant-permission-service-banner__actions" };
62
+ const _hoisted_5 = { class: "mt-grant-permission-service-banner__label--short" };
63
+ const _hoisted_6 = { class: "mt-grant-permission-service-banner__label--long" };
64
+ const __default__ = {
65
+ name: "MtGrantPermissionServiceBanner"
66
+ };
67
+ const _sfc_main = /* @__PURE__ */ defineComponent({
68
+ ...__default__,
69
+ emits: ["grant-success", "grant-error", "more-info"],
70
+ setup(__props, { emit: __emit }) {
71
+ const { t } = useI18n({
72
+ messages: {
73
+ en: {
74
+ title: "Grant permissions to activate this service.",
75
+ description: "Only the data needed to function will be accessed.",
76
+ grantLabel: "Grant permissions",
77
+ grantLongLabel: "Grant permissions and activate",
78
+ moreInfo: "More info",
79
+ moreInfoUrl: "https://developer.contena.cn/docs/"
80
+ },
81
+ zh: {
82
+ title: "授予权限以启用此服务。",
83
+ description: "仅访问此功能运行所需的数据。",
84
+ grantLabel: "授予权限",
85
+ grantLongLabel: "授予权限并启用",
86
+ moreInfo: "了解更多",
87
+ moreInfoUrl: "https://developer.contena.cn/docs/"
88
+ }
89
+ }
90
+ });
91
+ const titleId = useId();
92
+ const emit = __emit;
93
+ const { isGranting, isShowPermissionUI, grant: grant2 } = useServicePermission();
94
+ const appInfo = computedAsync(async () => {
95
+ return await getAppInformation();
96
+ }, null);
97
+ function track(event, data) {
98
+ dispatch({ event, data }).catch(() => void 0);
99
+ }
100
+ async function handleGrantPermission() {
101
+ var _a, _b;
102
+ track(`${(_a = appInfo.value) == null ? void 0 : _a.name}_grant_permission_clicked`, {
103
+ contena_version: (_b = appInfo.value) == null ? void 0 : _b.version
104
+ });
105
+ try {
106
+ await grant2();
107
+ emit("grant-success");
108
+ } catch (error) {
109
+ emit("grant-error", error);
110
+ }
111
+ }
112
+ function handleClickMoreInfo() {
113
+ var _a;
114
+ track(`${(_a = appInfo.value) == null ? void 0 : _a.name}_grant_permission_more_info`);
115
+ emit("more-info");
116
+ }
117
+ return (_ctx, _cache) => {
118
+ return unref(isShowPermissionUI) ? (openBlock(), createElementBlock("div", _hoisted_1, [
119
+ createElementVNode("section", {
120
+ class: "mt-grant-permission-service-banner",
121
+ "aria-labelledby": unref(titleId)
122
+ }, [
123
+ createVNode(_sfc_main$1, {
124
+ class: "mt-grant-permission-service-banner__icon",
125
+ name: "regular-trust",
126
+ size: "32",
127
+ decorative: ""
128
+ }),
129
+ createElementVNode("div", _hoisted_3, [
130
+ createVNode(MtText, {
131
+ id: unref(titleId),
132
+ as: "h3",
133
+ weight: "bold",
134
+ size: "xs",
135
+ class: "mt-grant-permission-service-banner__title"
136
+ }, {
137
+ default: withCtx(() => [
138
+ createTextVNode(toDisplayString(unref(t)("title")), 1)
139
+ ]),
140
+ _: 1
141
+ }, 8, ["id"]),
142
+ createVNode(MtText, {
143
+ size: "2xs",
144
+ color: "color-text-secondary-default",
145
+ class: "mt-grant-permission-service-banner__description"
146
+ }, {
147
+ default: withCtx(() => [
148
+ createTextVNode(toDisplayString(unref(t)("description")), 1)
149
+ ]),
150
+ _: 1
151
+ })
152
+ ]),
153
+ createElementVNode("div", _hoisted_4, [
154
+ createVNode(MtButton, {
155
+ variant: "primary",
156
+ class: "mt-grant-permission-service-banner__grant",
157
+ "is-loading": unref(isGranting),
158
+ onClick: handleGrantPermission
159
+ }, {
160
+ default: withCtx(() => [
161
+ createElementVNode("span", _hoisted_5, toDisplayString(unref(t)("grantLabel")), 1),
162
+ createElementVNode("span", _hoisted_6, toDisplayString(unref(t)("grantLongLabel")), 1)
163
+ ]),
164
+ _: 1
165
+ }, 8, ["is-loading"]),
166
+ createVNode(MtButton, {
167
+ is: "a",
168
+ variant: "secondary",
169
+ class: "mt-grant-permission-service-banner__more-info",
170
+ href: unref(t)("moreInfoUrl"),
171
+ target: "_blank",
172
+ rel: "noopener noreferrer",
173
+ onClick: handleClickMoreInfo
174
+ }, {
175
+ default: withCtx(() => [
176
+ createTextVNode(toDisplayString(unref(t)("moreInfo")), 1)
177
+ ]),
178
+ _: 1
179
+ }, 8, ["href"])
180
+ ])
181
+ ], 8, _hoisted_2)
182
+ ])) : createCommentVNode("", true);
183
+ };
184
+ }
185
+ });
186
+ const mtGrantPermissionServiceBanner_vue_vue_type_style_index_0_scoped_038d2bc3_lang = "";
187
+ const mtGrantPermissionServiceBanner = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-038d2bc3"]]);
188
+ export {
189
+ mtGrantPermissionServiceBanner as m,
190
+ useServicePermission as u
191
+ };