quasar-factory-lib 0.0.20 → 0.0.22

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 (44) hide show
  1. package/dist/components/Alert/AlertDialog.vue.d.ts +2 -2
  2. package/dist/components/TaskNavBar/BasicNavBar.vue.d.ts +70 -0
  3. package/dist/components/TaskNavBar/TaskNavBar.vue.d.ts +61 -0
  4. package/dist/components/{KMyButton → TaskNavBar}/index.d.ts +2 -2
  5. package/dist/components/index.d.ts +1 -0
  6. package/dist/components/plugins.d.ts +2 -1
  7. package/dist/i18n/en/index.d.ts +6 -0
  8. package/dist/i18n/es/index.d.ts +6 -0
  9. package/dist/i18n/index.d.ts +12 -0
  10. package/dist/index.d.ts +1 -1
  11. package/dist/pages/AlertPage.vue.d.ts +2 -2
  12. package/dist/pages/NavBarPage.vue.d.ts +64 -0
  13. package/dist/quasar-factory-lib.js +6129 -5214
  14. package/dist/quasar-factory-lib.umd.cjs +11 -11
  15. package/dist/store/index.d.ts +2 -1
  16. package/dist/store/table.d.ts +1 -2
  17. package/dist/style.css +1 -1
  18. package/package.json +1 -1
  19. package/src/assets/icons/Add.svg +6 -0
  20. package/src/assets/icons/ArrowBack.svg +3 -0
  21. package/src/assets/icons/Menu.svg +7 -0
  22. package/src/assets/icons/Search.svg +3 -0
  23. package/src/assets/icons/favicon_16x16.png +0 -0
  24. package/src/components/Alert/AlertDialog.vue +7 -7
  25. package/src/components/Table/Table.vue +3 -3
  26. package/src/components/TaskNavBar/BasicNavBar.vue +102 -0
  27. package/src/components/TaskNavBar/TaskNavBar.vue +108 -0
  28. package/src/components/{KMyButton → TaskNavBar}/index.ts +5 -3
  29. package/src/components/index.ts +2 -1
  30. package/src/components/plugins.ts +2 -1
  31. package/src/css/app.css +10 -0
  32. package/src/i18n/en/index.ts +6 -0
  33. package/src/i18n/es/index.ts +6 -0
  34. package/src/index.ts +3 -2
  35. package/src/layouts/MenuLayout.vue +6 -0
  36. package/src/pages/NavBarPage.vue +40 -0
  37. package/src/pages/TablePage.vue +1 -1
  38. package/src/router/routes.ts +4 -0
  39. package/src/store/table.js +1 -3
  40. package/dist/components/KMyButton/MyButton.vue.d.ts +0 -27
  41. package/dist/store/plugin.d.ts +0 -2
  42. package/src/components/KMyButton/MyButton.vue +0 -36
  43. package/src/store/index.ts +0 -1
  44. package/src/store/plugin.ts +0 -3
package/package.json CHANGED
@@ -97,6 +97,6 @@
97
97
  "release": "standard-version"
98
98
  },
99
99
  "type": "module",
100
- "version": "0.0.20",
100
+ "version": "0.0.22",
101
101
  "author": ""
102
102
  }
