@questwork/q-inventory 0.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 (67) hide show
  1. package/.storybook/main.js +23 -0
  2. package/.storybook/preview.js +17 -0
  3. package/README.md +16 -0
  4. package/app/qInventory/App.vue +164 -0
  5. package/app/qInventory/index.html +12 -0
  6. package/app/qInventory/main.ts +4 -0
  7. package/app/qInventory/styles.scss +59 -0
  8. package/dist/components/InventoryAssetDetail.vue.d.ts +8 -0
  9. package/dist/components/InventoryAssetDetail.vue.d.ts.map +1 -0
  10. package/dist/components/InventoryLocationAdmin.vue.d.ts +10 -0
  11. package/dist/components/InventoryLocationAdmin.vue.d.ts.map +1 -0
  12. package/dist/components/InventoryLocationDetail.vue.d.ts +8 -0
  13. package/dist/components/InventoryLocationDetail.vue.d.ts.map +1 -0
  14. package/dist/components/InventoryOverview.vue.d.ts +15 -0
  15. package/dist/components/InventoryOverview.vue.d.ts.map +1 -0
  16. package/dist/components/InventoryScanner.vue.d.ts +21 -0
  17. package/dist/components/InventoryScanner.vue.d.ts.map +1 -0
  18. package/dist/components/QInventory.vue.d.ts +24 -0
  19. package/dist/components/QInventory.vue.d.ts.map +1 -0
  20. package/dist/index.d.ts +16 -0
  21. package/dist/index.d.ts.map +1 -0
  22. package/dist/mixins/CSSMixin.d.ts +7 -0
  23. package/dist/mixins/CSSMixin.d.ts.map +1 -0
  24. package/dist/models/index.d.ts +62 -0
  25. package/dist/models/index.d.ts.map +1 -0
  26. package/dist/models/inventoryAssetRepoAxios.d.ts +18 -0
  27. package/dist/models/inventoryAssetRepoAxios.d.ts.map +1 -0
  28. package/dist/models/inventoryAuthRepoAxios.d.ts +26 -0
  29. package/dist/models/inventoryAuthRepoAxios.d.ts.map +1 -0
  30. package/dist/models/inventoryAxiosBase.d.ts +41 -0
  31. package/dist/models/inventoryAxiosBase.d.ts.map +1 -0
  32. package/dist/models/inventoryLocationRepoAxios.d.ts +13 -0
  33. package/dist/models/inventoryLocationRepoAxios.d.ts.map +1 -0
  34. package/dist/models/inventoryMovementRepoAxios.d.ts +13 -0
  35. package/dist/models/inventoryMovementRepoAxios.d.ts.map +1 -0
  36. package/dist/q-inventory.esm.js +961 -0
  37. package/dist/q-inventory.esm.js.map +1 -0
  38. package/dist/q-inventory.min.cjs +2 -0
  39. package/dist/q-inventory.min.cjs.map +1 -0
  40. package/dist/q-inventory.min.css +1 -0
  41. package/dist/q-inventory.min.js +2 -0
  42. package/dist/q-inventory.min.js.map +1 -0
  43. package/dist-app/qInventory/assets/q-inventory-app.css +1 -0
  44. package/dist-app/qInventory/assets/q-inventory-app.js +18 -0
  45. package/dist-app/qInventory/index.html +13 -0
  46. package/package.json +58 -0
  47. package/src/components/InventoryAssetDetail.vue +55 -0
  48. package/src/components/InventoryLocationAdmin.vue +56 -0
  49. package/src/components/InventoryLocationDetail.vue +51 -0
  50. package/src/components/InventoryOverview.vue +81 -0
  51. package/src/components/InventoryScanner.vue +315 -0
  52. package/src/components/QInventory.vue +117 -0
  53. package/src/index.ts +36 -0
  54. package/src/mixins/CSSMixin.ts +14 -0
  55. package/src/models/index.ts +114 -0
  56. package/src/models/inventoryAssetRepoAxios.ts +38 -0
  57. package/src/models/inventoryAuthRepoAxios.ts +48 -0
  58. package/src/models/inventoryAxiosBase.ts +149 -0
  59. package/src/models/inventoryLocationRepoAxios.ts +25 -0
  60. package/src/models/inventoryMovementRepoAxios.ts +24 -0
  61. package/src/styles/index.scss +148 -0
  62. package/stories/stories.scss +9 -0
  63. package/stories/stories.ts +362 -0
  64. package/tsconfig.json +29 -0
  65. package/vite.app.config.js +37 -0
  66. package/vite.config.js +68 -0
  67. package/vitest.config.js +11 -0
