ns-bxl-label 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -172,6 +172,18 @@
172
172
  <option name="screenX" value="1080" />
173
173
  <option name="screenY" value="2340" />
174
174
  </PersistentDeviceSelectionData>
175
+ <PersistentDeviceSelectionData>
176
+ <option name="api" value="36" />
177
+ <option name="brand" value="samsung" />
178
+ <option name="codename" value="a26x" />
179
+ <option name="id" value="a26x" />
180
+ <option name="labId" value="google" />
181
+ <option name="manufacturer" value="Samsung" />
182
+ <option name="name" value="SM-A266B" />
183
+ <option name="screenDensity" value="450" />
184
+ <option name="screenX" value="1080" />
185
+ <option name="screenY" value="2340" />
186
+ </PersistentDeviceSelectionData>
175
187
  <PersistentDeviceSelectionData>
176
188
  <option name="api" value="34" />
177
189
  <option name="brand" value="samsung" />
@@ -777,6 +789,18 @@
777
789
  <option name="screenX" value="1080" />
778
790
  <option name="screenY" value="2400" />
779
791
  </PersistentDeviceSelectionData>
792
+ <PersistentDeviceSelectionData>
793
+ <option name="api" value="36" />
794
+ <option name="brand" value="samsung" />
795
+ <option name="codename" value="pa2q" />
796
+ <option name="id" value="pa2q" />
797
+ <option name="labId" value="google" />
798
+ <option name="manufacturer" value="Samsung" />
799
+ <option name="name" value="S25+" />
800
+ <option name="screenDensity" value="450" />
801
+ <option name="screenX" value="1080" />
802
+ <option name="screenY" value="2340" />
803
+ </PersistentDeviceSelectionData>
780
804
  <PersistentDeviceSelectionData>
781
805
  <option name="api" value="35" />
782
806
  <option name="brand" value="samsung" />
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ns-bxl-label",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "main": "src/index.ts",
5
5
  "nativescript": {
6
6
  "platforms": {
package/src/index.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { android as androidApp } from '@nativescript/core/application';
2
2
  import { Dialogs } from '@nativescript/core';
3
+ import * as permissions from 'nativescript-permissions';
3
4
 
4
5
  declare var com: any;
5
6
 
@@ -42,18 +43,38 @@ export function startBluetoothPrintFlow(zplCommand: string): void {
42
43
  return;
43
44
  }
44
45
 
45
- dialogManager.showBluetoothDeviceDialog(new java.util.function.Consumer({
46
- accept: (selectedAddress: string) => {
47
- const listener = new PrinterStateListenerImpl({
48
- onConnectionStateChanged: (status) => Dialogs.alert(status),
49
- showPrintingDialog: () => dialogManager.showPrintingDialog(),
50
- hidePrintingDialog: () => dialogManager.hidePrintingDialog(),
51
- onPrintError: (error) => Dialogs.alert("Error: " + error)
52
- });
53
-
54
- const Manager = com.rivercon.appprintbixolon.PrinterControl.BixolonPrinterManager;
55
- const manager = new Manager(context, listener);
56
- manager.startFullSequence(selectedAddress, zplCommand);
46
+ const requiredPermissions = [
47
+ android.Manifest.permission.BLUETOOTH_CONNECT,
48
+ android.Manifest.permission.BLUETOOTH_SCAN,
49
+ android.Manifest.permission.ACCESS_FINE_LOCATION
50
+ ];
51
+
52
+ permissions.requestPermissions(requiredPermissions, "Se requieren permisos para imprimir").then(() => {
53
+ try {
54
+ dialogManager.showBluetoothDeviceDialog(new java.util.function.Consumer({
55
+ accept: (selectedAddress: string) => {
56
+ const listener = new PrinterStateListenerImpl({
57
+ onConnectionStateChanged: (status) => Dialogs.alert("Estado: " + status),
58
+ showPrintingDialog: () => dialogManager.showPrintingDialog(),
59
+ hidePrintingDialog: () => dialogManager.hidePrintingDialog(),
60
+ onPrintError: (error) => Dialogs.alert("Error: " + error)
61
+ });
62
+
63
+ const Manager = com.rivercon.appprintbixolon.PrinterControl.BixolonPrinterManager;
64
+ const manager = new Manager(context, listener);
65
+
66
+ try {
67
+ manager.startFullSequence(selectedAddress, zplCommand);
68
+ Dialogs.alert("Impresión iniciada correctamente.");
69
+ } catch (e) {
70
+ Dialogs.alert("Error al iniciar impresión: " + e.message);
71
+ }
72
+ }
73
+ }));
74
+ } catch (e) {
75
+ Dialogs.alert("Error al mostrar el diálogo de dispositivos: " + e.message);
57
76
  }
58
- }));
77
+ }).catch((err) => {
78
+ Dialogs.alert("Permisos denegados: " + err);
79
+ });
59
80
  }