@@ -0,0 +1,6 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="25.956" height="26.184" viewBox="0 0 25.956 26.184">
2
+ <g id="Grupo_14312" data-name="Grupo 14312" transform="translate(-120.994 -824.065) rotate(45)">
3
+ <line id="Linha_7" data-name="Linha 7" x1="17.323" y2="17.293" transform="translate(677.612 488.5)" fill="none" stroke="#000" stroke-width="1"/>
4
+ <line id="Linha_8" data-name="Linha 8" x2="17.616" y2="17.616" transform="translate(677.996 488.5)" fill="none" stroke="#000" stroke-width="1"/>
5
+ </g>
6
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg id="Componente_25_1" data-name="Componente 25 – 1" xmlns="http://www.w3.org/2000/svg" width="31.14" height="30.072" viewBox="0 0 31.14 30.072">
2
+ <path id="Caminho_11926" data-name="Caminho 11926" d="M31.14,14.016l-29.4.75L15.038,1.442,13.6,0,0,15.036,13.6,30.072l1.442-1.442L1.744,15.291l29.4.765Z"/>
3
+ </svg>
@@ -0,0 +1,7 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="30.448" height="28.247" viewBox="0 0 30.448 28.247">
2
+ <g id="Componente_11_3" data-name="Componente 11 – 3" transform="translate(0 1)">
3
+ <path id="Caminho_702" data-name="Caminho 702" d="M38.053,40.174H24" transform="translate(-7.604 -13.177)" fill="none" stroke="#1a1311" stroke-miterlimit="10" stroke-width="0.5"/>
4
+ <path id="Caminho_703" data-name="Caminho 703" d="M45.079,31.913H24" transform="translate(-14.631 -18.155)" fill="none" stroke="#1a1311" stroke-miterlimit="10" stroke-width="1"/>
5
+ <path id="Caminho_704" data-name="Caminho 704" d="M54.448,23.328H24" transform="translate(-24 -23.328)" fill="none" stroke="#1a1311" stroke-miterlimit="10" stroke-width="2"/>
6
+ </g>
7
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="28.831" height="28.221" viewBox="0 0 28.831 28.221">
2
+ <path id="Caminho_11974" data-name="Caminho 11974" d="M321.559,31.944A10.224,10.224,0,0,0,310.8,22.172,10.425,10.425,0,0,0,300.44,32.529a9.681,9.681,0,0,0,2.8,6.621l-.575.576-9.94,9.221,1.439,1.44,9.222-9.938.607-.607a10.747,10.747,0,0,0,7.2,2.458A10.425,10.425,0,0,0,321.559,31.944Zm-10.732-8.518a8.982,8.982,0,0,1,9.477,8.553,9.159,9.159,0,0,1-9.132,9.069,8.982,8.982,0,0,1-9.477-8.553A9.159,9.159,0,0,1,310.827,23.426Z" transform="translate(-292.73 -22.167)" fill-rule="evenodd"/>
3
+ </svg>
@@ -1,10 +1,10 @@
1
1
  <template>
2
- <q-dialog v-model="showPopUp" :persistent="persistent">
2
+ <q-dialog v-model="alert" :persistent="persistent">
3
3
  <q-banner inline-actions data-cy="alert">
4
4
  <template v-slot:avatar>
5
5
  <q-icon :name="icon" :color="iconColor" :size="iconSize"></q-icon>
6
6
  </template>
7
- <p class="info">{{ message }}</p>
7
+ <p class="info">{{ alertMessage }}</p>
8
8
  <template v-slot:action>
9
9
  <q-btn
10
10
  flat
