@stonecrop/beam 0.31.0 → 0.33.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 (84) hide show
  1. package/dist/assets/index.css +645 -1
  2. package/dist/beam.js +674 -591
  3. package/dist/beam.js.map +1 -1
  4. package/dist/src/components/ActionFooter.vue.d.ts +18 -0
  5. package/dist/src/components/ActionFooter.vue.d.ts.map +1 -0
  6. package/dist/src/components/BeamArrow.vue.d.ts +7 -0
  7. package/dist/src/components/BeamArrow.vue.d.ts.map +1 -0
  8. package/dist/src/components/BeamBtn.vue.d.ts +14 -0
  9. package/dist/src/components/BeamBtn.vue.d.ts.map +1 -0
  10. package/dist/src/components/BeamDayDivider.vue.d.ts +17 -0
  11. package/dist/src/components/BeamDayDivider.vue.d.ts.map +1 -0
  12. package/dist/src/components/BeamFilter.vue.d.ts +13 -0
  13. package/dist/src/components/BeamFilter.vue.d.ts.map +1 -0
  14. package/dist/src/components/BeamFilterOption.vue.d.ts +13 -0
  15. package/dist/src/components/BeamFilterOption.vue.d.ts.map +1 -0
  16. package/dist/src/components/BeamHeading.vue.d.ts +14 -0
  17. package/dist/src/components/BeamHeading.vue.d.ts.map +1 -0
  18. package/dist/src/components/BeamMetadata.vue.d.ts +23 -0
  19. package/dist/src/components/BeamMetadata.vue.d.ts.map +1 -0
  20. package/dist/src/components/BeamModal.vue.d.ts +26 -0
  21. package/dist/src/components/BeamModal.vue.d.ts.map +1 -0
  22. package/dist/src/components/BeamModalOutlet.vue.d.ts +10 -0
  23. package/dist/src/components/BeamModalOutlet.vue.d.ts.map +1 -0
  24. package/dist/src/components/BeamProgress.vue.d.ts +10 -0
  25. package/dist/src/components/BeamProgress.vue.d.ts.map +1 -0
  26. package/dist/src/components/Confirm.vue.d.ts +4 -0
  27. package/dist/src/components/Confirm.vue.d.ts.map +1 -0
  28. package/dist/src/components/FixedTop.vue.d.ts +14 -0
  29. package/dist/src/components/FixedTop.vue.d.ts.map +1 -0
  30. package/dist/src/components/ItemCheck.vue.d.ts +11 -0
  31. package/dist/src/components/ItemCheck.vue.d.ts.map +1 -0
  32. package/dist/src/components/ItemCount.vue.d.ts +19 -0
  33. package/dist/src/components/ItemCount.vue.d.ts.map +1 -0
  34. package/dist/src/components/ListAnchor.vue.d.ts +17 -0
  35. package/dist/src/components/ListAnchor.vue.d.ts.map +1 -0
  36. package/dist/src/components/ListItem.vue.d.ts +12 -0
  37. package/dist/src/components/ListItem.vue.d.ts.map +1 -0
  38. package/dist/src/components/ListView.vue.d.ts +14 -0
  39. package/dist/src/components/ListView.vue.d.ts.map +1 -0
  40. package/dist/src/components/Navbar.vue.d.ts +20 -0
  41. package/dist/src/components/Navbar.vue.d.ts.map +1 -0
  42. package/dist/src/components/ScanInput.vue.d.ts +12 -0
  43. package/dist/src/components/ScanInput.vue.d.ts.map +1 -0
  44. package/dist/src/components/SegmentedDisplay.vue.d.ts +11 -0
  45. package/dist/src/components/SegmentedDisplay.vue.d.ts.map +1 -0
  46. package/dist/src/components/SplitColumn.vue.d.ts +21 -0
  47. package/dist/src/components/SplitColumn.vue.d.ts.map +1 -0
  48. package/dist/src/components/ToggleArrow.vue.d.ts +7 -0
  49. package/dist/src/components/ToggleArrow.vue.d.ts.map +1 -0
  50. package/dist/{tsdoc-metadata.json → src/tsdoc-metadata.json} +1 -1
  51. package/package.json +31 -26
  52. package/dist/beam.d.ts +0 -167
  53. package/dist/beam.tsbuildinfo +0 -1
  54. package/dist/src/composables/mqtt.js +0 -85
  55. package/dist/src/index.js +0 -56
  56. package/dist/src/types/index.js +0 -0
  57. package/src/components/ActionFooter.vue +0 -31
  58. package/src/components/BeamArrow.vue +0 -37
  59. package/src/components/BeamBtn.vue +0 -32
  60. package/src/components/BeamDayDivider.vue +0 -60
  61. package/src/components/BeamFilter.vue +0 -58
  62. package/src/components/BeamFilterOption.vue +0 -150
  63. package/src/components/BeamHeading.vue +0 -17
  64. package/src/components/BeamMetadata.vue +0 -118
  65. package/src/components/BeamModal.vue +0 -28
  66. package/src/components/BeamModalOutlet.vue +0 -18
  67. package/src/components/BeamProgress.vue +0 -23
  68. package/src/components/Confirm.vue +0 -29
  69. package/src/components/FixedTop.vue +0 -13
  70. package/src/components/ItemCheck.vue +0 -76
  71. package/src/components/ItemCount.vue +0 -55
  72. package/src/components/ListAnchor.vue +0 -17
  73. package/src/components/ListItem.vue +0 -85
  74. package/src/components/ListView.vue +0 -62
  75. package/src/components/Navbar.vue +0 -42
  76. package/src/components/ScanInput.vue +0 -23
  77. package/src/components/SegmentedDisplay.vue +0 -55
  78. package/src/components/SplitColumn.vue +0 -49
  79. package/src/components/ToggleArrow.vue +0 -35
  80. package/src/composables/mqtt.ts +0 -102
  81. package/src/index.ts +0 -87
  82. package/src/onscan.d.ts +0 -45
  83. package/src/shims-vue.d.ts +0 -7
  84. package/src/types/index.ts +0 -77
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ItemCount.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ItemCount.vue"],"names":[],"mappings":"AA2DA,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,KAAK,CAAA;AAGnD,KAAK,WAAW,GAAG;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,cAAc,CAAC,iBAAiB,CAAC,CAAA;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAA;CACZ,CAAC;AAoBF,KAAK,gBAAgB,GAAG;IACxB,UAAU,EAAE,MAAM,CAAC;CAClB,CAAC;AAKF,KAAK,iBAAiB,GAAG,WAAW,GAAG,gBAAgB,CAAC;AAmDxD,QAAA,MAAM,YAAY;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -0,0 +1,17 @@
1
+ type __VLS_Props = {
2
+ to?: string;
3
+ };
4
+ declare var __VLS_1: {};
5
+ type __VLS_Slots = {} & {
6
+ default?: (props: typeof __VLS_1) => any;
7
+ };
8
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
12
+ type __VLS_WithSlots<T, S> = T & {
13
+ new (): {
14
+ $slots: S;
15
+ };
16
+ };
17
+ //# sourceMappingURL=ListAnchor.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListAnchor.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ListAnchor.vue"],"names":[],"mappings":"AAAA,KAoBK,WAAW,GAAG;IAAE,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA2BnC,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAG/C,QAAA,MAAM,UAAU,kSAEd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { ListViewItem } from '../types';
2
+ type __VLS_Props = {
3
+ item: ListViewItem;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
6
+ update: (item: ListViewItem) => any;
7
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
8
+ onUpdate?: ((item: ListViewItem) => any) | undefined;
9
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
12
+ //# sourceMappingURL=ListItem.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListItem.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ListItem.vue"],"names":[],"mappings":"AA4FA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE5C,KAAK,WAAW,GAAG;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC;AAyF1C,QAAA,MAAM,YAAY;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -0,0 +1,14 @@
1
+ import type { ListViewItem } from '../types';
2
+ type __VLS_Props = {
3
+ items: ListViewItem[];
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
6
+ update: (item: ListViewItem) => any;
7
+ scrollbottom: () => any;
8
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
9
+ onUpdate?: ((item: ListViewItem) => any) | undefined;
10
+ onScrollbottom?: (() => any) | undefined;
11
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
14
+ //# sourceMappingURL=ListView.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListView.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ListView.vue"],"names":[],"mappings":"AAqEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE5C,KAAK,WAAW,GAAG;IAAE,KAAK,EAAE,YAAY,EAAE,CAAA;CAAE,CAAC;AAyH7C,QAAA,MAAM,YAAY;;;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -0,0 +1,20 @@
1
+ declare var __VLS_1: {}, __VLS_17: {};
2
+ type __VLS_Slots = {} & {
3
+ title?: (props: typeof __VLS_1) => any;
4
+ } & {
5
+ navbaraction?: (props: typeof __VLS_17) => any;
6
+ };
7
+ declare const __VLS_base: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
+ click: () => any;
9
+ }, string, import("vue").PublicProps, Readonly<{}> & Readonly<{
10
+ onClick?: (() => any) | undefined;
11
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
12
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
13
+ declare const _default: typeof __VLS_export;
14
+ export default _default;
15
+ type __VLS_WithSlots<T, S> = T & {
16
+ new (): {
17
+ $slots: S;
18
+ };
19
+ };
20
+ //# sourceMappingURL=Navbar.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Navbar.vue.d.ts","sourceRoot":"","sources":["../../../src/components/Navbar.vue"],"names":[],"mappings":"AA+GA,QAAA,IAAI,OAAO,IAAU,EAAE,QAAQ,IAAY,CAAE;AAC7C,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GAC1C;IAAE,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,CAAC;AAKrD,QAAA,MAAM,UAAU;;;;iFAEd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { OnScan } from 'onscan.js';
2
+ type __VLS_Props = {
3
+ scanHandler: (barcode: string, qty: number) => void;
4
+ };
5
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
6
+ scanInstance: (instance: OnScan) => any;
7
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
8
+ onScanInstance?: ((instance: OnScan) => any) | undefined;
9
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
12
+ //# sourceMappingURL=ScanInput.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScanInput.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ScanInput.vue"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAKvC,KAAK,WAAW,GAAG;IAClB,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CACnD,CAAC;AAgCF,QAAA,MAAM,YAAY;;;;kFAGhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -0,0 +1,11 @@
1
+ import { BeamColor } from '../types';
2
+ type __VLS_Props = {
3
+ displayInput?: number;
4
+ decimalPlaces?: number;
5
+ displayColor?: BeamColor;
6
+ textColor?: BeamColor;
7
+ };
8
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
+ declare const _default: typeof __VLS_export;
10
+ export default _default;
11
+ //# sourceMappingURL=SegmentedDisplay.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentedDisplay.vue.d.ts","sourceRoot":"","sources":["../../../src/components/SegmentedDisplay.vue"],"names":[],"mappings":"AA4DA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,KAAK,WAAW,GAAG;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,SAAS,CAAA;IACxB,SAAS,CAAC,EAAE,SAAS,CAAA;CACrB,CAAC;AAsDF,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -0,0 +1,21 @@
1
+ import type { CSSProperties } from 'vue';
2
+ type __VLS_Props = {
3
+ justifyContent?: CSSProperties['justifyContent'];
4
+ alignItems?: CSSProperties['alignItems'];
5
+ };
6
+ declare var __VLS_1: {}, __VLS_3: {};
7
+ type __VLS_Slots = {} & {
8
+ left?: (props: typeof __VLS_1) => any;
9
+ } & {
10
+ right?: (props: typeof __VLS_3) => any;
11
+ };
12
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
14
+ declare const _default: typeof __VLS_export;
15
+ export default _default;
16
+ type __VLS_WithSlots<T, S> = T & {
17
+ new (): {
18
+ $slots: S;
19
+ };
20
+ };
21
+ //# sourceMappingURL=SplitColumn.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SplitColumn.vue.d.ts","sourceRoot":"","sources":["../../../src/components/SplitColumn.vue"],"names":[],"mappings":"AAAA,OAoDO,KAAK,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AAExC,KAAK,WAAW,GAAG;IAClB,cAAc,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAA;IAChD,UAAU,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAAA;CACxC,CAAC;AAyCF,QAAA,IAAI,OAAO,IAAU,EAAE,OAAO,IAAW,CAAE;AAC3C,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,GACzC;IAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AAG7C,QAAA,MAAM,UAAU,kSAEd,CAAC;AACH,QAAA,MAAM,YAAY,EAAS,eAAe,CAAC,OAAO,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,OAAO,YAAY;AAAxC,wBAAyC;AACzC,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KACV,CAAA;CACD,CAAC"}
@@ -0,0 +1,7 @@
1
+ type __VLS_Props = {
2
+ open: boolean;
3
+ };
4
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
5
+ declare const _default: typeof __VLS_export;
6
+ export default _default;
7
+ //# sourceMappingURL=ToggleArrow.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToggleArrow.vue.d.ts","sourceRoot":"","sources":["../../../src/components/ToggleArrow.vue"],"names":[],"mappings":"AAAA,KAsCK,WAAW,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAmCrC,QAAA,MAAM,YAAY,kSAEhB,CAAC;wBACkB,OAAO,YAAY;AAAxC,wBAAyC"}
@@ -5,7 +5,7 @@
5
5
  "toolPackages": [
6
6
  {
7
7
  "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.58.11"
8
+ "packageVersion": "7.59.0"
9
9
  }
10
10
  ]
11
11
  }
package/package.json CHANGED
@@ -1,37 +1,48 @@
1
1
  {
2
2
  "name": "@stonecrop/beam",
3
- "version": "0.31.0",
3
+ "version": "0.33.0",
4
4
  "description": "UI component library for Stonecrop",
5
+ "keywords": [
6
+ "components",
7
+ "design-system",
8
+ "stonecrop",
9
+ "ui",
10
+ "vue"
11
+ ],
12
+ "homepage": "https://github.com/agritheory/stonecrop#readme",
5
13
  "bugs": {
6
14
  "url": "https://github.com/agritheory/stonecrop/issues"
7
15
  },
8
- "repository": {
9
- "type": "git",
10
- "url": "https://github.com/agritheory/stonecrop",
11
- "directory": "beam"
12
- },
13
16
  "license": "MIT",
14
17
  "author": {
15
18
  "name": "Tyler Matteson",
16
19
  "email": "tyler@agritheory.com"
17
20
  },
21
+ "repository": {
22
+ "type": "git",
23
+ "url": "https://github.com/agritheory/stonecrop",
24
+ "directory": "beam"
25
+ },
26
+ "files": [
27
+ "dist"
28
+ ],
29
+ "type": "module",
18
30
  "sideEffects": [
19
31
  "**/*.css"
20
32
  ],
21
- "type": "module",
33
+ "types": "./dist/src/index.d.ts",
22
34
  "exports": {
23
35
  ".": {
24
- "types": "./dist/beam.d.ts",
36
+ "types": "./dist/src/index.d.ts",
25
37
  "import": "./dist/beam.js"
26
38
  },
27
39
  "./styles": "./dist/assets/index.css",
28
- "./types": "./dist/src/types/index.d.ts"
40
+ "./types": "./dist/src/types/index.d.ts",
41
+ "./package.json": "./package.json"
42
+ },
43
+ "publishConfig": {
44
+ "access": "public"
29
45
  },
30
- "types": "./dist/beam.d.ts",
31
- "files": [
32
- "dist/*",
33
- "src/*"
34
- ],
35
46
  "dependencies": {
36
47
  "@vueuse/components": "^14.2.1",
37
48
  "@vueuse/core": "^14.2.1",
@@ -39,8 +50,7 @@
39
50
  "onscan.js": "^1.5.2"
40
51
  },
41
52
  "devDependencies": {
42
- "@microsoft/api-documenter": "^7.30.5",
43
- "@rushstack/heft": "^1.2.17",
53
+ "@microsoft/api-extractor": "^7.58.7",
44
54
  "@types/node": "^24.12.4",
45
55
  "@vitejs/plugin-vue": "^6.0.6",
46
56
  "@vitest/coverage-istanbul": "^4.1.5",
@@ -50,13 +60,13 @@
50
60
  "oxlint-tsgolint": "0.23.0",
51
61
  "sass": "^1.97.2",
52
62
  "typescript": "^6.0.3",
53
- "vite": "^7.3.2",
63
+ "vite": "^8.2.2",
54
64
  "vite-plugin-lib-inject-css": "^2.2.2",
55
65
  "vitest": "^4.1.5",
56
66
  "vue": "^3.5.33",
67
+ "vue-component-meta": "^3.3.11",
57
68
  "vue-router": "^5.0.6",
58
- "vue-tsc": "^3.3.6",
59
- "stonecrop-rig": "0.7.0"
69
+ "vue-tsc": "^3.3.6"
60
70
  },
61
71
  "peerDependencies": {
62
72
  "vue": "^3.5.33"
@@ -64,14 +74,9 @@
64
74
  "engines": {
65
75
  "node": ">=24.0.0"
66
76
  },
67
- "publishConfig": {
68
- "access": "public"
69
- },
70
77
  "scripts": {
71
- "_phase:build": "heft build --clean && vite build && rushx docs",
72
- "build": "heft build --clean && vite build && rushx docs",
73
- "dev": "vite",
74
- "docs": "bash ../common/scripts/run-docs.sh beam",
78
+ "dev": "vite build --watch",
79
+ "docs": "bash ../tools/scripts/run-docs.sh beam",
75
80
  "lint": "oxlint",
76
81
  "lint:fix": "oxlint --fix",
77
82
  "preview": "vite preview",
package/dist/beam.d.ts DELETED
@@ -1,167 +0,0 @@
1
- import ActionFooter from './components/ActionFooter.vue';
2
- import { App } from 'vue';
3
- import BeamArrow from './components/BeamArrow.vue';
4
- import BeamBtn from './components/BeamBtn.vue';
5
- import BeamDayDivider from './components/BeamDayDivider.vue';
6
- import BeamFilter from './components/BeamFilter.vue';
7
- import BeamFilterOption from './components/BeamFilterOption.vue';
8
- import BeamHeading from './components/BeamHeading.vue';
9
- import BeamMetadata from './components/BeamMetadata.vue';
10
- import BeamModal from './components/BeamModal.vue';
11
- import BeamModalOutlet from './components/BeamModalOutlet.vue';
12
- import BeamProgress from './components/BeamProgress.vue';
13
- import Confirm from './components/Confirm.vue';
14
- import { CSSProperties } from 'vue';
15
- import FixedTop from './components/FixedTop.vue';
16
- import type { IClientOptions } from 'mqtt';
17
- import ItemCheck from './components/ItemCheck.vue';
18
- import ItemCount from './components/ItemCount.vue';
19
- import ListAnchor from './components/ListAnchor.vue';
20
- import ListItem from './components/ListItem.vue';
21
- import ListView from './components/ListView.vue';
22
- import Navbar from './components/Navbar.vue';
23
- import { Ref } from 'vue';
24
- import ScanInput from './components/ScanInput.vue';
25
- import SegmentedDisplay from './components/SegmentedDisplay.vue';
26
- import SplitColumn from './components/SplitColumn.vue';
27
- import ToggleArrow from './components/ToggleArrow.vue';
28
-
29
- export { ActionFooter }
30
-
31
- export { BeamArrow }
32
-
33
- export { BeamBtn }
34
-
35
- /**
36
- * Union type for color values - supports RGB, RGBA, HEX, HSL, HSLA, or CSS color string
37
- * @public
38
- */
39
- export declare type BeamColor = RGB | RGBA | HEX | HSL | HSLA | CSSProperties['color'];
40
-
41
- export { BeamDayDivider }
42
-
43
- export { BeamFilter }
44
-
45
- /**
46
- * Filter choice with label and value for BeamFilter component
47
- * @public
48
- */
49
- export declare type BeamFilterChoice = {
50
- label: string;
51
- value: string;
52
- };
53
-
54
- export { BeamFilterOption }
55
-
56
- export { BeamHeading }
57
-
58
- export { BeamMetadata }
59
-
60
- export { BeamModal }
61
-
62
- export { BeamModalOutlet }
63
-
64
- export { BeamProgress }
65
-
66
- export { Confirm }
67
-
68
- export { FixedTop }
69
-
70
- /**
71
- * HEX color string representation
72
- * @public
73
- */
74
- export declare type HEX = `#${string}`;
75
-
76
- /**
77
- * HSL color string representation
78
- * @public
79
- */
80
- export declare type HSL = `hsl(${number}, ${number}%, ${number}%)`;
81
-
82
- /**
83
- * HSLA color string representation
84
- * @public
85
- */
86
- export declare type HSLA = `hsl(${number}, ${number}%, ${number}%), ${number}`;
87
-
88
- /**
89
- * MQTT stream options
90
- * @public
91
- */
92
- export declare interface IMqttStream extends IClientOptions {
93
- /** MQTT topics to subscribe to */
94
- topics?: string[];
95
- }
96
-
97
- /**
98
- * Install all Beam components
99
- * @param app - Vue app instance
100
- * @public
101
- */
102
- export declare function install(app: App): void;
103
-
104
- export { ItemCheck }
105
-
106
- export { ItemCount }
107
-
108
- export { ListAnchor }
109
-
110
- export { ListItem }
111
-
112
- export { ListView }
113
-
114
- /**
115
- * Configuration object for ListView component items
116
- * @public
117
- */
118
- export declare type ListViewItem = {
119
- barcode?: string;
120
- checked?: boolean;
121
- count?: {
122
- count: number;
123
- of: number;
124
- uom?: string;
125
- };
126
- date?: string;
127
- dateFormat?: string;
128
- debounce?: number;
129
- description?: string;
130
- label?: string;
131
- linkComponent?: string;
132
- route?: string;
133
- };
134
-
135
- export { Navbar }
136
-
137
- /**
138
- * RGB color string representation
139
- * @public
140
- */
141
- export declare type RGB = `rgb(${number}, ${number}, ${number})`;
142
-
143
- /**
144
- * RGBA color string representation
145
- * @public
146
- */
147
- export declare type RGBA = `rgba(${number}, ${number}, ${number}, ${number})`;
148
-
149
- export { ScanInput }
150
-
151
- export { SegmentedDisplay }
152
-
153
- export { SplitColumn }
154
-
155
- export { ToggleArrow }
156
-
157
- /**
158
- * Use MQTT stream
159
- * @param options - MQTT stream options
160
- * @returns MQTT stream messages
161
- * @beta
162
- */
163
- export declare const useMqttStream: (options: IMqttStream) => Promise<{
164
- messages: Ref<Record<string, string[]>, Record<string, string[]>>;
165
- }>;
166
-
167
- export { }
@@ -1 +0,0 @@
1
- {"version":"6.0.3"}
@@ -1,85 +0,0 @@
1
- import mqtt from 'mqtt';
2
- import { onMounted, onUnmounted, ref } from 'vue';
3
- /**
4
- * Use MQTT stream
5
- * @param options - MQTT stream options
6
- * @returns MQTT stream messages
7
- * @beta
8
- */
9
- export const useMqttStream = async (options) => {
10
- const messages = ref({});
11
- if (options.host && options.port) {
12
- const portActive = await isPortActive(options.host, options.port);
13
- if (!portActive) {
14
- return { messages };
15
- }
16
- }
17
- const client = ref();
18
- onMounted(() => {
19
- client.value = mqtt.connect(options);
20
- if (!options.topics) {
21
- options.topics = ['#'];
22
- }
23
- for (const topic of options.topics) {
24
- client.value.subscribe(topic, err => {
25
- if (err) {
26
- throw err;
27
- }
28
- });
29
- }
30
- client.value.on('message', (topic, message) => {
31
- if (!messages.value[topic]) {
32
- messages.value[topic] = [];
33
- }
34
- messages.value[topic].push(message.toString());
35
- });
36
- });
37
- onUnmounted(() => {
38
- client.value?.end();
39
- });
40
- return { messages };
41
- };
42
- /**
43
- * Check if a local port has a service running
44
- * @param host the host to check
45
- * @param port the port to check
46
- * @returns true if the port has a service running, false otherwise
47
- *
48
- * @beta
49
- */
50
- export const isPortActive = async (host, port) => {
51
- try {
52
- const controller = new AbortController();
53
- // Set a timeout of 2 seconds
54
- const timeoutId = setTimeout(() => controller.abort(), 2000);
55
- try {
56
- await fetch(`${host}:${port}`, {
57
- mode: 'no-cors', // This allows checking without CORS issues
58
- signal: controller.signal,
59
- });
60
- clearTimeout(timeoutId);
61
- // If we get any response, the port is in use
62
- return true;
63
- }
64
- catch (error) {
65
- clearTimeout(timeoutId);
66
- if (error instanceof DOMException && error.name === 'AbortError') {
67
- // Timeout - port is probably not in use
68
- return false;
69
- }
70
- // For connection refused errors, we need to check the error message
71
- // as different browsers handle this differently
72
- const errorString = String(error);
73
- if (errorString.includes('NetworkError') ||
74
- errorString.includes('Failed to fetch') ||
75
- errorString.includes('net::ERR_CONNECTION_REFUSED')) {
76
- return false;
77
- }
78
- // If we get here, there might be something running on the port
79
- return true;
80
- }
81
- }
82
- catch {
83
- return false;
84
- }
85
- };
package/dist/src/index.js DELETED
@@ -1,56 +0,0 @@
1
- import ActionFooter from './components/ActionFooter.vue';
2
- import BeamArrow from './components/BeamArrow.vue';
3
- import BeamBtn from './components/BeamBtn.vue';
4
- import BeamDayDivider from './components/BeamDayDivider.vue';
5
- import BeamFilter from './components/BeamFilter.vue';
6
- import BeamFilterOption from './components/BeamFilterOption.vue';
7
- import BeamHeading from './components/BeamHeading.vue';
8
- import BeamMetadata from './components/BeamMetadata.vue';
9
- import BeamModal from './components/BeamModal.vue';
10
- import BeamModalOutlet from './components/BeamModalOutlet.vue';
11
- import BeamProgress from './components/BeamProgress.vue';
12
- import Confirm from './components/Confirm.vue';
13
- import FixedTop from './components/FixedTop.vue';
14
- import ItemCheck from './components/ItemCheck.vue';
15
- import ItemCount from './components/ItemCount.vue';
16
- import ListAnchor from './components/ListAnchor.vue';
17
- import ListItem from './components/ListItem.vue';
18
- import ListView from './components/ListView.vue';
19
- import Navbar from './components/Navbar.vue';
20
- import ScanInput from './components/ScanInput.vue';
21
- import SegmentedDisplay from './components/SegmentedDisplay.vue';
22
- import SplitColumn from './components/SplitColumn.vue';
23
- import ToggleArrow from './components/ToggleArrow.vue';
24
- import { useMqttStream } from './composables/mqtt';
25
- import '../themes/beam.css';
26
- /**
27
- * Install all Beam components
28
- * @param app - Vue app instance
29
- * @public
30
- */
31
- function install(app /* options */) {
32
- app.component('ActionFooter', ActionFooter);
33
- app.component('BeamArrow', BeamArrow);
34
- app.component('BeamBtn', BeamBtn);
35
- app.component('BeamDayDivider', BeamDayDivider);
36
- app.component('BeamFilter', BeamFilter);
37
- app.component('BeamFilterOption', BeamFilterOption);
38
- app.component('BeamHeading', BeamHeading);
39
- app.component('BeamMetadata', BeamMetadata);
40
- app.component('BeamModal', BeamModal);
41
- app.component('BeamModalOutlet', BeamModalOutlet);
42
- app.component('BeamProgress', BeamProgress);
43
- app.component('Confirm', Confirm);
44
- app.component('FixedTop', FixedTop);
45
- app.component('ItemCheck', ItemCheck);
46
- app.component('ItemCount', ItemCount);
47
- app.component('ListAnchor', ListAnchor);
48
- app.component('ListItem', ListItem);
49
- app.component('ListView', ListView);
50
- app.component('Navbar', Navbar);
51
- app.component('ScanInput', ScanInput);
52
- app.component('SegmentedDisplay', SegmentedDisplay);
53
- app.component('SplitColumn', SplitColumn);
54
- app.component('ToggleArrow', ToggleArrow);
55
- }
56
- export { ActionFooter, BeamArrow, BeamBtn, BeamDayDivider, BeamFilter, BeamFilterOption, BeamHeading, BeamMetadata, BeamModal, BeamModalOutlet, BeamProgress, Confirm, FixedTop, ItemCheck, ItemCount, ListAnchor, ListItem, ListView, Navbar, ScanInput, SegmentedDisplay, SplitColumn, ToggleArrow, install, useMqttStream, };
File without changes
@@ -1,31 +0,0 @@
1
- <template>
2
- <footer class="beam_action-footer">
3
- <span class="footer-action-wrapper">
4
- <BeamBtn @click="handleFooterAction">
5
- <slot />
6
- </BeamBtn>
7
- </span>
8
- </footer>
9
- </template>
10
-
11
- <script setup lang="ts">
12
- const emit = defineEmits<{ click: [] }>()
13
-
14
- const handleFooterAction = () => {
15
- emit('click')
16
- }
17
- </script>
18
-
19
- <style scoped>
20
- .beam_action-footer {
21
- margin-left: 0;
22
- background: linear-gradient(180deg, transparent 0%, white 100%);
23
- color: var(--sc-primary-text-color);
24
- position: fixed;
25
- bottom: 0;
26
- left: 0;
27
- width: 100%;
28
- padding: 0.625rem;
29
- text-align: center;
30
- }
31
- </style>
@@ -1,37 +0,0 @@
1
- <template>
2
- <div class="beam_metadata_arrow">
3
- <div class="beam_metadata_arrow-body" :style="{ background: color }"></div>
4
- <div class="beam_metadata_arrow-head">
5
- <svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6.74 7.78">
6
- <polygon points="6.74 3.89 0 0 0 7.78 6.74 3.89" style="fill: #c4c4c4" :style="{ fill: color }" />
7
- </svg>
8
- </div>
9
- </div>
10
- </template>
11
-
12
- <script setup lang="ts">
13
- const { color = '#c4c4c4' } = defineProps<{ color?: string }>()
14
- </script>
15
-
16
- <style scoped>
17
- .beam_metadata_arrow {
18
- align-self: center;
19
- flex-grow: 1;
20
- position: relative;
21
- display: flex;
22
- align-items: center;
23
- }
24
-
25
- .beam_metadata_arrow-body {
26
- width: 100%;
27
- height: 10px;
28
- background: #c4c4c4;
29
- }
30
-
31
- .beam_metadata_arrow-head {
32
- & svg {
33
- width: 20px;
34
- display: block;
35
- }
36
- }
37
- </style>