@luizleon/sf.prefeiturasp.vuecomponents 0.0.66 → 4.0.1

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 (78) hide show
  1. package/dist/sf.prefeiturasp.vuecomponents.cjs +423 -0
  2. package/dist/sf.prefeiturasp.vuecomponents.cjs.map +1 -0
  3. package/dist/sf.prefeiturasp.vuecomponents.js +8953 -0
  4. package/dist/sf.prefeiturasp.vuecomponents.js.map +1 -0
  5. package/dist/sf.prefeiturasp.vuecomponents.umd.cjs +423 -0
  6. package/dist/sf.prefeiturasp.vuecomponents.umd.cjs.map +1 -0
  7. package/dist/{axios → src/axios}/axiosClient.d.ts +7 -0
  8. package/dist/{components/button/Button.d.ts → src/components/button/Button.vue.d.ts} +16 -16
  9. package/dist/{components/content/Content.d.ts → src/components/content/Content.vue.d.ts} +7 -7
  10. package/dist/{components/drawer/Drawer.d.ts → src/components/drawer/Drawer.vue.d.ts} +15 -15
  11. package/dist/{components/icon/Icon.d.ts → src/components/icon/Icon.vue.d.ts} +23 -24
  12. package/dist/{components/internal/HeaderAvatar.d.ts → src/components/internal/HeaderAvatar.vue.d.ts} +2 -2
  13. package/dist/src/components/internal/LoadingCircle.vue.d.ts +2 -0
  14. package/dist/src/components/internal/MenuIcon.vue.d.ts +2 -0
  15. package/dist/src/components/internal/ScrollToTop.vue.d.ts +2 -0
  16. package/dist/src/components/internal/ThemeToggle.d.ts +10 -0
  17. package/dist/src/components/internal/ThemeToggle.vue.d.ts +2 -0
  18. package/dist/{components/layout/Layout.d.ts → src/components/layout/Layout.vue.d.ts} +9 -2
  19. package/dist/{components/message/Message.d.ts → src/components/message/Message.vue.d.ts} +14 -14
  20. package/dist/src/components/navmenu/NavMenu.vue.d.ts +15 -0
  21. package/dist/{components/tabnavigation/TabNavigation.d.ts → src/components/tabnavigation/TabNavigation.vue.d.ts} +9 -9
  22. package/dist/{components/tooltip/Tooltip.d.ts → src/components/tooltip/Tooltip.vue.d.ts} +7 -7
  23. package/dist/src/index.d.ts +17 -0
  24. package/dist/{types → src/types}/index.d.ts +11 -0
  25. package/dist/style.css +1 -1
  26. package/dist/tsconfig.tsbuildinfo +1 -0
  27. package/package.json +10 -9
  28. package/src/axios/axiosClient.ts +111 -3
  29. package/src/components/button/Button.vue +1 -1
  30. package/src/components/icon/Icon.vue +12 -16
  31. package/src/components/internal/getMaxZindex.ts +3 -2
  32. package/src/components/layout/Layout.vue +8 -1
  33. package/src/components/navmenu/NavMenu.vue +109 -0
  34. package/src/index.ts +2 -4
  35. package/src/keycloak.js +1485 -1890
  36. package/src/services/authService.ts +13 -4
  37. package/src/style/componentes.scss +5 -1
  38. package/src/style/src/_functions.scss +17 -2
  39. package/src/style/src/_mixins.scss +51 -29
  40. package/src/style/src/_variables.scss +11 -0
  41. package/src/style/src/components/_button.scss +8 -11
  42. package/src/style/src/components/_icon.scss +49 -47
  43. package/src/style/src/components/_tooltip.scss +6 -7
  44. package/src/types/index.ts +24 -0
  45. package/src/vite-env.d.ts +1 -0
  46. package/tsconfig.json +5 -3
  47. package/vite.config.js +2 -4
  48. package/dist/components/internal/LoadingCircle.d.ts +0 -2
  49. package/dist/components/internal/MenuIcon.d.ts +0 -2
  50. package/dist/components/internal/ScrollToTop.d.ts +0 -2
  51. package/dist/components/internal/ThemeToggle.d.ts +0 -2
  52. package/dist/components/navmenulink/NavMenuLink.d.ts +0 -18
  53. package/dist/components/panelmenu/PanelMenu.d.ts +0 -16
  54. package/dist/index.d.ts +0 -18
  55. package/dist/keycloak.d.ts +0 -671
  56. package/dist/sf.prefeiturasp.vuecomponents.es.js +0 -8685
  57. package/dist/sf.prefeiturasp.vuecomponents.es.js.map +0 -1
  58. package/dist/sf.prefeiturasp.vuecomponents.umd.js +0 -153
  59. package/dist/sf.prefeiturasp.vuecomponents.umd.js.map +0 -1
  60. package/src/components/button/Button.d.ts +0 -26
  61. package/src/components/content/Content.d.ts +0 -28
  62. package/src/components/drawer/Drawer.d.ts +0 -50
  63. package/src/components/icon/Icon.d.ts +0 -23
  64. package/src/components/layout/Layout.d.ts +0 -44
  65. package/src/components/message/Message.d.ts +0 -28
  66. package/src/components/navmenulink/NavMenuLink.d.ts +0 -29
  67. package/src/components/navmenulink/NavMenuLink.vue +0 -49
  68. package/src/components/panelmenu/PanelMenu.d.ts +0 -26
  69. package/src/components/panelmenu/PanelMenu.vue +0 -101
  70. package/src/components/tabnavigation/TabNavigation.d.ts +0 -34
  71. package/src/components/tooltip/Tooltip.d.ts +0 -23
  72. package/src/ts-helpers.d.ts +0 -57
  73. /package/dist/{common → src/common}/appResult.d.ts +0 -0
  74. /package/dist/{components → src/components}/internal/cssClassBuilder.d.ts +0 -0
  75. /package/dist/{components → src/components}/internal/getMaxZindex.d.ts +0 -0
  76. /package/dist/{services → src/services}/authService.d.ts +0 -0
  77. /package/dist/{services → src/services}/dialogService.d.ts +0 -0
  78. /package/dist/{services → src/services}/navMenuService.d.ts +0 -0