@@ -31,8 +31,8 @@ export default defineComponent({
31
31
  name: 'AlertDialog',
32
32
  data() {
33
33
  return {
34
- showPopUp: false,
35
- message: '',
34
+ alert: false,
35
+ alertMessage: '',
36
36
  }
37
37
  },
38
38
  props: {
@@ -68,11 +68,11 @@ export default defineComponent({
68
68
  emit: ['dialogClosed'],
69
69
  methods: {
70
70
  openAlertAndSetMessage(message: string): void {
71
- this.showPopUp = true
72
- this.message = message
71
+ this.alert = true
72
+ this.alertMessage = message
73
73
  },
74
74
  closePopup(): void {
75
- this.showPopUp = false
75
+ this.alert = false
76
76
  this.$emit('onPopupClosed')
77
77
  },
78
78
  },
@@ -93,7 +93,6 @@
93
93
  </template>
94
94
  <script lang="ts">
95
95
  import { defineComponent } from 'vue'
96
- import type { QTable } from 'quasar'
97
96
  import TableSlotHeader from './components/TableSlotHeader.vue'
98
97
  import TableColumnsSelector from './components/TableColumnsSelector.vue'
99
98
  import TableSlotBody from './components/TableSlotBody.vue'
@@ -259,8 +258,9 @@ export default defineComponent({
259
258
  this.$emit('onUpdateCustomizedCheckboxValue', row)
260
259
  },
261
260
  clearTableSelection () {
262
- const table = this.$refs.myTable as QTable
263
- table.clearSelection()
261
+ // const table = this.$refs.myTable as QTable
262
+ // table.clearSelection()
263
+ this.selected = []
264
264
  },
265
265
  toggleSearchVisibility (store: {disableScannerButtons: boolean, lastFilterValue: string, valueInputFilterTable: string}) {
266
266
  this.showSearch = !this.showSearch
@@ -0,0 +1,102 @@
1
+ <template>
2
+ <div>
3
+ <q-toolbar class="q-toolbar-unset-height ">
4
+ <div class="row full-width">
5
+ <div class="col-6" id="date-and-employee-name">
6
+ <p data-cy="date" class="textFontSize text-color-light-gray ">{{date.formatDate(Date.now(), "dddd, DD MMM YYYY")}}</p>
7
+ <p data-cy="employeeName" class="textFontSize text-color-almost-black">{{$t('header.hello')}}, {{ employeeName }}</p>
8
+ </div>
9
+ <div class="col-6 text-right" id="buttons">
10
+ <q-img v-if="showBtnBack" src="src/assets/icons/ArrowBack.svg" width="30px" @click="back" class="cursor-pointer" />
11
+ <q-img v-if="showSearch" src="src/assets/icons/Lupa.svg" width="30px" @click="search" class="cursor-pointer"/>
12
+ <q-img src="src/assets/icons/Menu.svg" width="30px" @click="toggleRightDrawer" class="cursor-pointer"/>
13
+ </div>
14
+ </div>
15
+ </q-toolbar >
16
+ <q-toolbar class="q-toolbar-unset-height ">
17
+ <img :src="logo" id="logo">
18
+ </q-toolbar>
19
+ </div>
20
+ </template>
21
+
22
+ <style>
23
+ #logo {
24
+ display: block;
25
+ width: 125px;
26
+ height: 50px;
27
+ background-position: center;
28
+ background-repeat: no-repeat;
29
+ background-size: contain;
30
+ }
31
+ #date-and-employee-name > p {
32
+ margin-bottom: 0;
33
+ }
34
+
35
+ #buttons .q-img {
36
+ margin-left: 20px;
37
+ }
38
+ @media only screen and (max-width: 1100px) {
39
+ .textFontSize{
40
+ font-size: 12px;
41
+ }
42
+ }
43
+ @media only screen and (max-width: 350px) {
44
+ #logo {
45
+ display: none;
46
+ }
47
+ }
48
+ </style>
49
+
50
+ <script lang="ts">
51
+ import { defineComponent } from 'vue'
52
+ import { date } from 'quasar'
53
+ export default defineComponent({
54
+ name: 'BasicNavBar',
55
+ data() {
56
+ return {
57
+ date,
58
+ rightDrawerOpen: false
59
+ }
60
+ },
61
+ props: {
62
+ logo: {
63
+ type: String,
64
+ default: ''
65
+ },
66
+ title: {
67
+ type: String,
68
+ default: 'Testing Title'
69
+ },
70
+ employeeName: {
71
+ type: String,
72
+ default: 'employeeName'
73
+ },
74
+ showBtnBack: {
75
+ type: Boolean,
76
+ default: true
77
+ },
78
+ showBtnSearch: {
79
+ type: Boolean,
80
+ default: true
81
+ },
82
+ showSearch: {
83
+ type: Boolean,
84
+ default: true
85
+ }
86
+ },
87
+ emits: ['search', 'back'],
88
+ methods: {
89
+ toggleRightDrawer () {
90
+ console.log('toggleRightDrawer')
91
+ },
92
+ search () {
93
+ this.$emit('search')
94
+ console.log('search')
95
+ },
96
+ back () {
97
+ this.$emit('back')
98
+ console.log('back')
99
+ }
100
+ },
101
+ })
102
+ </script>
@@ -0,0 +1,108 @@
1
+ <template>
2
+ <div>
3
+ <q-toolbar class="q-toolbar-unset-height">
4
+ <div class="row full-width">
5
+ <div class="col-6">
6
+ <img :src="logo" id="logo">
7
+ </div>
8
+ <div class="col-6 text-right" id="buttons">
9
+ <q-img v-if="showBtnBack" src="src/assets/icons/ArrowBack.svg" width="30px" @click="back" class="cursor-pointer" />
10
+ <q-img v-if="showSearch" src="src/assets/icons/Search.svg" width="30px" @click="search" class="cursor-pointer"/>
11
+ <q-img src="src/assets/icons/Menu.svg" width="30px" @click="toggleRightDrawer" class="cursor-pointer"/>
12
+ <!-- <q-btn v-if="showBtnBack" flat round icon="arrow_back" size="lg" @click="back" class="cursor-pointer" />
13
+ <q-btn v-if="showSearch" flat round icon="search" size="lg" @click="search" class="cursor-pointer"/>
14
+ <q-btn icon="menu" flat round size="lg" @click="toggleRightDrawer" class="cursor-pointer"/> -->
15
+ </div>
16
+ </div>
17
+ </q-toolbar >
18
+ <q-toolbar-title class="text-color-almost-black">
19
+ {{ title }}
20
+ </q-toolbar-title>
21
+ </div>
22
+ </template>
23
+
24
+ <style>
25
+ #logo {
26
+ display: block;
27
+ width: 125px;
28
+ height: 50px;
29
+ background-position: center;
30
+ background-repeat: no-repeat;
31
+ background-size: contain;
32
+ margin-bottom: 10px;
33
+ }
34
+ #buttons .q-img {
35
+ margin-left: 20px;
36
+ }
37
+
38
+ .q-toolbar__title {
39
+ font-family: "SangBleuKingdom-Light, sans-serif";
40
+ font-size: 25px;
41
+ margin: 0;
42
+ }
43
+
44
+ @media only screen and (max-width: 1100px) {
45
+ .q-toolbar__title {
46
+ font-size: 20px;
47
+ }
48
+ }
49
+
50
+ @media only screen and (max-width: 375px) {
51
+ #logo {
52
+ display: none;
53
+ }
54
+ .q-toolbar__title {
55
+ font-size: 18px;
56
+ }
57
+ }
58
+ </style>
59
+
60
+ <script lang="ts">
61
+ import { defineComponent } from 'vue'
62
+ import { date } from 'quasar'
63
+ export default defineComponent({
64
+ name: 'TaskNavBar',
65
+ data() {
66
+ return {
67
+ date,
68
+ rightDrawerOpen: false
69
+ }
70
+ },
71
+ props: {
72
+ logo: {
73
+ type: String,
74
+ default: ''
75
+ },
76
+ title: {
77
+ type: String,
78
+ default: 'Testing Title'
79
+ },
80
+ showBtnBack: {
81
+ type: Boolean,
82
+ default: true
83
+ },
84
+ showBtnSearch: {
85
+ type: Boolean,
86
+ default: true
87
+ },
88
+ showSearch: {
89
+ type: Boolean,
90
+ default: true
91
+ }
92
+ },
93
+ emits: ['search', 'back'],
94
+ methods: {
95
+ toggleRightDrawer () {
96
+ console.log('toggleRightDrawer')
97
+ },
98
+ search () {
99
+ this.$emit('search')
100
+ console.log('search')
101
+ },
102
+ back () {
103
+ this.$emit('back')
104
+ console.log('back')
105
+ }
106
+ },
107
+ })
108
+ </script>
@@ -1,6 +1,6 @@
1
1
  import type { App, Plugin } from 'vue'