@@ -0,0 +1,23 @@
1
+ /** @type { import('@storybook/vue3-vite').StorybookConfig } */
2
+ const config = {
3
+ stories: [
4
+ '../stories/**/stories.[tj]s',
5
+ '../stories/**/*.stories.[tj]s',
6
+ ],
7
+ addons: [
8
+ '@storybook/addon-links',
9
+ '@storybook/addon-viewport',
10
+ ],
11
+ framework: {
12
+ name: '@storybook/vue3-vite',
13
+ options: {},
14
+ },
15
+ core: {
16
+ disableTelemetry: true,
17
+ },
18
+ docs: {
19
+ autodocs: 'tag',
20
+ },
21
+ }
22
+
23
+ export default config
@@ -0,0 +1,17 @@
1
+ /** @type { import('@storybook/vue3').Preview } */
2
+ const preview = {
3
+ parameters: {
4
+ actions: { argTypesRegex: '^on[A-Z].*' },
5
+ controls: {
6
+ matchers: {
7
+ color: /(background|color)$/i,
8
+ date: /Date$/,
9
+ },
10
+ },
11
+ viewport: {
12
+ defaultViewport: 'mobile2',
13
+ },
14
+ },
15
+ }
16
+
17
+ export default preview
package/README.md ADDED
@@ -0,0 +1,16 @@
1
+ # QInventory
2
+
3
+ Vue 3 component library for Questwork inventory tracking workflows.
4
+
5
+ Components are written with Composition API and `<script setup lang="ts">`.
6
+
7
+ ## Development
8
+
9
+ ```bash
10
+ pnpm install
11
+ pnpm run test
12
+ pnpm run build
13
+ pnpm run storybook
14
+ ```
15
+
16
+ See [docs/inventory-ui-plan.md](docs/inventory-ui-plan.md) for the UI plan and implementation notes.
@@ -0,0 +1,164 @@
1
+ <template>
2
+ <main class="q-inventory-app">
3
+ <header class="q-inventory-app__header">
4
+ <div>
5
+ <h1>Q Inventory</h1>
6
+ <p>{{ backendLabel }}</p>
7
+ </div>
8
+ <button type="button" @click="reload">Reload</button>
9
+ </header>
10
+ <div
11
+ v-if="errorMessage"
12
+ class="q-inventory-app__error"
13
+ >
14
+ {{ errorMessage }}
15
+ </div>
16
+ <div
17
+ v-if="loginMessage"
18
+ class="q-inventory-app__notice"
19
+ >
20
+ {{ loginMessage }}
21
+ </div>
22
+ <q-inventory
23
+ :asset-api-client="assetApiClient"
24
+ :location-api-client="locationApiClient"
25
+ :movement-api-client="movementApiClient"
26
+ :assets="assets"
27
+ :current-user-code="currentUserCode"
28
+ :locations="locations"
29
+ @moved="reload"
30
+ @save-location="reload"
31
+ />
32
+ </main>
33
+ </template>
34
+
35
+ <script setup lang="ts">
36
+ import { computed, onMounted, ref } from 'vue'
37
+ import QInventory from '../../src/components/QInventory.vue'
38
+ import {
39
+ InventoryAssetRepoAxios,
40
+ InventoryAuthRepoAxios,
41
+ InventoryLocationRepoAxios,
42
+ InventoryMovementRepoAxios,
43
+ } from '../../src/models/index.js'
44
+ import '../../src/styles/index.scss'
45
+ import './styles.scss'
46
+
47
+ const appConfig = getAppConfig()
48
+ const assets = ref<unknown[]>([])
49
+ const errorMessage = ref('')
50
+ const locations = ref<unknown[]>([])
51
+ const loginMessage = ref('')
52
+ const currentUserCode = ref(appConfig.currentUserCode)
53
+ let browserTokenCache: { token: string, tokenExpiry: number } | null = null
54
+ const repoOptions = {
55
+ authenticatorTokenProvider: getBrowserToken,
56
+ baseURL: appConfig.baseURL,
57
+ movedBy: currentUserCode.value,
58
+ qRepo: appConfig.qRepo,
59
+ tenantCode: appConfig.tenantCode,
60
+ userTokenProvider: getUserToken,
61
+ }
62
+
63
+ const authApiClient = new InventoryAuthRepoAxios({
64
+ baseURL: appConfig.baseURL,
65
+ tenantCode: appConfig.tenantCode,
66
+ })
67
+ const assetApiClient = new InventoryAssetRepoAxios(repoOptions)
68
+ const locationApiClient = new InventoryLocationRepoAxios(repoOptions)
69
+ const movementApiClient = new InventoryMovementRepoAxios(repoOptions)
70
+
71
+ const backendLabel = computed(() => {
72
+ const repo = appConfig.qRepo ? `repo=${appConfig.qRepo}` : 'repo=mongo'
73
+ return `${appConfig.baseURL || 'same-origin'} / ${appConfig.tenantCode} / ${repo}`
74
+ })
75
+
76
+ async function reload() {
77
+ try {
78
+ errorMessage.value = ''
79
+ const [nextAssets, nextLocations] = await Promise.all([
80
+ assetApiClient.findAll(),
81
+ locationApiClient.findAll(),
82
+ ])
83
+ assets.value = nextAssets
84
+ locations.value = nextLocations
85
+ } catch (err) {
86
+ errorMessage.value = err instanceof Error ? err.message : String(err)
87
+ }
88
+ }
89
+
90
+ async function initializeUserLogin() {
91
+ const searchParams = new URLSearchParams(window.location.search)
92
+ const loginToken = searchParams.get('loginToken')
93
+ if (!loginToken) {
94
+ return
95
+ }
96
+ const result = await authApiClient.verifyLoginToken(loginToken)
97
+ if (!result) {
98
+ throw new Error('Unable to verify qInventory login token')
99
+ }
100
+ window.localStorage.setItem('qInventoryUserToken', result.userToken)
101
+ window.localStorage.setItem('currentUserCode', result.userCode)
102
+ window.localStorage.setItem('tenantCode', result.tenantCode)
103
+ currentUserCode.value = result.userCode
104
+ assetApiClient.movedBy = result.userCode
105
+ assetApiClient.tenantCode = result.tenantCode
106
+ locationApiClient.tenantCode = result.tenantCode
107
+ movementApiClient.tenantCode = result.tenantCode
108
+ loginMessage.value = `Signed in as ${result.email}`
109
+ }
110
+
111
+ async function getBrowserToken() {
112
+ if (appConfig.qRepo === 'mockup') {
113
+ return ''
114
+ }
115
+ const now = Math.floor(Date.now() / 1000)
116
+ if (browserTokenCache && browserTokenCache.tokenExpiry > now + 30) {
117
+ return browserTokenCache.token
118
+ }
119
+ const storedToken = window.localStorage.getItem('qInventoryAuthenticatorToken')
120
+ const storedExpiry = Number(window.localStorage.getItem('qInventoryAuthenticatorTokenExpiry') || 0)
121
+ if (storedToken && storedExpiry > now + 30) {
122
+ browserTokenCache = {
123
+ token: storedToken,
124
+ tokenExpiry: storedExpiry,
125
+ }
126
+ return storedToken
127
+ }
128
+ const result = await authApiClient.getBrowserToken()
129
+ if (!result?.token) {
130
+ throw new Error('Unable to get qInventory browser token')
131
+ }
132
+ browserTokenCache = result
133
+ window.localStorage.setItem('qInventoryAuthenticatorToken', result.token)
134
+ window.localStorage.setItem('qInventoryAuthenticatorTokenExpiry', String(result.tokenExpiry))
135
+ return result.token
136
+ }
137
+
138
+ function getUserToken() {
139
+ return window.localStorage.getItem('qInventoryUserToken') || ''
140
+ }
141
+
142
+ function getAppConfig() {
143
+ const searchParams = new URLSearchParams(window.location.search)
144
+ return {
145
+ baseURL: getConfigValue(searchParams, 'qInventoryBaseURL', ''),
146
+ currentUserCode: getConfigValue(searchParams, 'currentUserCode', 'currentUser'),
147
+ qRepo: getConfigValue(searchParams, 'qRepo', ''),
148
+ tenantCode: getConfigValue(searchParams, 'tenantCode', 'tenantCode'),
149
+ }
150
+ }
151
+
152
+ function getConfigValue(searchParams: URLSearchParams, key: string, fallback: string) {
153
+ return searchParams.get(key) || window.localStorage.getItem(key) || fallback
154
+ }
155
+
156
+ onMounted(async () => {
157
+ try {
158
+ await initializeUserLogin()
159
+ await reload()
160
+ } catch (err) {
161
+ errorMessage.value = err instanceof Error ? err.message : String(err)
162
+ }
163
+ })
164
+ </script>
@@ -0,0 +1,12 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
6
+ <title>Q Inventory</title>
7
+ <script type="module" src="./main.ts"></script>
8
+ </head>
9
+ <body>
10
+ <div id="app"></div>
11
+ </body>
12
+ </html>
@@ -0,0 +1,4 @@
1
+ import { createApp } from 'vue'
2
+ import App from './App.vue'
3
+
4
+ createApp(App).mount('#app')
@@ -0,0 +1,59 @@
1
+ html,
2
+ body,
3
+ #app {
4
+ min-height: 100%;
5
+ margin: 0;
6
+ }
7
+
8
+ body {
9
+ background: #eef1f5;
10
+ }
11
+
12
+ .q-inventory-app {
13
+ min-height: 100vh;
14
+ background: #f6f7f9;
15
+ }
16
+
17
+ .q-inventory-app__header {
18
+ align-items: center;
19
+ display: flex;
20
+ justify-content: space-between;
21
+ gap: 12px;
22
+ padding: 14px 16px;
23
+ background: #202124;
24
+ color: #fff;
25
+ }
26
+
27
+ .q-inventory-app__header h1 {
28
+ margin: 0;
29
+ font-size: 18px;
30
+ font-weight: 700;
31
+ }
32
+
33
+ .q-inventory-app__header p {
34
+ margin: 4px 0 0;
35
+ color: #c8ccd2;
36
+ font-size: 12px;
37
+ }
38
+
39
+ .q-inventory-app__header button {
40
+ flex: 0 0 auto;
41
+ }
42
+
43
+ .q-inventory-app__error {
44
+ margin: 12px;
45
+ border: 1px solid #d93025;
46
+ border-radius: 4px;
47
+ background: #fce8e6;
48
+ color: #a50e0e;
49
+ padding: 10px 12px;
50
+ }
51
+
52
+ .q-inventory-app__notice {
53
+ margin: 12px;
54
+ border: 1px solid #188038;
55
+ border-radius: 4px;
56
+ background: #e6f4ea;
57
+ color: #0d652d;
58
+ padding: 10px 12px;
59
+ }
@@ -0,0 +1,8 @@
1
+ import { InventoryMovementApiClient } from '../models/index.js';
2
+ type __VLS_Props = {
3
+ movementApiClient?: InventoryMovementApiClient;
4
+ asset?: unknown;
5
+ };
6
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
7
+ export default _default;
8
+ //# sourceMappingURL=InventoryAssetDetail.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InventoryAssetDetail.vue.d.ts","sourceRoot":"","sources":["../../src/components/InventoryAssetDetail.vue"],"names":[],"mappings":"AAkBA;AA0DA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAA;AAMpE,KAAK,WAAW,GAAG;IACjB,iBAAiB,CAAC,EAAE,0BAA0B,CAAA;IAC9C,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAC;;AAkGF,wBAOG"}
@@ -0,0 +1,10 @@
1
+ type __VLS_Props = {
2
+ locations?: unknown[];
3
+ };
4
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
5
+ saveLocation: (payload: Record<string, string>) => any;
6
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
7
+ onSaveLocation?: (payload: Record<string, string>) => any;
8
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
9
+ export default _default;
10
+ //# sourceMappingURL=InventoryLocationAdmin.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InventoryLocationAdmin.vue.d.ts","sourceRoot":"","sources":["../../src/components/InventoryLocationAdmin.vue"],"names":[],"mappings":"AAiBA;AAgEA,KAAK,WAAW,GAAG;IACjB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAA;CACtB,CAAC;;;;;;AAmGF,wBAQG"}
@@ -0,0 +1,8 @@
1
+ import { InventoryAssetApiClient } from '../models/index.js';
2
+ type __VLS_Props = {
3
+ assetApiClient?: InventoryAssetApiClient;
4
+ location?: unknown;
5
+ };
6
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
7
+ export default _default;
8
+ //# sourceMappingURL=InventoryLocationDetail.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InventoryLocationDetail.vue.d.ts","sourceRoot":"","sources":["../../src/components/InventoryLocationDetail.vue"],"names":[],"mappings":"AAeA;AAsDA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAMjE,KAAK,WAAW,GAAG;IACjB,cAAc,CAAC,EAAE,uBAAuB,CAAA;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAC;;AAqFF,wBAOG"}
@@ -0,0 +1,15 @@
1
+ import { InventoryAssetApiClient } from '../models/index.js';
2
+ type __VLS_Props = {
3
+ assetApiClient?: InventoryAssetApiClient;
4
+ assets?: unknown[];
5
+ locations?: unknown[];
6
+ };
7
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
8
+ selectAsset: (payload: unknown) => any;
9
+ selectLocation: (payload: unknown) => any;
10
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
11
+ onSelectAsset?: (payload: unknown) => any;
12
+ onSelectLocation?: (payload: unknown) => any;
13
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
14
+ export default _default;
15
+ //# sourceMappingURL=InventoryOverview.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InventoryOverview.vue.d.ts","sourceRoot":"","sources":["../../src/components/InventoryOverview.vue"],"names":[],"mappings":"AA0BA;AAyFA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAMjE,KAAK,WAAW,GAAG;IACjB,cAAc,CAAC,EAAE,uBAAuB,CAAA;IACxC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAA;CACtB,CAAC;;;;;;;;AAqHF,wBAQG"}
@@ -0,0 +1,21 @@
1
+ import { InventoryAssetApiClient, InventoryMovePayload } from '../models/index.js';
2
+ type __VLS_Props = {
3
+ assetApiClient?: InventoryAssetApiClient;
4
+ assets?: unknown[];
5
+ currentUserCode?: string;
6
+ };
7
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
8
+ moved: (payload: InventoryMovePayload) => any;
9
+ scan: (payload: {
10
+ raw: string;
11
+ parsed: unknown;
12
+ }) => any;
13
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
14
+ onMoved?: (payload: InventoryMovePayload) => any;
15
+ onScan?: (payload: {
16
+ raw: string;
17
+ parsed: unknown;
18
+ }) => any;
19
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
20
+ export default _default;
21
+ //# sourceMappingURL=InventoryScanner.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InventoryScanner.vue.d.ts","sourceRoot":"","sources":["../../src/components/InventoryScanner.vue"],"names":[],"mappings":"AAwFA;AAqUA,OAAO,KAAK,EAAE,uBAAuB,EAAE,oBAAoB,EAA6C,MAAM,oBAAoB,CAAA;AAuBlI,KAAK,WAAW,GAAG;IACjB,cAAc,CAAC,EAAE,uBAAuB,CAAA;IACxC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,CAAC;;;;aAKuB,MAAM;gBAAU,OAAO;;;;;aAAvB,MAAM;gBAAU,OAAO;;;AAyVhD,wBAQG"}
@@ -0,0 +1,24 @@
1
+ import { InventoryAssetApiClient, InventoryLocationApiClient, InventoryMovementApiClient } from '../models/index.js';
2
+ type __VLS_Props = {
3
+ assetApiClient?: InventoryAssetApiClient;
4
+ locationApiClient?: InventoryLocationApiClient;
5
+ movementApiClient?: InventoryMovementApiClient;
6
+ assets?: unknown[];
7
+ currentUserCode?: string;
8
+ locations?: unknown[];
9
+ };
10
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
11
+ moved: (payload: unknown) => any;
12
+ scan: (payload: unknown) => any;
13
+ selectAsset: (payload: unknown) => any;
14
+ selectLocation: (payload: unknown) => any;
15
+ saveLocation: (payload: unknown) => any;
16
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
17
+ onMoved?: (payload: unknown) => any;
18
+ onScan?: (payload: unknown) => any;
19
+ onSelectAsset?: (payload: unknown) => any;
20
+ onSelectLocation?: (payload: unknown) => any;
21
+ onSaveLocation?: (payload: unknown) => any;
22
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
23
+ export default _default;
24
+ //# sourceMappingURL=QInventory.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QInventory.vue.d.ts","sourceRoot":"","sources":["../../src/components/QInventory.vue"],"names":[],"mappings":"AA+CA;AA6HA,OAAO,KAAK,EACV,uBAAuB,EACvB,0BAA0B,EAC1B,0BAA0B,EAC3B,MAAM,oBAAoB,CAAA;AAM3B,KAAK,WAAW,GAAG;IACjB,cAAc,CAAC,EAAE,uBAAuB,CAAA;IACxC,iBAAiB,CAAC,EAAE,0BAA0B,CAAA;IAC9C,iBAAiB,CAAC,EAAE,0BAA0B,CAAA;IAC9C,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAA;CACtB,CAAC;;;;;;;;;;;;;;AAoNF,wBAQG"}
@@ -0,0 +1,16 @@
1
+ import { App } from 'vue';
2
+ import { default as QInventory } from './components/QInventory.vue';
3
+ import { default as InventoryScanner } from './components/InventoryScanner.vue';
4
+ import { default as InventoryOverview } from './components/InventoryOverview.vue';
5
+ import { default as InventoryAssetDetail } from './components/InventoryAssetDetail.vue';
6
+ import { default as InventoryLocationDetail } from './components/InventoryLocationDetail.vue';
7
+ import { default as InventoryLocationAdmin } from './components/InventoryLocationAdmin.vue';
8
+ export * from '@questwork/q-inventory-model';
9
+ export * from './models/index.js';
10
+ declare function install(app: App): void;
11
+ export { install, InventoryAssetDetail, InventoryLocationAdmin, InventoryLocationDetail, InventoryOverview, InventoryScanner, QInventory, };
12
+ declare const _default: {
13
+ install: typeof install;
14
+ };
15
+ export default _default;
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC9B,OAAO,UAAU,MAAM,6BAA6B,CAAA;AACpD,OAAO,gBAAgB,MAAM,mCAAmC,CAAA;AAChE,OAAO,iBAAiB,MAAM,oCAAoC,CAAA;AAClE,OAAO,oBAAoB,MAAM,uCAAuC,CAAA;AACxE,OAAO,uBAAuB,MAAM,0CAA0C,CAAA;AAC9E,OAAO,sBAAsB,MAAM,yCAAyC,CAAA;AAC5E,OAAO,qBAAqB,CAAA;AAE5B,cAAc,8BAA8B,CAAA;AAC5C,cAAc,mBAAmB,CAAA;AAEjC,iBAAS,OAAO,CAAC,GAAG,EAAE,GAAG,QAOxB;AAID,OAAO,EACL,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,GACX,CAAA;;;;AAED,wBAEC"}
@@ -0,0 +1,7 @@
1
+ export interface CssBlock {
2
+ block?: string;
3
+ element?: string;
4
+ modifier?: string;
5
+ }
6
+ export declare function getCssBlock(base: string, css?: CssBlock): string[];
7
+ //# sourceMappingURL=CSSMixin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CSSMixin.d.ts","sourceRoot":"","sources":["../../src/mixins/CSSMixin.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ,GAAG,MAAM,EAAE,CAOlE"}
@@ -0,0 +1,62 @@
1
+ import { InventoryRepoAxiosOptions } from './inventoryAxiosBase.js';
2
+ export interface InventoryAssetApiClient {
3
+ findAll?: (query?: Record<string, unknown>) => Promise<unknown[]>;
4
+ findOne?: (id: string) => Promise<unknown[]>;
5
+ saveOne?: (doc: Record<string, unknown>) => Promise<unknown>;
6
+ move?: (payload: InventoryMovePayload) => Promise<unknown>;
7
+ }
8
+ export interface InventoryLocationApiClient {
9
+ findAll?: (query?: Record<string, unknown>) => Promise<unknown[]>;
10
+ findOne?: (id: string) => Promise<unknown[]>;
11
+ saveOne?: (doc: Record<string, unknown>) => Promise<unknown>;
12
+ }
13
+ export interface InventoryMovementApiClient {
14
+ findAll?: (query?: Record<string, unknown>) => Promise<unknown[]>;
15
+ }
16
+ export type InventoryApiClient = InventoryAssetApiClient & InventoryLocationApiClient & InventoryMovementApiClient;
17
+ export interface InventoryMovePayload {
18
+ assetTag: string;
19
+ fromLocationCode?: string;
20
+ fromLocationKind?: string;
21
+ movedBy?: string;
22
+ toLocationCode: string;
23
+ toLocationKind?: string;
24
+ movementType?: string;
25
+ }
26
+ export interface InventoryMoveWarning {
27
+ actualLocationCode?: string;
28
+ assetTag?: string;
29
+ code: string;
30
+ message: string;
31
+ requestedFromLocationCode?: string;
32
+ requestedFromLocationKind?: string;
33
+ }
34
+ export interface InventoryMoveResult {
35
+ warnings?: InventoryMoveWarning[];
36
+ }
37
+ export interface InventoryDisplayLocation {
38
+ code: string;
39
+ label: string;
40
+ type?: string;
41
+ }
42
+ export * from './inventoryAxiosBase.js';
43
+ export * from './inventoryAssetRepoAxios.js';
44
+ export * from './inventoryAuthRepoAxios.js';
45
+ export * from './inventoryLocationRepoAxios.js';
46
+ export * from './inventoryMovementRepoAxios.js';
47
+ export declare class InventoryRepoAxios implements InventoryApiClient {
48
+ private assetRepo;
49
+ private locationRepo;
50
+ private movementRepo;
51
+ constructor(options?: InventoryRepoAxiosOptions);
52
+ findAll(query?: Record<string, unknown>): Promise<unknown[]>;
53
+ findOne(id: string): Promise<unknown[]>;
54
+ saveOne(doc: Record<string, unknown>): Promise<Record<string, unknown>>;
55
+ move(payload: InventoryMovePayload): Promise<Record<string, unknown>>;
56
+ findAssets(query?: Record<string, unknown>): Promise<unknown[]>;
57
+ findLocations(query?: Record<string, unknown>): Promise<unknown[]>;
58
+ findLocationAssets(locationCode: string): Promise<unknown[]>;
59
+ findAssetHistory(assetTag: string): Promise<unknown[]>;
60
+ moveAsset(payload: InventoryMovePayload): Promise<Record<string, unknown>>;
61
+ }
62
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { InventoryRepoAxiosBase, InventoryRepoAxiosOptions } from './inventoryAxiosBase.js';
2
+ import { InventoryMovePayload } from './index.js';
3
+ export interface InventoryAssetFindAllQuery extends Record<string, unknown> {
4
+ assetTag?: string;
5
+ assetTags?: string[];
6
+ category?: string;
7
+ currentLocationCode?: string;
8
+ currentLocationKind?: string;
9
+ currentLocationType?: string;
10
+ }
11
+ export declare class InventoryAssetRepoAxios extends InventoryRepoAxiosBase {
12
+ constructor(options?: InventoryRepoAxiosOptions);
13
+ findAll(query?: InventoryAssetFindAllQuery): Promise<unknown[]>;
14
+ findOne(assetTag: string): Promise<unknown[]>;
15
+ saveOne(doc: Record<string, unknown>): Promise<Record<string, unknown>>;
16
+ move(payload: InventoryMovePayload): Promise<Record<string, unknown>>;
17
+ }
18
+ //# sourceMappingURL=inventoryAssetRepoAxios.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inventoryAssetRepoAxios.d.ts","sourceRoot":"","sources":["../../src/models/inventoryAssetRepoAxios.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AAChG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEtD,MAAM,WAAW,0BAA2B,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B;AAED,qBAAa,uBAAwB,SAAQ,sBAAsB;gBACrD,OAAO,GAAE,yBAA8B;IAI7C,OAAO,CAAC,KAAK,GAAE,0BAA+B;IAI9C,OAAO,CAAC,QAAQ,EAAE,MAAM;IAIxB,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAIpC,IAAI,CAAC,OAAO,EAAE,oBAAoB;CAQzC"}
@@ -0,0 +1,26 @@
1
+ import { InventoryRepoAxiosBase, InventoryRepoAxiosOptions } from './inventoryAxiosBase.js';
2
+ export interface InventoryTokenResult {
3
+ token: string;
4
+ tokenExpiry: number;
5
+ }
6
+ export interface InventoryLoginLinkResult {
7
+ email: string;
8
+ loginUrl: string;
9
+ sent: boolean;
10
+ }
11
+ export interface InventoryUserTokenResult {
12
+ email: string;
13
+ tenantCode: string;
14
+ userCode: string;
15
+ userToken: string;
16
+ }
17
+ export declare class InventoryAuthRepoAxios extends InventoryRepoAxiosBase {
18
+ constructor(options?: InventoryRepoAxiosOptions);
19
+ getBrowserToken(): Promise<InventoryTokenResult>;
20
+ requestLoginLink({ email, tenantCode }: {
21
+ email: string;
22
+ tenantCode?: string;
23
+ }): Promise<InventoryLoginLinkResult>;
24
+ verifyLoginToken(loginToken: string): Promise<InventoryUserTokenResult>;
25
+ }
26
+ //# sourceMappingURL=inventoryAuthRepoAxios.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inventoryAuthRepoAxios.d.ts","sourceRoot":"","sources":["../../src/models/inventoryAuthRepoAxios.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AAEhG,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,OAAO,CAAA;CACd;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,qBAAa,sBAAuB,SAAQ,sBAAsB;gBACpD,OAAO,GAAE,yBAA8B;IAI7C,eAAe;IAQf,gBAAgB,CAAC,EAAE,KAAK,EAAE,UAA4B,EAAE,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAQhG,gBAAgB,CAAC,UAAU,EAAE,MAAM;CAM1C"}
@@ -0,0 +1,41 @@
1
+ export interface InventoryAxiosLike {
2
+ get: (url: string, config?: {
3
+ headers?: Record<string, string>;
4
+ params?: Record<string, unknown>;
5
+ }) => Promise<{
6
+ data: unknown;
7
+ }>;
8
+ post: (url: string, body?: Record<string, unknown>, config?: {
9
+ headers?: Record<string, string>;
10
+ }) => Promise<{
11
+ data: unknown;
12
+ }>;
13
+ }
14
+ export interface InventoryRepoAxiosOptions {
15
+ axios?: InventoryAxiosLike;
16
+ authenticatorTokenProvider?: () => Promise<string> | string;
17
+ baseURL?: string;
18
+ movedBy?: string;
19
+ qRepo?: string;
20
+ tenantCode?: string;
21
+ userTokenProvider?: () => Promise<string> | string;
22
+ }
23
+ export declare abstract class InventoryRepoAxiosBase {
24
+ axios?: InventoryAxiosLike;
25
+ authenticatorTokenProvider?: () => Promise<string> | string;
26
+ baseURL: string;
27
+ movedBy: string;
28
+ qRepo?: string;
29
+ tenantCode: string;
30
+ userTokenProvider?: () => Promise<string> | string;
31
+ constructor(options?: InventoryRepoAxiosOptions);
32
+ protected get(path: string, query?: Record<string, unknown>): Promise<unknown[]>;
33
+ protected post(path: string, body?: Record<string, unknown>): Promise<Record<string, unknown>>;
34
+ protected getUrl(path: string): string;
35
+ protected getFetchUrl(url: URL): string;
36
+ protected withDefaults(obj?: Record<string, unknown>): {
37
+ [k: string]: unknown;
38
+ };
39
+ private getAuthHeaders;
40
+ }
41
+ //# sourceMappingURL=inventoryAxiosBase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inventoryAxiosBase.d.ts","sourceRoot":"","sources":["../../src/models/inventoryAxiosBase.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACjI,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CACjI;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,CAAC,EAAE,kBAAkB,CAAA;IAC1B,0BAA0B,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;IAC3D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;CACnD;AAED,8BAAsB,sBAAsB;IAC1C,KAAK,CAAC,EAAE,kBAAkB,CAAA;IAC1B,0BAA0B,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;IAC3D,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;gBAEtC,OAAO,GAAE,yBAA8B;cAUnC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;cAgBrD,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAiBrE,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM;IAI7B,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG;IAI9B,SAAS,CAAC,YAAY,CAAC,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;;;YAQ1C,cAAc;CAY7B"}
@@ -0,0 +1,13 @@
1
+ import { InventoryRepoAxiosBase, InventoryRepoAxiosOptions } from './inventoryAxiosBase.js';
2
+ export interface InventoryLocationFindAllQuery extends Record<string, unknown> {
3
+ locationCode?: string;
4
+ locationType?: string;
5
+ parentLocationCode?: string;
6
+ }
7
+ export declare class InventoryLocationRepoAxios extends InventoryRepoAxiosBase {
8
+ constructor(options?: InventoryRepoAxiosOptions);
9
+ findAll(query?: InventoryLocationFindAllQuery): Promise<unknown[]>;
10
+ findOne(locationCode: string): Promise<unknown[]>;
11
+ saveOne(doc: Record<string, unknown>): Promise<Record<string, unknown>>;
12
+ }
13
+ //# sourceMappingURL=inventoryLocationRepoAxios.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inventoryLocationRepoAxios.d.ts","sourceRoot":"","sources":["../../src/models/inventoryLocationRepoAxios.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,KAAK,yBAAyB,EAAE,MAAM,yBAAyB,CAAA;AAEhG,MAAM,WAAW,6BAA8B,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC5E,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED,qBAAa,0BAA2B,SAAQ,sBAAsB;gBACxD,OAAO,GAAE,yBAA8B;IAI7C,OAAO,CAAC,KAAK,GAAE,6BAAkC;IAIjD,OAAO,CAAC,YAAY,EAAE,MAAM;IAI5B,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAG3C"}