@devix-tecnologia/timeline-vue 1.0.1 → 1.1.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 (34) hide show
  1. package/README.md +138 -11
  2. package/dist/style.css +1 -1
  3. package/dist/timeline-vue.es.js +293 -256
  4. package/dist/types/components/timeline/atomos/AvatarTimeline.vue.d.ts +0 -1
  5. package/dist/types/components/timeline/atomos/BoxData.vue.d.ts +0 -1
  6. package/dist/types/components/timeline/atomos/Destaque.vue.d.ts +0 -1
  7. package/dist/types/components/timeline/atomos/Hora.vue.d.ts +0 -2
  8. package/dist/types/components/timeline/atomos/IconeCategoria.vue.d.ts +2 -3
  9. package/dist/types/components/timeline/atomos/IconeStatus.vue.d.ts +0 -1
  10. package/dist/types/components/timeline/atomos/SubtituloEvento.vue.d.ts +0 -1
  11. package/dist/types/components/timeline/atomos/TituloEvento.vue.d.ts +0 -1
  12. package/dist/types/components/timeline/moleculas/DescricaoEvento.vue.d.ts +0 -1
  13. package/dist/types/components/timeline/moleculas/EventoTimeline.vue.d.ts +84 -5
  14. package/dist/types/components/timeline/moleculas/HoraEvento.vue.d.ts +5 -3
  15. package/dist/types/components/timeline/moleculas/PerfilTimeline.vue.d.ts +0 -2
  16. package/dist/types/components/timeline/moleculas/SeparadorPeriodo.vue.d.ts +3 -7
  17. package/dist/types/components/timeline/moleculas/Topo.vue.d.ts +0 -1
  18. package/dist/types/components/timeline/organismos/Timeline.vue.d.ts +2 -5
  19. package/dist/types/components/timeline/type.d.ts +10 -7
  20. package/package.json +2 -2
  21. package/src/components/timeline/atomos/Destaque.vue +3 -3
  22. package/src/components/timeline/atomos/Hora.vue +7 -10
  23. package/src/components/timeline/atomos/IconeCategoria.vue +6 -6
  24. package/src/components/timeline/atomos/IconeStatus.vue +17 -16
  25. package/src/components/timeline/moleculas/DescricaoEvento.vue +5 -5
  26. package/src/components/timeline/moleculas/EventoTimeline.stories.ts +49 -49
  27. package/src/components/timeline/moleculas/EventoTimeline.vue +82 -26
  28. package/src/components/timeline/moleculas/HoraEvento.vue +5 -4
  29. package/src/components/timeline/moleculas/PerfilTimeline.vue +2 -3
  30. package/src/components/timeline/moleculas/SeparadorPeriodo.vue +26 -27
  31. package/src/components/timeline/organismos/Timeline.mock.ts +87 -57
  32. package/src/components/timeline/organismos/Timeline.stories.ts +22 -5
  33. package/src/components/timeline/organismos/Timeline.vue +97 -73
  34. package/src/components/timeline/type.ts +11 -7
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  imagem: {
4
3
  type: StringConstructor;
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  dataNumero: {
4
3
  required: true;
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  destaque: {
4
3
  type: StringConstructor;
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  hora: {
4
3
  required: true;
@@ -11,7 +10,6 @@ declare const _default: import("vue").DefineComponent<{
11
10
  classes: import("vue").ComputedRef<{
12
11
  [x: string]: boolean;
13
12
  }>;
14
- horaString: string;
15
13
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
16
14
  hora: {
17
15
  required: true;
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  iconeCategoria: {
4
3
  type: StringConstructor;
@@ -23,8 +22,8 @@ declare const _default: import("vue").DefineComponent<{
23
22
  }, {
24
23
  classes: import("vue").ComputedRef<{
25
24
  [x: string]: boolean;
26
- 'bg-escuro': boolean;
27
- 'bg-claro': boolean;
25
+ "bg-escuro": boolean;
26
+ "bg-claro": boolean;
28
27
  }>;
29
28
  style: import("vue").ComputedRef<{
30
29
  borderColor: string | undefined;
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  status: {
4
3
  required: true;
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  subtitulo: {
4
3
  required: true;
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  titulo: {
4
3
  required: true;
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  titulo: {
4
3
  required: true;
@@ -1,18 +1,97 @@
1
- /** __vue_virtual_code_placeholder */
1
+ import { PropType } from "vue";
2
+ interface Categoria {
3
+ nome: string;
4
+ icone: string;
5
+ }
2
6
  declare const _default: import("vue").DefineComponent<{
3
- dadosEvento: {
7
+ status: {
4
8
  required: true;
5
- type: ObjectConstructor;
9
+ type: StringConstructor;
10
+ };
11
+ criticidade: {
12
+ required: true;
13
+ type: StringConstructor;
14
+ };
15
+ ehAtual: {
16
+ required: true;
17
+ type: BooleanConstructor;
18
+ };
19
+ previsto: {
20
+ required: true;
21
+ type: DateConstructor;
22
+ };
23
+ realizado: {
24
+ required: false;
25
+ type: PropType<Date | null>;
26
+ };
27
+ categoria: {
28
+ required: true;
29
+ type: () => Categoria;
30
+ };
31
+ titulo: {
32
+ required: true;
33
+ type: StringConstructor;
34
+ };
35
+ subtitulo: {
36
+ required: true;
37
+ type: StringConstructor;
38
+ };
39
+ destaque: {
40
+ required: true;
41
+ type: StringConstructor;
42
+ };
43
+ aoCLicar: {
44
+ required: false;
45
+ type: PropType<VoidFunction>;
6
46
  };
7
47
  }, {
8
48
  eventoSelecionado: import("vue").ComputedRef<{
9
49
  atual: boolean;
10
50
  padrao: boolean;
11
51
  }>;
52
+ clicavel: import("vue").ComputedRef<{
53
+ clicavel: boolean;
54
+ }>;
12
55
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
13
- dadosEvento: {
56
+ status: {
14
57
  required: true;
15
- type: ObjectConstructor;
58
+ type: StringConstructor;
59
+ };
60
+ criticidade: {
61
+ required: true;
62
+ type: StringConstructor;
63
+ };
64
+ ehAtual: {
65
+ required: true;
66
+ type: BooleanConstructor;
67
+ };
68
+ previsto: {
69
+ required: true;
70
+ type: DateConstructor;
71
+ };
72
+ realizado: {
73
+ required: false;
74
+ type: PropType<Date | null>;
75
+ };
76
+ categoria: {
77
+ required: true;
78
+ type: () => Categoria;
79
+ };
80
+ titulo: {
81
+ required: true;
82
+ type: StringConstructor;
83
+ };
84
+ subtitulo: {
85
+ required: true;
86
+ type: StringConstructor;
87
+ };
88
+ destaque: {
89
+ required: true;
90
+ type: StringConstructor;
91
+ };
92
+ aoCLicar: {
93
+ required: false;
94
+ type: PropType<VoidFunction>;
16
95
  };
17
96
  }>>, {}>;
18
97
  export default _default;
@@ -1,11 +1,12 @@
1
- /** __vue_virtual_code_placeholder */
1
+ import { PropType } from "vue";
2
2
  declare const _default: import("vue").DefineComponent<{
3
3
  horaPrevista: {
4
4
  type: DateConstructor;
5
5
  required: true;
6
6
  };
7
7
  horaRealizada: {
8
- type: DateConstructor;
8
+ required: false;
9
+ type: PropType<Date | null>;
9
10
  };
10
11
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
11
12
  horaPrevista: {
@@ -13,7 +14,8 @@ declare const _default: import("vue").DefineComponent<{
13
14
  required: true;
14
15
  };
15
16
  horaRealizada: {
16
- type: DateConstructor;
17
+ required: false;
18
+ type: PropType<Date | null>;
17
19
  };
18
20
  }>>, {}>;
19
21
  export default _default;
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  imagemPerfil: {
4
3
  type: StringConstructor;
@@ -17,7 +16,6 @@ declare const _default: import("vue").DefineComponent<{
17
16
  style: import("vue").ComputedRef<{
18
17
  backgroundColor: string;
19
18
  }>;
20
- elementoFixo: import("vue").Ref<HTMLElement | null>;
21
19
  isFixed: import("vue").Ref<boolean>;
22
20
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
23
21
  imagemPerfil: {
@@ -1,21 +1,17 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{
3
2
  dataSeparador: {
4
3
  required: true;
5
- type: StringConstructor;
4
+ type: DateConstructor;
6
5
  };
7
6
  aparencia: {
8
7
  type: StringConstructor;
9
8
  };
10
9
  }, {
11
- dataRecebida: string;
12
- ano: number;
13
- mes: string;
14
- dia: number;
10
+ mesCorrente: (mes: number) => any;
15
11
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
16
12
  dataSeparador: {
17
13
  required: true;
18
- type: StringConstructor;
14
+ type: DateConstructor;
19
15
  };
20
16
  aparencia: {
21
17
  type: StringConstructor;
@@ -1,3 +1,2 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
3
2
  export default _default;
@@ -1,4 +1,3 @@
1
- /** __vue_virtual_code_placeholder */
2
1
  import { Evento } from "../type";
3
2
  type TipoEventoTimeline = {
4
3
  tipo: "dia";
@@ -8,7 +7,6 @@ type TipoEventoTimeline = {
8
7
  tipo: "evento";
9
8
  valor: Evento;
10
9
  key: number;
11
- atual: boolean;
12
10
  } | {
13
11
  tipo: "eventos";
14
12
  valor: Evento[];
@@ -25,9 +23,8 @@ declare const _default: import("vue").DefineComponent<{
25
23
  };
26
24
  }, {
27
25
  eventosPorTipo: import("vue").ComputedRef<TipoEventoTimeline[]>;
28
- }, unknown, {}, {
29
- scrollParaItemAtual(): void;
30
- }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
26
+ scrollParaItemAtual: () => void;
27
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
31
28
  perfilTimeline: {
32
29
  required: true;
33
30
  type: ObjectConstructor;
@@ -3,21 +3,24 @@ export type Perfil = {
3
3
  imagem: string | null;
4
4
  icone: string | null;
5
5
  };
6
+ export type Categoria = {
7
+ nome: string;
8
+ icone: string;
9
+ };
6
10
  export type Evento = {
7
11
  id: string;
8
12
  data: Date;
9
13
  previsto: Date;
10
14
  duracao: number | null;
11
15
  realizado: Date | null;
12
- tolerancia: number | null;
16
+ tolerancia: number;
13
17
  titulo: string;
14
18
  subtitulo: string;
15
19
  destaque: string;
16
- categoria: {
17
- nome: string;
18
- icone: string;
19
- };
20
+ categoria: Categoria;
20
21
  status: "atrasado" | "adiantado" | "adiado" | "realizado" | "planejado" | "cancelado";
21
- criticidade: string;
22
- acao: boolean;
22
+ criticidade: "baixa" | "media" | "alta";
23
+ aoCLicar?: VoidFunction;
24
+ atual: boolean;
25
+ scroll: boolean;
23
26
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@devix-tecnologia/timeline-vue",
3
3
  "private": false,
4
- "version": "1.0.1",
4
+ "version": "1.1.0",
5
5
  "scripts": {
6
6
  "dev": "vite",
7
7
  "build": "vue-tsc && vite build",
@@ -24,7 +24,7 @@
24
24
  "@storybook/addon-styling": "^1.0.1",
25
25
  "@storybook/blocks": "^7.0.7",
26
26
  "@storybook/testing-library": "^0.0.14-next.2",
27
- "@storybook/vue3": "^7.0.7",
27
+ "@storybook/vue3": "6.5.16",
28
28
  "@storybook/vue3-vite": "^7.0.7",
29
29
  "@vitejs/plugin-vue": "^4.1.0",
30
30
  "react": "^18.2.0",
@@ -2,10 +2,10 @@
2
2
  <div class="destaqueEvento texto-pequeno">{{ destaque }}</div>
3
3
  </template>
4
4
  <script lang="ts">
5
- import { defineComponent } from 'vue';
5
+ import { defineComponent } from "vue";
6
6
 
7
7
  export default defineComponent({
8
- name: 'destaque',
8
+ name: "destaque",
9
9
  props: {
10
10
  destaque: {
11
11
  type: String,
@@ -29,7 +29,7 @@ export default defineComponent({
29
29
  width: 15%;
30
30
  line-height: 1em;
31
31
  color: var(--cor-texto);
32
- padding: 1.4rem;
32
+ padding: 2.4rem 1.4rem;
33
33
  vertical-align: middle;
34
34
  }
35
35
 
@@ -1,11 +1,13 @@
1
1
  <template>
2
- <div class="hora" :class="classes">{{ horaString }}</div>
2
+ <div class="hora" :class="classes">
3
+ {{ hora.getHours() }}:{{ hora.getMinutes().toString().padStart(2, "0") }}
4
+ </div>
3
5
  </template>
4
6
  <script lang="ts">
5
- import { defineComponent, reactive, computed } from 'vue';
7
+ import { defineComponent, reactive, computed, ref } from "vue";
6
8
 
7
9
  export default defineComponent({
8
- name: 'hora',
10
+ name: "hora",
9
11
  props: {
10
12
  hora: {
11
13
  required: true,
@@ -17,17 +19,12 @@ export default defineComponent({
17
19
  },
18
20
  components: {},
19
21
  setup(props) {
20
- props = reactive(props);
22
+ const propsAparecia = ref(props.aparencia);
21
23
 
22
- const data = props.hora;
23
- const horaSimples = data.getHours();
24
- const minutos = data.getMinutes();
25
- const horaString = `${horaSimples}:${minutos.toString().padStart(2, '0')}`;
26
24
  return {
27
25
  classes: computed(() => ({
28
- [`hora-${props.aparencia || ''}`]: true,
26
+ [`hora-${propsAparecia || ""}`]: true,
29
27
  })),
30
- horaString,
31
28
  };
32
29
  },
33
30
  });
@@ -11,9 +11,9 @@
11
11
  </div>
12
12
  </template>
13
13
  <script lang="ts">
14
- import { defineComponent, reactive, computed } from 'vue';
14
+ import { defineComponent, reactive, computed } from "vue";
15
15
  export default defineComponent({
16
- name: 'categoria',
16
+ name: "categoria",
17
17
  props: {
18
18
  iconeCategoria: {
19
19
  type: String,
@@ -40,9 +40,9 @@ export default defineComponent({
40
40
  props = reactive(props);
41
41
  return {
42
42
  classes: computed(() => ({
43
- 'bg-escuro': props.escuro,
44
- 'bg-claro': !props.escuro,
45
- [`borda-${props.tipo || 'padrao'}`]: true,
43
+ "bg-escuro": props.escuro,
44
+ "bg-claro": !props.escuro,
45
+ [`borda-${props.tipo || "padrao"}`]: true,
46
46
  })),
47
47
  style: computed(() => ({
48
48
  borderColor: props.borderColor,
@@ -59,7 +59,7 @@ export default defineComponent({
59
59
  display: table-cell;
60
60
  align-items: center;
61
61
  width: 3rem;
62
- padding: 1.8rem 1.4rem;
62
+ padding: 2.8rem 1.4rem;
63
63
  }
64
64
 
65
65
  .bg-escuro,
@@ -2,10 +2,10 @@
2
2
  <div :class="classes" class="iconeStatus"></div>
3
3
  </template>
4
4
  <script lang="ts">
5
- import { defineComponent, reactive, computed } from 'vue';
5
+ import { defineComponent, reactive, computed } from "vue";
6
6
 
7
7
  export default defineComponent({
8
- name: 'status',
8
+ name: "status",
9
9
  props: {
10
10
  status: {
11
11
  required: true,
@@ -17,7 +17,7 @@ export default defineComponent({
17
17
  props = reactive(props);
18
18
  return {
19
19
  classes: computed(() => ({
20
- [`${props.status || 'planejado'}`]: true,
20
+ [`${props.status || "planejado"}`]: true,
21
21
  })),
22
22
  };
23
23
  },
@@ -26,47 +26,48 @@ export default defineComponent({
26
26
  <style scoped>
27
27
  /* icones */
28
28
  .iconeStatus {
29
- font-size: 1.6rem;
29
+ font-size: 1.8rem;
30
30
  line-height: 1rem;
31
31
  color: var(--cor-secundaria);
32
32
  width: 1.6rem;
33
33
  display: table-cell;
34
- padding: 1.4rem;
34
+ padding: 2.4rem 1.4rem;
35
35
  vertical-align: top;
36
- padding-top: 2.7rem;
36
+ padding-top: 3.7rem;
37
37
  }
38
38
 
39
39
  .realizado.iconeStatus {
40
40
  color: var(--cor-sucesso);
41
41
  }
42
42
  .realizado.iconeStatus::before {
43
- font-family: 'Material Symbols Outlined';
44
- content: '\e86c';
43
+ font-family: "Material Symbols Outlined";
44
+ content: "\e86c";
45
45
  }
46
46
  .cancelado.iconeStatus {
47
47
  color: var(--cor-importante);
48
48
  }
49
49
  .cancelado.iconeStatus::before {
50
- font-family: 'Material Symbols Outlined';
51
- content: '\e5c9';
50
+ font-family: "Material Symbols Outlined";
51
+ content: "\e5c9";
52
52
  }
53
53
  .adiado.iconeStatus {
54
54
  color: var(--cor-apoio);
55
55
  }
56
56
  .adiado.iconeStatus::before {
57
- font-family: 'Material Symbols Outlined';
58
- content: '\e923';
57
+ font-family: "Material Symbols Outlined";
58
+ content: "\e923";
59
59
  }
60
60
 
61
61
  .planejado.iconeStatus {
62
62
  opacity: 0;
63
63
  }
64
64
  .planejado.iconeStatus::before {
65
- font-family: 'Material Symbols Outlined';
66
- content: '\e838';
65
+ font-family: "Material Symbols Outlined";
66
+ content: "\e838";
67
67
  }
68
68
  .atrasado.iconeStatus::before {
69
- font-family: 'Material Symbols Outlined';
70
- content: '\e8b5';
69
+ font-family: "Material Symbols Outlined";
70
+ content: "\f725";
71
+ color: var(--cor-alerta);
71
72
  }
72
73
  </style>
@@ -3,14 +3,14 @@
3
3
  <TituloEvento :titulo="titulo" />
4
4
  <SubtituloEvento :subtitulo="subtitulo" />
5
5
  </div>
6
- <div v-else class="descricaoEvento" style="padding-top: 2.3rem">
6
+ <div v-else class="descricaoEvento" style="padding-top: 3.3rem">
7
7
  <TituloEvento :titulo="titulo" />
8
8
  </div>
9
9
  </template>
10
10
  <script lang="ts">
11
- import { defineComponent } from 'vue';
12
- import SubtituloEvento from '../atomos/SubtituloEvento.vue';
13
- import TituloEvento from '../atomos/TituloEvento.vue';
11
+ import { defineComponent } from "vue";
12
+ import SubtituloEvento from "../atomos/SubtituloEvento.vue";
13
+ import TituloEvento from "../atomos/TituloEvento.vue";
14
14
 
15
15
  export default defineComponent({
16
16
  props: {
@@ -36,7 +36,7 @@ export default defineComponent({
36
36
  .descricaoEvento {
37
37
  display: table-cell;
38
38
  vertical-align: top;
39
- padding: 1.4rem;
39
+ padding: 2.4rem;
40
40
  padding-left: 0;
41
41
  }
42
42