2
2
 
3
- import MyButton from './MyButton.vue'
3
+ import TaskNavBar from './TaskNavBar.vue'
4
4
 
5
5
  import { registerComponent } from '@/utils/plugins'
6
6
 
@@ -10,9 +10,11 @@ import { registerComponent } from '@/utils/plugins'
10
10
  /** export button plugin */
11
11
  export default {
12
12
  install (app: App) {
13
- registerComponent(app, 'KMyButton', MyButton)
13
+ registerComponent(app, 'TaskNavBar', TaskNavBar)
14
14
  }
15
15
  } as Plugin
16
16
 
17
17
  /** export button components */
18
- export { MyButton as KMyButton }
18
+ export { TaskNavBar as TaskNavBar }
19
+
20
+
@@ -1,3 +1,4 @@
1
1
  export * from './Table'
2
2
  export * from './Alert'
3
- export * from './Confirm'
3
+ export * from './Confirm'
4
+ export * from './TaskNavBar'
@@ -1,5 +1,6 @@
1
1
  import MyTable from './Table'
2
2
  import AlertDialog from './Alert'
3
3
  import ConfirmDialog from './Confirm'
4
- export { MyTable, AlertDialog, ConfirmDialog }
4
+ import TaskNavBar from './TaskNavBar'
5
+ export { MyTable, AlertDialog, ConfirmDialog, TaskNavBar }
5
6
 