@@ -1,14 +1,15 @@
1
1
  function GetMaxZindex(seletores: string[] = []) {
2
- let selector = "body *:not(style)";
2
+ let selector = "body > *:not(script):not(style)";
3
3
  for (const s of seletores) {
4
4
  selector += `, ${s}`;
5
5
  }
6
- return Math.max(
6
+ const max = Math.max(
7
7
  ...Array.from(document.querySelectorAll(selector)).map((x) => {
8
8
  const z = getComputedStyle(x).zIndex;
9
9
  return +z === +z ? +z : 0;
10
10
  })
11
11
  );
12
+ return max >= 100 ? max : 100;
12
13
  }
13
14
 
14
15
  export { GetMaxZindex };
@@ -8,6 +8,13 @@ import SfTooltip from "../tooltip/Tooltip.vue";
8
8
 
9
9
  export interface SfLayoutProps {}
10
10
 
11
+ export interface SfLayoutSlots {
12
+ title: {};
13
+ action: {};
14
+ menu: {};
15
+ content: {};
16
+ }
17
+
11
18
  const navService = UseNavMenuService();
12
19
 
13
20
  const emit = defineEmits<{
@@ -37,7 +44,7 @@ onMounted(() => {
37
44
  <slot name="title"></slot>
38
45
  </div>
39
46
  <slot name="action"> </slot>
40
- <SfTooltip :text="'alternar tema'">
47
+ <SfTooltip :text="'Tema'">
41
48
  <ThemeToggle />
42
49
  </SfTooltip>
43
50
  <HeaderAvatar @logout="emit('logout')" />
@@ -0,0 +1,109 @@
1
+ <script setup lang="ts">
2
+ import PanelMenu from "primevue/panelmenu";
3
+ import { UseNavMenuService } from "../../services/navMenuService";
4
+ import { SfNavMenuItem } from "./../../types";
5
+
6
+ export interface SfNavMenuProps {
7
+ items: SfNavMenuItem[];
8
+ }
9
+
10
+ const props = defineProps<SfNavMenuProps>();
11
+
12
+ const navService = UseNavMenuService();
13
+
14
+ function OnClickRoute(ev: Event, navigate: () => void) {
15
+ ev.preventDefault();
16
+ const target = ev.target as HTMLElement;
17
+ const nav = target.closest(".panel-menu-wrapper");
18
+ if (nav && nav.clientWidth + 10 > document.body.clientWidth) {
19
+ navService.Close();
20
+ }
21
+ navigate();
22
+ }
23
+ </script>
24
+
25
+ <template>
26
+ <div class="panel-menu-wrapper">
27
+ <PanelMenu :model="props.items" :unstyled="true">
28
+ <template #item="{ item, active }">
29
+ <router-link
30
+ v-if="!!item.href"
31
+ v-slot="{ navigate, isActive }"
32
+ :to="{
33
+ path: item.href,
34
+ params: item.params ?? {},
35
+ query: item.query ?? {},
36
+ }"
37
+ custom
38
+ >
39
+ <a
40
+ class="item-menu sf-ripple"
41
+ :data-active="isActive"
42
+ :href="item.href"
43
+ @click="OnClickRoute($event, navigate)"
44
+ >
45
+ <span class="material-symbols-outlined sf-mr-3">
46
+ {{ item.icon ?? "chevron_right" }}
47
+ </span>
48
+ <span>{{ item.text }}</span>
49
+ </a>
50
+ </router-link>
51
+ <a v-else class="item-menu sf-ripple">
52
+ <span
53
+ v-if="item.icon"
54
+ class="material-symbols-outlined sf-mr-3"
55
+ >
56
+ {{ item.icon }}
57
+ </span>
58
+ <span>{{ item.text }}</span>
59
+ <div class="sf-flex-grow-1"></div>
60
+ <span
61
+ :class="[
62
+ 'material-symbols-outlined arrow',
63
+ { '--expand': active },
64
+ ]"
65
+ >
66
+ chevron_right
67
+ </span>
68
+ </a>
69
+ </template>
70
+ </PanelMenu>
71
+ </div>
72
+ </template>
73
+
74
+ <style scoped lang="scss">
75
+ .panel-menu-wrapper {
76
+ padding: var(--inline-spacing);
77
+ :deep(ul, li) {
78
+ list-style-type: none;
79
+ padding: 0;
80
+ margin: 0;
81
+ }
82
+ :deep(ul) {
83
+ padding-left: var(--inline-spacing);
84
+ }
85
+ }
86
+ .item-menu {
87
+ display: flex;
88
+ align-items: center;
89
+ padding: var(--inline-spacing);
90
+ color: var(--text-color);
91
+ text-decoration: none;
92
+ border-radius: 6px;
93
+ margin-bottom: 0.25em;
94
+ cursor: pointer;
95
+ &.sub-item {
96
+ margin-bottom: var(--inline-spacing);
97
+ }
98
+ &[data-active="true"] {
99
+ background-color: var(--primary-hover-color);
100
+ color: var(--primary-color);
101
+ }
102
+ }
103
+ .arrow {
104
+ transition: transform 0.3s;
105
+ &.--expand {
106
+ transform: rotate(90deg);
107
+ }
108
+ }
109
+ </style>
package/src/index.ts CHANGED
@@ -1,13 +1,12 @@
1
1
  import SfLayout from "./components/layout/Layout.vue";
2
2
  import SfIcon from "./components/icon/Icon.vue";
3
- import SfNavMenuLink from "./components/navmenulink/NavMenuLink.vue";
4
3
  import SfContent from "./components/content/Content.vue";
5
4
  import SfTabNavigation from "./components/tabnavigation/TabNavigation.vue";
6
5
  import SfButton from "./components/button/Button.vue";
7
6
  import SfDrawer from "./components/drawer/Drawer.vue";
8
7
  import SfMessage from "./components/message/Message.vue";
9
8
  import SfTooltip from "./components/tooltip/Tooltip.vue";
10
- import SfPanelMenu from "./components/panelmenu/PanelMenu.vue";
9
+ import SfNavMenu from "./components/navmenu/NavMenu.vue";
11
10
  import { ThemeToggleBase } from "./components/internal/ThemeToggle";
12
11
 
13
12
  import { UseNavMenuService } from "./services/navMenuService";
@@ -27,14 +26,13 @@ import { AxiosClient, UseAxiosClient } from "./axios/axiosClient";
27
26
  export {
28
27
  SfLayout,
29
28
  SfIcon,
30
- SfNavMenuLink,
31
29
  SfContent,
32
30
  SfTabNavigation,
33
31
  SfButton,
34
32
  SfDrawer,
35
33
  SfMessage,
36
34
  SfTooltip,
37
- SfPanelMenu,
35
+ SfNavMenu,
38
36
  StartAuthService,
39
37
  UseAuthService,
40
38
  UseNavMenuService,