package/src/css/app.css CHANGED
@@ -26,4 +26,14 @@
26
26
  }
27
27
  .bg-main-color {
28
28
  background-color: var(--main-color);
29
+ }
30
+ .text-color-light-gray {
31
+ color: var(--light-gray);
32
+ }
33
+ .text-color-almost-black {
34
+ color: var(--almost-black);
35
+ }
36
+ .q-toolbar-unset-height .q-toolbar {
37
+ min-height: unset;
38
+ padding: 0;
29
39
  }
@@ -16,6 +16,12 @@ const en = {
16
16
  emptyField: 'The field cannot be empty',
17
17
  exceedCharactersTypeList: 'Field must not exceed {0} characters'
18
18
  }
19
+ },
20
+ header: {
21
+ hello: 'Hello'
22
+ },
23
+ global: {
24
+ total: 'Total'
19
25
  }
20
26
  }
21
27
  export default en
@@ -16,6 +16,12 @@ const es = {
16
16
  emptyField: 'El campo no puede estar vacío',
17
17
  exceedCharactersTypeList: 'El campo no debe exceder más de {0} caracteres'
18
18
  }
19
+ },
20
+ header: {
21
+ hello: 'Hola'
22
+ },
23
+ global: {
24
+ total: 'Total'
19
25
  }
20
26
  }
21
27
  export default es
package/src/index.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  import '@quasar/extras/material-icons/material-icons.css'
2
2
  import { Quasar } from 'quasar'
3
3
  import { App, Plugin } from 'vue'
4
- import { MyTable, AlertDialog, ConfirmDialog } from './components/plugins.ts'
4
+ import { MyTable, AlertDialog, ConfirmDialog, TaskNavBar } from './components/plugins.ts'
5
5
  import { registerPlugin, setVueInstance } from './utils/plugins.ts'
6
6
  import TranslateKeys from './i18n/translateKeys.ts'
7
7
  import { createPinia } from 'pinia'
8
- export { MyTable, AlertDialog, ConfirmDialog } from './components/index.ts'
8
+ export { MyTable, AlertDialog, ConfirmDialog, TaskNavBar } from './components/index.ts'
9
9
 
10
10
  export type { TranslateKeys }
11
11
  // import plugins from "./components/plugins";
@@ -24,6 +24,7 @@ const plugin: Plugin = {
24
24
  registerPlugin(app, MyTable)
25
25
  registerPlugin(app, AlertDialog)
26
26
  registerPlugin(app, ConfirmDialog)
27
+ registerPlugin(app, TaskNavBar)
27
28
  app.use(i18n)
28
29
  app.use(pinia)
29
30
  i18n.global.locale = 'en'
@@ -18,6 +18,12 @@
18
18
  router.push('confirmPage')
19
19
  }"
20
20
  />
21
+ <q-btn
22
+ label="navbar"
23
+ @click="() => {
24
+ router.push('navBarPage')
25
+ }"
26
+ />
21
27
  </div>
22
28
  </template>
23
29
  <script setup lang="ts">
@@ -0,0 +1,40 @@
1
+ <template>
2
+ <q-page-container class=" full-width column justify-center">
3
+ <q-page
4
+ class="full-width column justify-center align-center items-center"
5
+ style="height: 70vh;"
6
+ >
7
+ <div
8
+ class="full-width"
9
+ >
10
+ <q-header class="bg-main-color text-black">
11
+ <TaskNavBar
12
+ :logo="'src/assets/vue.svg'"
13
+ :title="'Load Preparation'"/>
14
+ </q-header>
15
+ </div>
16
+ </q-page>
17
+ </q-page-container>
18
+ </template>
19
+ <style>
20
+ </style>
21
+ <script lang="ts">
22
+ import TaskNavBar from '../components/TaskNavBar/TaskNavBar.vue'
23
+ export default {
24
+ components: {
25
+ TaskNavBar
26
+ },
27
+ data () {
28
+ return {
29
+ rightDrawerOpen: false
30
+ }
31
+ },
32
+ computed: {
33
+ },
34
+ mounted () {
35
+
36
+ },
37
+ methods: {
38
+ }
39
+ }
40
+ </script>
@@ -50,7 +50,7 @@ import Table from '../components/Table/Table.vue'
50
50
  import setTableHeight from '../components/Table/utils/setTableHeight'
51
51
  import infiniteScroll from '../components/Table/utils/infiniteScroll'
52
52
  import FilterMethod from '../components/Table/utils/filterMethod'
53
- import tableStore from '../store/table.js'
53
+ import { tableStore } from '../store/table.js'
54
54
  export default {
55
55
  components: {
56
56
  Table
@@ -17,6 +17,10 @@ const routes: RouteRecordRaw[] = [
17
17
  path: '/confirmPage',
18
18
  component: () => import('../pages/ConfirmPage.vue')
19
19
  },
20
+ {
21
+ path: '/navBarPage',
22
+ component: () => import('../pages/NavBarPage.vue')
23
+ },
20
24
  ]
21
25
 
22
26
  export default routes
@@ -1,6 +1,6 @@
1
1
  import { defineStore } from 'pinia'
2
2
  import { useStorage } from '@vueuse/core'
3
- const tableStore = defineStore('tableStore', {
3
+ export const tableStore = defineStore('tableStore', {
4
4
  state: () => ({
5
5
  disableScannerButtons: useStorage('counter', false),
6
6
  filterValue: useStorage('filterValue', ''),
@@ -21,5 +21,3 @@ const tableStore = defineStore('tableStore', {
21
21
 
22
22
  }
23
23
  })
24
-
25
- export default tableStore
@@ -1,27 +0,0 @@
1
- import { QBtn } from 'quasar';
2
- declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
3
- label: {
4
- type: StringConstructor;
5
- required: true;
6
- };
7
- color: {
8
- type: StringConstructor;
9
- default: string;
10
- };
11
- }>, {
12
- onClick: () => void;
13
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
14
- label: {
15
- type: StringConstructor;
16
- required: true;
17
- };
18
- color: {
19
- type: StringConstructor;
20
- default: string;
21
- };
22
- }>> & Readonly<{}>, {
23
- color: string;
24
- }, {}, {
25
- QBtn: import("quasar").ComponentConstructor<QBtn>;
26
- }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
- export default _default;
@@ -1,2 +0,0 @@
1
- import TableStore from './table.js';
2
- export { TableStore };
@@ -1,36 +0,0 @@
1
- <template>abc<q-btn :label="label" :color="color" @click="onClick" /></template>
2
-
3
- <script lang="ts">
4
- import { defineComponent } from 'vue'
5
- import { QBtn } from 'quasar'
6
-
7
- export default defineComponent({
8
- name: 'MyButton',
9
- components: {
10
- QBtn
11
- },
12
- props: {
13
- label: {
14
- type: String,
15
- required: true
16
- },
17
- color: {
18
- type: String,
19
- default: 'primary'
20
- }
21
- },
22
- setup(props) {
23
- const onClick = () => {
24
- console.log(`${props.label} button clicked!`)
25
- }
26
-
27
- return {
28
- onClick
29
- }
30
- }
31
- })
32
- </script>
33
-
34
- <style scoped>
35
- /* Custom styles for your button */
36
- </style>
@@ -1 +0,0 @@
1
- export { default as tableStore } from './table.js';
@@ -1,3 +0,0 @@
1
- import TableStore from './table.js'
2
- export { TableStore }
3
-