@inventreedb/ui 0.7.0 → 0.8.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 (91) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/.vite/manifest.json +162 -1
  3. package/dist/components/ProgressBar.d.ts +1 -0
  4. package/dist/components/ProgressBar.js +12 -4
  5. package/dist/components/ProgressBar.js.map +1 -1
  6. package/dist/components/RowActions.js +1 -2
  7. package/dist/components/RowActions.js.map +1 -1
  8. package/dist/enums/ApiEndpoints.d.ts +11 -4
  9. package/dist/enums/ApiEndpoints.js +10 -3
  10. package/dist/enums/ApiEndpoints.js.map +1 -1
  11. package/dist/enums/ModelInformation.d.ts +1 -0
  12. package/dist/enums/ModelInformation.js +34 -8
  13. package/dist/enums/ModelInformation.js.map +1 -1
  14. package/dist/enums/ModelType.d.ts +2 -1
  15. package/dist/enums/ModelType.js +2 -1
  16. package/dist/enums/ModelType.js.map +1 -1
  17. package/dist/functions/Conversion.d.ts +1 -0
  18. package/dist/functions/Conversion.js.map +1 -1
  19. package/dist/functions/Events.js +3 -4
  20. package/dist/functions/Events.js.map +1 -1
  21. package/dist/functions/Navigation.d.ts +5 -0
  22. package/dist/functions/Navigation.js +2 -5
  23. package/dist/functions/Navigation.js.map +1 -1
  24. package/dist/functions/Plugins.js +2 -4
  25. package/dist/functions/Plugins.js.map +1 -1
  26. package/dist/hooks/MonitorDataOutput.d.ts +10 -0
  27. package/dist/hooks/MonitorDataOutput.js +112 -0
  28. package/dist/hooks/MonitorDataOutput.js.map +1 -0
  29. package/dist/index.d.ts +1 -0
  30. package/dist/index.js +2 -0
  31. package/dist/index.js.map +1 -1
  32. package/dist/node_modules/@mantine/hooks/esm/use-document-visibility/use-document-visibility.js +16 -0
  33. package/dist/node_modules/@mantine/hooks/esm/use-document-visibility/use-document-visibility.js.map +1 -0
  34. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconCircleCheck.js +14 -0
  35. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconCircleCheck.js.map +1 -0
  36. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconExclamationCircle.js +14 -0
  37. package/dist/node_modules/@tabler/icons-react/dist/esm/icons/IconExclamationCircle.js.map +1 -0
  38. package/dist/node_modules/@tanstack/query-core/build/modern/focusManager.js +67 -0
  39. package/dist/node_modules/@tanstack/query-core/build/modern/focusManager.js.map +1 -0
  40. package/dist/node_modules/@tanstack/query-core/build/modern/notifyManager.js +84 -0
  41. package/dist/node_modules/@tanstack/query-core/build/modern/notifyManager.js.map +1 -0
  42. package/dist/node_modules/@tanstack/query-core/build/modern/onlineManager.js +57 -0
  43. package/dist/node_modules/@tanstack/query-core/build/modern/onlineManager.js.map +1 -0
  44. package/dist/node_modules/@tanstack/query-core/build/modern/query.js +16 -0
  45. package/dist/node_modules/@tanstack/query-core/build/modern/query.js.map +1 -0
  46. package/dist/node_modules/@tanstack/query-core/build/modern/queryObserver.js +456 -0
  47. package/dist/node_modules/@tanstack/query-core/build/modern/queryObserver.js.map +1 -0
  48. package/dist/node_modules/@tanstack/query-core/build/modern/retryer.js +8 -0
  49. package/dist/node_modules/@tanstack/query-core/build/modern/retryer.js.map +1 -0
  50. package/dist/node_modules/@tanstack/query-core/build/modern/subscribable.js +25 -0
  51. package/dist/node_modules/@tanstack/query-core/build/modern/subscribable.js.map +1 -0
  52. package/dist/node_modules/@tanstack/query-core/build/modern/thenable.js +35 -0
  53. package/dist/node_modules/@tanstack/query-core/build/modern/thenable.js.map +1 -0
  54. package/dist/node_modules/@tanstack/query-core/build/modern/utils.js +123 -0
  55. package/dist/node_modules/@tanstack/query-core/build/modern/utils.js.map +1 -0
  56. package/dist/node_modules/@tanstack/react-query/build/modern/IsRestoringProvider.js +8 -0
  57. package/dist/node_modules/@tanstack/react-query/build/modern/IsRestoringProvider.js.map +1 -0
  58. package/dist/node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js +17 -0
  59. package/dist/node_modules/@tanstack/react-query/build/modern/QueryClientProvider.js.map +1 -0
  60. package/dist/node_modules/@tanstack/react-query/build/modern/QueryErrorResetBoundary.js +22 -0
  61. package/dist/node_modules/@tanstack/react-query/build/modern/QueryErrorResetBoundary.js.map +1 -0
  62. package/dist/node_modules/@tanstack/react-query/build/modern/errorBoundaryUtils.js +29 -0
  63. package/dist/node_modules/@tanstack/react-query/build/modern/errorBoundaryUtils.js.map +1 -0
  64. package/dist/node_modules/@tanstack/react-query/build/modern/suspense.js +26 -0
  65. package/dist/node_modules/@tanstack/react-query/build/modern/suspense.js.map +1 -0
  66. package/dist/node_modules/@tanstack/react-query/build/modern/useBaseQuery.js +92 -0
  67. package/dist/node_modules/@tanstack/react-query/build/modern/useBaseQuery.js.map +1 -0
  68. package/dist/node_modules/@tanstack/react-query/build/modern/useQuery.js +9 -0
  69. package/dist/node_modules/@tanstack/react-query/build/modern/useQuery.js.map +1 -0
  70. package/dist/node_modules/react/cjs/react-jsx-runtime.development.js +13 -17
  71. package/dist/node_modules/react/cjs/react-jsx-runtime.development.js.map +1 -1
  72. package/dist/types/Auth.d.ts +2 -1
  73. package/dist/types/Filters.d.ts +1 -1
  74. package/dist/types/Forms.d.ts +12 -0
  75. package/dist/types/Plugins.js +3 -3
  76. package/dist/types/Settings.d.ts +2 -0
  77. package/dist/types/Tables.d.ts +6 -0
  78. package/lib/components/ProgressBar.tsx +8 -4
  79. package/lib/enums/ApiEndpoints.tsx +13 -4
  80. package/lib/enums/ModelInformation.tsx +25 -8
  81. package/lib/enums/ModelType.tsx +2 -1
  82. package/lib/functions/Conversion.tsx +38 -0
  83. package/lib/functions/Navigation.tsx +22 -0
  84. package/lib/hooks/MonitorDataOutput.tsx +122 -0
  85. package/lib/index.ts +3 -0
  86. package/lib/types/Auth.tsx +2 -1
  87. package/lib/types/Filters.tsx +1 -1
  88. package/lib/types/Forms.tsx +12 -0
  89. package/lib/types/Settings.tsx +2 -0
  90. package/lib/types/Tables.tsx +6 -0
  91. package/package.json +8 -6
@@ -18,25 +18,41 @@ const ModelInformationDict = {
18
18
  url_detail: "/part/:pk/",
19
19
  api_endpoint: ApiEndpoints.part_list,
20
20
  admin_url: "/part/part/",
21
+ supports_barcode: true,
21
22
  icon: "part"
22
23
  },
23
- partparametertemplate: {
24
+ parameter: {
24
25
  label: () => _i18n._(
25
26
  /*i18n*/
26
27
  {
27
- id: "hAddRl"
28
+ id: "T/87By"
28
29
  }
29
30
  ),
30
31
  label_multiple: () => _i18n._(
31
32
  /*i18n*/
32
33
  {
33
- id: "UrnQgP"
34
+ id: "F18WP3"
34
35
  }
35
36
  ),
36
- url_overview: "/settings/admin/part-parameters",
37
- url_detail: "/partparametertemplate/:pk/",
38
- api_endpoint: ApiEndpoints.part_parameter_template_list,
39
- icon: "test_templates"
37
+ api_endpoint: ApiEndpoints.parameter_list,
38
+ icon: "list_details"
39
+ },
40
+ parametertemplate: {
41
+ label: () => _i18n._(
42
+ /*i18n*/
43
+ {
44
+ id: "+nwoLk"
45
+ }
46
+ ),
47
+ label_multiple: () => _i18n._(
48
+ /*i18n*/
49
+ {
50
+ id: "ciZG57"
51
+ }
52
+ ),
53
+ api_endpoint: ApiEndpoints.parameter_template_list,
54
+ admin_url: "/common/parametertemplate/",
55
+ icon: "list"
40
56
  },
41
57
  parttesttemplate: {
42
58
  label: () => _i18n._(
@@ -72,6 +88,7 @@ const ModelInformationDict = {
72
88
  url_detail: "/purchasing/supplier-part/:pk/",
73
89
  api_endpoint: ApiEndpoints.supplier_part_list,
74
90
  admin_url: "/company/supplierpart/",
91
+ supports_barcode: true,
75
92
  icon: "supplier_part"
76
93
  },
77
94
  manufacturerpart: {
@@ -91,6 +108,7 @@ const ModelInformationDict = {
91
108
  url_detail: "/purchasing/manufacturer-part/:pk/",
92
109
  api_endpoint: ApiEndpoints.manufacturer_part_list,
93
110
  admin_url: "/company/manufacturerpart/",
111
+ supports_barcode: true,
94
112
  icon: "manufacturers"
95
113
  },
96
114
  partcategory: {
@@ -129,6 +147,7 @@ const ModelInformationDict = {
129
147
  url_detail: "/stock/item/:pk/",
130
148
  api_endpoint: ApiEndpoints.stock_item_list,
131
149
  admin_url: "/stock/stockitem/",
150
+ supports_barcode: true,
132
151
  icon: "stock"
133
152
  },
134
153
  stocklocation: {
@@ -148,6 +167,7 @@ const ModelInformationDict = {
148
167
  url_detail: "/stock/location/:pk/",
149
168
  api_endpoint: ApiEndpoints.stock_location_list,
150
169
  admin_url: "/stock/stocklocation/",
170
+ supports_barcode: true,
151
171
  icon: "location"
152
172
  },
153
173
  stocklocationtype: {
@@ -199,6 +219,7 @@ const ModelInformationDict = {
199
219
  url_detail: "/manufacturing/build-order/:pk/",
200
220
  api_endpoint: ApiEndpoints.build_order_list,
201
221
  admin_url: "/build/build/",
222
+ supports_barcode: true,
202
223
  icon: "build_order"
203
224
  },
204
225
  buildline: {
@@ -287,6 +308,7 @@ const ModelInformationDict = {
287
308
  url_detail: "/purchasing/purchase-order/:pk/",
288
309
  api_endpoint: ApiEndpoints.purchase_order_list,
289
310
  admin_url: "/order/purchaseorder/",
311
+ supports_barcode: true,
290
312
  icon: "purchase_orders"
291
313
  },
292
314
  purchaseorderlineitem: {
@@ -322,6 +344,7 @@ const ModelInformationDict = {
322
344
  url_detail: "/sales/sales-order/:pk/",
323
345
  api_endpoint: ApiEndpoints.sales_order_list,
324
346
  admin_url: "/order/salesorder/",
347
+ supports_barcode: true,
325
348
  icon: "sales_orders"
326
349
  },
327
350
  salesordershipment: {
@@ -337,9 +360,11 @@ const ModelInformationDict = {
337
360
  id: "D/EkfS"
338
361
  }
339
362
  ),
363
+ url_overview: "/sales/index/shipments",
340
364
  url_detail: "/sales/shipment/:pk/",
341
365
  api_endpoint: ApiEndpoints.sales_order_shipment_list,
342
- icon: "sales_orders"
366
+ supports_barcode: true,
367
+ icon: "shipment"
343
368
  },
344
369
  returnorder: {
345
370
  label: () => _i18n._(
@@ -358,6 +383,7 @@ const ModelInformationDict = {
358
383
  url_detail: "/sales/return-order/:pk/",
359
384
  api_endpoint: ApiEndpoints.return_order_list,
360
385
  admin_url: "/order/returnorder/",
386
+ supports_barcode: true,
361
387
  icon: "return_orders"
362
388
  },
363
389
  returnorderlineitem: {
@@ -1 +1 @@
1
- {"version":3,"file":"ModelInformation.js","sources":["../../lib/enums/ModelInformation.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport type { InvenTreeIconType } from '../types/Icons';\nimport { ApiEndpoints } from './ApiEndpoints';\nimport type { ModelType } from './ModelType';\n\nexport interface ModelInformationInterface {\n label: string;\n label_multiple: string;\n url_overview?: string;\n url_detail?: string;\n api_endpoint: ApiEndpoints;\n admin_url?: string;\n icon: keyof InvenTreeIconType;\n}\n\nexport interface TranslatableModelInformationInterface\n extends Omit<ModelInformationInterface, 'label' | 'label_multiple'> {\n label: () => string;\n label_multiple: () => string;\n}\n\nexport type ModelDict = {\n [key in keyof typeof ModelType]: TranslatableModelInformationInterface;\n};\n\nexport const ModelInformationDict: ModelDict = {\n part: {\n label: () => t`Part`,\n label_multiple: () => t`Parts`,\n url_overview: '/part/category/index/parts',\n url_detail: '/part/:pk/',\n api_endpoint: ApiEndpoints.part_list,\n admin_url: '/part/part/',\n icon: 'part'\n },\n partparametertemplate: {\n label: () => t`Part Parameter Template`,\n label_multiple: () => t`Part Parameter Templates`,\n url_overview: '/settings/admin/part-parameters',\n url_detail: '/partparametertemplate/:pk/',\n api_endpoint: ApiEndpoints.part_parameter_template_list,\n icon: 'test_templates'\n },\n parttesttemplate: {\n label: () => t`Part Test Template`,\n label_multiple: () => t`Part Test Templates`,\n url_detail: '/parttesttemplate/:pk/',\n api_endpoint: ApiEndpoints.part_test_template_list,\n icon: 'test'\n },\n supplierpart: {\n label: () => t`Supplier Part`,\n label_multiple: () => t`Supplier Parts`,\n url_overview: '/purchasing/index/supplier-parts',\n url_detail: '/purchasing/supplier-part/:pk/',\n api_endpoint: ApiEndpoints.supplier_part_list,\n admin_url: '/company/supplierpart/',\n icon: 'supplier_part'\n },\n manufacturerpart: {\n label: () => t`Manufacturer Part`,\n label_multiple: () => t`Manufacturer Parts`,\n url_overview: '/purchasing/index/manufacturer-parts',\n url_detail: '/purchasing/manufacturer-part/:pk/',\n api_endpoint: ApiEndpoints.manufacturer_part_list,\n admin_url: '/company/manufacturerpart/',\n icon: 'manufacturers'\n },\n partcategory: {\n label: () => t`Part Category`,\n label_multiple: () => t`Part Categories`,\n url_overview: '/part/category/parts/subcategories',\n url_detail: '/part/category/:pk/',\n api_endpoint: ApiEndpoints.category_list,\n admin_url: '/part/partcategory/',\n icon: 'category'\n },\n stockitem: {\n label: () => t`Stock Item`,\n label_multiple: () => t`Stock Items`,\n url_overview: '/stock/location/index/stock-items',\n url_detail: '/stock/item/:pk/',\n api_endpoint: ApiEndpoints.stock_item_list,\n admin_url: '/stock/stockitem/',\n icon: 'stock'\n },\n stocklocation: {\n label: () => t`Stock Location`,\n label_multiple: () => t`Stock Locations`,\n url_overview: '/stock/location',\n url_detail: '/stock/location/:pk/',\n api_endpoint: ApiEndpoints.stock_location_list,\n admin_url: '/stock/stocklocation/',\n icon: 'location'\n },\n stocklocationtype: {\n label: () => t`Stock Location Type`,\n label_multiple: () => t`Stock Location Types`,\n api_endpoint: ApiEndpoints.stock_location_type_list,\n icon: 'location'\n },\n stockhistory: {\n label: () => t`Stock History`,\n label_multiple: () => t`Stock Histories`,\n api_endpoint: ApiEndpoints.stock_tracking_list,\n icon: 'history'\n },\n build: {\n label: () => t`Build`,\n label_multiple: () => t`Builds`,\n url_overview: '/manufacturing/index/buildorders/',\n url_detail: '/manufacturing/build-order/:pk/',\n api_endpoint: ApiEndpoints.build_order_list,\n admin_url: '/build/build/',\n icon: 'build_order'\n },\n buildline: {\n label: () => t`Build Line`,\n label_multiple: () => t`Build Lines`,\n url_overview: '/build/line',\n url_detail: '/build/line/:pk/',\n api_endpoint: ApiEndpoints.build_line_list,\n icon: 'build_order'\n },\n builditem: {\n label: () => t`Build Item`,\n label_multiple: () => t`Build Items`,\n api_endpoint: ApiEndpoints.build_item_list,\n icon: 'build_order'\n },\n company: {\n label: () => t`Company`,\n label_multiple: () => t`Companies`,\n url_detail: '/company/:pk/',\n api_endpoint: ApiEndpoints.company_list,\n admin_url: '/company/company/',\n icon: 'building'\n },\n projectcode: {\n label: () => t`Project Code`,\n label_multiple: () => t`Project Codes`,\n url_detail: '/project-code/:pk/',\n api_endpoint: ApiEndpoints.project_code_list,\n icon: 'list_details'\n },\n purchaseorder: {\n label: () => t`Purchase Order`,\n label_multiple: () => t`Purchase Orders`,\n url_overview: '/purchasing/index/purchaseorders',\n url_detail: '/purchasing/purchase-order/:pk/',\n api_endpoint: ApiEndpoints.purchase_order_list,\n admin_url: '/order/purchaseorder/',\n icon: 'purchase_orders'\n },\n purchaseorderlineitem: {\n label: () => t`Purchase Order Line`,\n label_multiple: () => t`Purchase Order Lines`,\n api_endpoint: ApiEndpoints.purchase_order_line_list,\n icon: 'purchase_orders'\n },\n salesorder: {\n label: () => t`Sales Order`,\n label_multiple: () => t`Sales Orders`,\n url_overview: '/sales/index/salesorders',\n url_detail: '/sales/sales-order/:pk/',\n api_endpoint: ApiEndpoints.sales_order_list,\n admin_url: '/order/salesorder/',\n icon: 'sales_orders'\n },\n salesordershipment: {\n label: () => t`Sales Order Shipment`,\n label_multiple: () => t`Sales Order Shipments`,\n url_detail: '/sales/shipment/:pk/',\n api_endpoint: ApiEndpoints.sales_order_shipment_list,\n icon: 'sales_orders'\n },\n returnorder: {\n label: () => t`Return Order`,\n label_multiple: () => t`Return Orders`,\n url_overview: '/sales/index/returnorders',\n url_detail: '/sales/return-order/:pk/',\n api_endpoint: ApiEndpoints.return_order_list,\n admin_url: '/order/returnorder/',\n icon: 'return_orders'\n },\n returnorderlineitem: {\n label: () => t`Return Order Line Item`,\n label_multiple: () => t`Return Order Line Items`,\n api_endpoint: ApiEndpoints.return_order_line_list,\n icon: 'return_orders'\n },\n address: {\n label: () => t`Address`,\n label_multiple: () => t`Addresses`,\n url_detail: '/address/:pk/',\n api_endpoint: ApiEndpoints.address_list,\n icon: 'address'\n },\n contact: {\n label: () => t`Contact`,\n label_multiple: () => t`Contacts`,\n url_detail: '/contact/:pk/',\n api_endpoint: ApiEndpoints.contact_list,\n icon: 'group'\n },\n owner: {\n label: () => t`Owner`,\n label_multiple: () => t`Owners`,\n url_detail: '/owner/:pk/',\n api_endpoint: ApiEndpoints.owner_list,\n icon: 'group'\n },\n user: {\n label: () => t`User`,\n label_multiple: () => t`Users`,\n url_detail: '/core/user/:pk/',\n api_endpoint: ApiEndpoints.user_list,\n icon: 'user'\n },\n group: {\n label: () => t`Group`,\n label_multiple: () => t`Groups`,\n url_detail: '/core/group/:pk/',\n api_endpoint: ApiEndpoints.group_list,\n admin_url: '/auth/group/',\n icon: 'group'\n },\n importsession: {\n label: () => t`Import Session`,\n label_multiple: () => t`Import Sessions`,\n url_overview: '/settings/admin/import',\n url_detail: '/import/:pk/',\n api_endpoint: ApiEndpoints.import_session_list,\n icon: 'import'\n },\n labeltemplate: {\n label: () => t`Label Template`,\n label_multiple: () => t`Label Templates`,\n url_overview: '/settings/admin/labels',\n url_detail: '/settings/admin/labels/:pk/',\n api_endpoint: ApiEndpoints.label_list,\n icon: 'labels'\n },\n reporttemplate: {\n label: () => t`Report Template`,\n label_multiple: () => t`Report Templates`,\n url_overview: '/settings/admin/reports',\n url_detail: '/settings/admin/reports/:pk/',\n api_endpoint: ApiEndpoints.report_list,\n icon: 'reports'\n },\n pluginconfig: {\n label: () => t`Plugin Configuration`,\n label_multiple: () => t`Plugin Configurations`,\n url_overview: '/settings/admin/plugin',\n url_detail: '/settings/admin/plugin/:pk/',\n api_endpoint: ApiEndpoints.plugin_list,\n icon: 'plugin'\n },\n contenttype: {\n label: () => t`Content Type`,\n label_multiple: () => t`Content Types`,\n api_endpoint: ApiEndpoints.content_type_list,\n icon: 'list_details'\n },\n selectionlist: {\n label: () => t`Selection List`,\n label_multiple: () => t`Selection Lists`,\n url_overview: '/settings/admin/part-parameters',\n api_endpoint: ApiEndpoints.selectionlist_list,\n icon: 'list_details'\n },\n error: {\n label: () => t`Error`,\n label_multiple: () => t`Errors`,\n api_endpoint: ApiEndpoints.error_report_list,\n url_overview: '/settings/admin/errors',\n url_detail: '/settings/admin/errors/:pk/',\n icon: 'exclamation'\n }\n};\n"],"names":["ModelInformationDict","part","label","_i18n","_","id","label_multiple","url_overview","url_detail","api_endpoint","ApiEndpoints","part_list","admin_url","icon","partparametertemplate","part_parameter_template_list","parttesttemplate","part_test_template_list","supplierpart","supplier_part_list","manufacturerpart","manufacturer_part_list","partcategory","category_list","stockitem","stock_item_list","stocklocation","stock_location_list","stocklocationtype","stock_location_type_list","stockhistory","stock_tracking_list","build","build_order_list","buildline","build_line_list","builditem","build_item_list","company","company_list","projectcode","project_code_list","purchaseorder","purchase_order_list","purchaseorderlineitem","purchase_order_line_list","salesorder","sales_order_list","salesordershipment","sales_order_shipment_list","returnorder","return_order_list","returnorderlineitem","return_order_line_list","address","address_list","contact","contact_list","owner","owner_list","user","user_list","group","group_list","importsession","import_session_list","labeltemplate","label_list","reporttemplate","report_list","pluginconfig","plugin_list","contenttype","content_type_list","selectionlist","selectionlist_list","error","error_report_list"],"mappings":"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"}
1
+ {"version":3,"file":"ModelInformation.js","sources":["../../lib/enums/ModelInformation.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport type { InvenTreeIconType } from '../types/Icons';\nimport { ApiEndpoints } from './ApiEndpoints';\nimport type { ModelType } from './ModelType';\n\nexport interface ModelInformationInterface {\n label: string;\n label_multiple: string;\n url_overview?: string;\n url_detail?: string;\n api_endpoint: ApiEndpoints;\n admin_url?: string;\n supports_barcode?: boolean;\n icon: keyof InvenTreeIconType;\n}\n\nexport interface TranslatableModelInformationInterface\n extends Omit<ModelInformationInterface, 'label' | 'label_multiple'> {\n label: () => string;\n label_multiple: () => string;\n}\n\nexport type ModelDict = {\n [key in keyof typeof ModelType]: TranslatableModelInformationInterface;\n};\n\nexport const ModelInformationDict: ModelDict = {\n part: {\n label: () => t`Part`,\n label_multiple: () => t`Parts`,\n url_overview: '/part/category/index/parts',\n url_detail: '/part/:pk/',\n api_endpoint: ApiEndpoints.part_list,\n admin_url: '/part/part/',\n supports_barcode: true,\n icon: 'part'\n },\n parameter: {\n label: () => t`Parameter`,\n label_multiple: () => t`Parameters`,\n api_endpoint: ApiEndpoints.parameter_list,\n icon: 'list_details'\n },\n parametertemplate: {\n label: () => t`Parameter Template`,\n label_multiple: () => t`Parameter Templates`,\n api_endpoint: ApiEndpoints.parameter_template_list,\n admin_url: '/common/parametertemplate/',\n icon: 'list'\n },\n parttesttemplate: {\n label: () => t`Part Test Template`,\n label_multiple: () => t`Part Test Templates`,\n url_detail: '/parttesttemplate/:pk/',\n api_endpoint: ApiEndpoints.part_test_template_list,\n icon: 'test'\n },\n supplierpart: {\n label: () => t`Supplier Part`,\n label_multiple: () => t`Supplier Parts`,\n url_overview: '/purchasing/index/supplier-parts',\n url_detail: '/purchasing/supplier-part/:pk/',\n api_endpoint: ApiEndpoints.supplier_part_list,\n admin_url: '/company/supplierpart/',\n supports_barcode: true,\n icon: 'supplier_part'\n },\n manufacturerpart: {\n label: () => t`Manufacturer Part`,\n label_multiple: () => t`Manufacturer Parts`,\n url_overview: '/purchasing/index/manufacturer-parts',\n url_detail: '/purchasing/manufacturer-part/:pk/',\n api_endpoint: ApiEndpoints.manufacturer_part_list,\n admin_url: '/company/manufacturerpart/',\n supports_barcode: true,\n icon: 'manufacturers'\n },\n partcategory: {\n label: () => t`Part Category`,\n label_multiple: () => t`Part Categories`,\n url_overview: '/part/category/parts/subcategories',\n url_detail: '/part/category/:pk/',\n api_endpoint: ApiEndpoints.category_list,\n admin_url: '/part/partcategory/',\n icon: 'category'\n },\n stockitem: {\n label: () => t`Stock Item`,\n label_multiple: () => t`Stock Items`,\n url_overview: '/stock/location/index/stock-items',\n url_detail: '/stock/item/:pk/',\n api_endpoint: ApiEndpoints.stock_item_list,\n admin_url: '/stock/stockitem/',\n supports_barcode: true,\n icon: 'stock'\n },\n stocklocation: {\n label: () => t`Stock Location`,\n label_multiple: () => t`Stock Locations`,\n url_overview: '/stock/location',\n url_detail: '/stock/location/:pk/',\n api_endpoint: ApiEndpoints.stock_location_list,\n admin_url: '/stock/stocklocation/',\n supports_barcode: true,\n icon: 'location'\n },\n stocklocationtype: {\n label: () => t`Stock Location Type`,\n label_multiple: () => t`Stock Location Types`,\n api_endpoint: ApiEndpoints.stock_location_type_list,\n icon: 'location'\n },\n stockhistory: {\n label: () => t`Stock History`,\n label_multiple: () => t`Stock Histories`,\n api_endpoint: ApiEndpoints.stock_tracking_list,\n icon: 'history'\n },\n build: {\n label: () => t`Build`,\n label_multiple: () => t`Builds`,\n url_overview: '/manufacturing/index/buildorders/',\n url_detail: '/manufacturing/build-order/:pk/',\n api_endpoint: ApiEndpoints.build_order_list,\n admin_url: '/build/build/',\n supports_barcode: true,\n icon: 'build_order'\n },\n buildline: {\n label: () => t`Build Line`,\n label_multiple: () => t`Build Lines`,\n url_overview: '/build/line',\n url_detail: '/build/line/:pk/',\n api_endpoint: ApiEndpoints.build_line_list,\n icon: 'build_order'\n },\n builditem: {\n label: () => t`Build Item`,\n label_multiple: () => t`Build Items`,\n api_endpoint: ApiEndpoints.build_item_list,\n icon: 'build_order'\n },\n company: {\n label: () => t`Company`,\n label_multiple: () => t`Companies`,\n url_detail: '/company/:pk/',\n api_endpoint: ApiEndpoints.company_list,\n admin_url: '/company/company/',\n icon: 'building'\n },\n projectcode: {\n label: () => t`Project Code`,\n label_multiple: () => t`Project Codes`,\n url_detail: '/project-code/:pk/',\n api_endpoint: ApiEndpoints.project_code_list,\n icon: 'list_details'\n },\n purchaseorder: {\n label: () => t`Purchase Order`,\n label_multiple: () => t`Purchase Orders`,\n url_overview: '/purchasing/index/purchaseorders',\n url_detail: '/purchasing/purchase-order/:pk/',\n api_endpoint: ApiEndpoints.purchase_order_list,\n admin_url: '/order/purchaseorder/',\n supports_barcode: true,\n icon: 'purchase_orders'\n },\n purchaseorderlineitem: {\n label: () => t`Purchase Order Line`,\n label_multiple: () => t`Purchase Order Lines`,\n api_endpoint: ApiEndpoints.purchase_order_line_list,\n icon: 'purchase_orders'\n },\n salesorder: {\n label: () => t`Sales Order`,\n label_multiple: () => t`Sales Orders`,\n url_overview: '/sales/index/salesorders',\n url_detail: '/sales/sales-order/:pk/',\n api_endpoint: ApiEndpoints.sales_order_list,\n admin_url: '/order/salesorder/',\n supports_barcode: true,\n icon: 'sales_orders'\n },\n salesordershipment: {\n label: () => t`Sales Order Shipment`,\n label_multiple: () => t`Sales Order Shipments`,\n url_overview: '/sales/index/shipments',\n url_detail: '/sales/shipment/:pk/',\n api_endpoint: ApiEndpoints.sales_order_shipment_list,\n supports_barcode: true,\n icon: 'shipment'\n },\n returnorder: {\n label: () => t`Return Order`,\n label_multiple: () => t`Return Orders`,\n url_overview: '/sales/index/returnorders',\n url_detail: '/sales/return-order/:pk/',\n api_endpoint: ApiEndpoints.return_order_list,\n admin_url: '/order/returnorder/',\n supports_barcode: true,\n icon: 'return_orders'\n },\n returnorderlineitem: {\n label: () => t`Return Order Line Item`,\n label_multiple: () => t`Return Order Line Items`,\n api_endpoint: ApiEndpoints.return_order_line_list,\n icon: 'return_orders'\n },\n address: {\n label: () => t`Address`,\n label_multiple: () => t`Addresses`,\n url_detail: '/address/:pk/',\n api_endpoint: ApiEndpoints.address_list,\n icon: 'address'\n },\n contact: {\n label: () => t`Contact`,\n label_multiple: () => t`Contacts`,\n url_detail: '/contact/:pk/',\n api_endpoint: ApiEndpoints.contact_list,\n icon: 'group'\n },\n owner: {\n label: () => t`Owner`,\n label_multiple: () => t`Owners`,\n url_detail: '/owner/:pk/',\n api_endpoint: ApiEndpoints.owner_list,\n icon: 'group'\n },\n user: {\n label: () => t`User`,\n label_multiple: () => t`Users`,\n url_detail: '/core/user/:pk/',\n api_endpoint: ApiEndpoints.user_list,\n icon: 'user'\n },\n group: {\n label: () => t`Group`,\n label_multiple: () => t`Groups`,\n url_detail: '/core/group/:pk/',\n api_endpoint: ApiEndpoints.group_list,\n admin_url: '/auth/group/',\n icon: 'group'\n },\n importsession: {\n label: () => t`Import Session`,\n label_multiple: () => t`Import Sessions`,\n url_overview: '/settings/admin/import',\n url_detail: '/import/:pk/',\n api_endpoint: ApiEndpoints.import_session_list,\n icon: 'import'\n },\n labeltemplate: {\n label: () => t`Label Template`,\n label_multiple: () => t`Label Templates`,\n url_overview: '/settings/admin/labels',\n url_detail: '/settings/admin/labels/:pk/',\n api_endpoint: ApiEndpoints.label_list,\n icon: 'labels'\n },\n reporttemplate: {\n label: () => t`Report Template`,\n label_multiple: () => t`Report Templates`,\n url_overview: '/settings/admin/reports',\n url_detail: '/settings/admin/reports/:pk/',\n api_endpoint: ApiEndpoints.report_list,\n icon: 'reports'\n },\n pluginconfig: {\n label: () => t`Plugin Configuration`,\n label_multiple: () => t`Plugin Configurations`,\n url_overview: '/settings/admin/plugin',\n url_detail: '/settings/admin/plugin/:pk/',\n api_endpoint: ApiEndpoints.plugin_list,\n icon: 'plugin'\n },\n contenttype: {\n label: () => t`Content Type`,\n label_multiple: () => t`Content Types`,\n api_endpoint: ApiEndpoints.content_type_list,\n icon: 'list_details'\n },\n selectionlist: {\n label: () => t`Selection List`,\n label_multiple: () => t`Selection Lists`,\n url_overview: '/settings/admin/part-parameters',\n api_endpoint: ApiEndpoints.selectionlist_list,\n icon: 'list_details'\n },\n error: {\n label: () => t`Error`,\n label_multiple: () => t`Errors`,\n api_endpoint: ApiEndpoints.error_report_list,\n url_overview: '/settings/admin/errors',\n url_detail: '/settings/admin/errors/:pk/',\n icon: 'exclamation'\n }\n};\n"],"names":["ModelInformationDict","part","label","_i18n","_","id","label_multiple","url_overview","url_detail","api_endpoint","ApiEndpoints","part_list","admin_url","supports_barcode","icon","parameter","parameter_list","parametertemplate","parameter_template_list","parttesttemplate","part_test_template_list","supplierpart","supplier_part_list","manufacturerpart","manufacturer_part_list","partcategory","category_list","stockitem","stock_item_list","stocklocation","stock_location_list","stocklocationtype","stock_location_type_list","stockhistory","stock_tracking_list","build","build_order_list","buildline","build_line_list","builditem","build_item_list","company","company_list","projectcode","project_code_list","purchaseorder","purchase_order_list","purchaseorderlineitem","purchase_order_line_list","salesorder","sales_order_list","salesordershipment","sales_order_shipment_list","returnorder","return_order_list","returnorderlineitem","return_order_line_list","address","address_list","contact","contact_list","owner","owner_list","user","user_list","group","group_list","importsession","import_session_list","labeltemplate","label_list","reporttemplate","report_list","pluginconfig","plugin_list","contenttype","content_type_list","selectionlist","selectionlist_list","error","error_report_list"],"mappings":";AAAA,MAAA,QAAA,OAAA,YAAA,EAAA;AA0BO,MAAMA,uBAAkC;AAAA,EAC7CC,MAAM;AAAA,IACJC,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAM;AAAA,IACnBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAO;AAAA,IAC7BE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAaC;AAAAA,IAC3BC,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC,MAAM;AAAA,EAAA;AAAA,EAERC,WAAW;AAAA,IACTb,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAW;AAAA,IACxBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAY;AAAA,IAClCI,cAAcC,aAAaM;AAAAA,IAC3BF,MAAM;AAAA,EAAA;AAAA,EAERG,mBAAmB;AAAA,IACjBf,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAoB;AAAA,IACjCC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAqB;AAAA,IAC3CI,cAAcC,aAAaQ;AAAAA,IAC3BN,WAAW;AAAA,IACXE,MAAM;AAAA,EAAA;AAAA,EAERK,kBAAkB;AAAA,IAChBjB,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAoB;AAAA,IACjCC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAqB;AAAA,IAC3CG,YAAY;AAAA,IACZC,cAAcC,aAAaU;AAAAA,IAC3BN,MAAM;AAAA,EAAA;AAAA,EAERO,cAAc;AAAA,IACZnB,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAe;AAAA,IAC5BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAgB;AAAA,IACtCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAaY;AAAAA,IAC3BV,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC,MAAM;AAAA,EAAA;AAAA,EAERS,kBAAkB;AAAA,IAChBrB,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAmB;AAAA,IAChCC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAoB;AAAA,IAC1CE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAac;AAAAA,IAC3BZ,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC,MAAM;AAAA,EAAA;AAAA,EAERW,cAAc;AAAA,IACZvB,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAe;AAAA,IAC5BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAiB;AAAA,IACvCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAagB;AAAAA,IAC3Bd,WAAW;AAAA,IACXE,MAAM;AAAA,EAAA;AAAA,EAERa,WAAW;AAAA,IACTzB,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAY;AAAA,IACzBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAa;AAAA,IACnCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAakB;AAAAA,IAC3BhB,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC,MAAM;AAAA,EAAA;AAAA,EAERe,eAAe;AAAA,IACb3B,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAgB;AAAA,IAC7BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAiB;AAAA,IACvCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAaoB;AAAAA,IAC3BlB,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC,MAAM;AAAA,EAAA;AAAA,EAERiB,mBAAmB;AAAA,IACjB7B,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAqB;AAAA,IAClCC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAsB;AAAA,IAC5CI,cAAcC,aAAasB;AAAAA,IAC3BlB,MAAM;AAAA,EAAA;AAAA,EAERmB,cAAc;AAAA,IACZ/B,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAe;AAAA,IAC5BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAiB;AAAA,IACvCI,cAAcC,aAAawB;AAAAA,IAC3BpB,MAAM;AAAA,EAAA;AAAA,EAERqB,OAAO;AAAA,IACLjC,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAO;AAAA,IACpBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAQ;AAAA,IAC9BE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAa0B;AAAAA,IAC3BxB,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC,MAAM;AAAA,EAAA;AAAA,EAERuB,WAAW;AAAA,IACTnC,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAY;AAAA,IACzBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAa;AAAA,IACnCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAa4B;AAAAA,IAC3BxB,MAAM;AAAA,EAAA;AAAA,EAERyB,WAAW;AAAA,IACTrC,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAY;AAAA,IACzBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAa;AAAA,IACnCI,cAAcC,aAAa8B;AAAAA,IAC3B1B,MAAM;AAAA,EAAA;AAAA,EAER2B,SAAS;AAAA,IACPvC,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAS;AAAA,IACtBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAW;AAAA,IACjCG,YAAY;AAAA,IACZC,cAAcC,aAAagC;AAAAA,IAC3B9B,WAAW;AAAA,IACXE,MAAM;AAAA,EAAA;AAAA,EAER6B,aAAa;AAAA,IACXzC,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAc;AAAA,IAC3BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAe;AAAA,IACrCG,YAAY;AAAA,IACZC,cAAcC,aAAakC;AAAAA,IAC3B9B,MAAM;AAAA,EAAA;AAAA,EAER+B,eAAe;AAAA,IACb3C,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAgB;AAAA,IAC7BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAiB;AAAA,IACvCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAaoC;AAAAA,IAC3BlC,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC,MAAM;AAAA,EAAA;AAAA,EAERiC,uBAAuB;AAAA,IACrB7C,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAqB;AAAA,IAClCC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAsB;AAAA,IAC5CI,cAAcC,aAAasC;AAAAA,IAC3BlC,MAAM;AAAA,EAAA;AAAA,EAERmC,YAAY;AAAA,IACV/C,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAa;AAAA,IAC1BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAc;AAAA,IACpCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAawC;AAAAA,IAC3BtC,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC,MAAM;AAAA,EAAA;AAAA,EAERqC,oBAAoB;AAAA,IAClBjD,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAsB;AAAA,IACnCC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAuB;AAAA,IAC7CE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAa0C;AAAAA,IAC3BvC,kBAAkB;AAAA,IAClBC,MAAM;AAAA,EAAA;AAAA,EAERuC,aAAa;AAAA,IACXnD,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAc;AAAA,IAC3BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAe;AAAA,IACrCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAa4C;AAAAA,IAC3B1C,WAAW;AAAA,IACXC,kBAAkB;AAAA,IAClBC,MAAM;AAAA,EAAA;AAAA,EAERyC,qBAAqB;AAAA,IACnBrD,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAwB;AAAA,IACrCC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAyB;AAAA,IAC/CI,cAAcC,aAAa8C;AAAAA,IAC3B1C,MAAM;AAAA,EAAA;AAAA,EAER2C,SAAS;AAAA,IACPvD,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAS;AAAA,IACtBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAW;AAAA,IACjCG,YAAY;AAAA,IACZC,cAAcC,aAAagD;AAAAA,IAC3B5C,MAAM;AAAA,EAAA;AAAA,EAER6C,SAAS;AAAA,IACPzD,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAS;AAAA,IACtBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAU;AAAA,IAChCG,YAAY;AAAA,IACZC,cAAcC,aAAakD;AAAAA,IAC3B9C,MAAM;AAAA,EAAA;AAAA,EAER+C,OAAO;AAAA,IACL3D,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAO;AAAA,IACpBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAQ;AAAA,IAC9BG,YAAY;AAAA,IACZC,cAAcC,aAAaoD;AAAAA,IAC3BhD,MAAM;AAAA,EAAA;AAAA,EAERiD,MAAM;AAAA,IACJ7D,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAM;AAAA,IACnBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAO;AAAA,IAC7BG,YAAY;AAAA,IACZC,cAAcC,aAAasD;AAAAA,IAC3BlD,MAAM;AAAA,EAAA;AAAA,EAERmD,OAAO;AAAA,IACL/D,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAO;AAAA,IACpBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAQ;AAAA,IAC9BG,YAAY;AAAA,IACZC,cAAcC,aAAawD;AAAAA,IAC3BtD,WAAW;AAAA,IACXE,MAAM;AAAA,EAAA;AAAA,EAERqD,eAAe;AAAA,IACbjE,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAgB;AAAA,IAC7BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAiB;AAAA,IACvCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAa0D;AAAAA,IAC3BtD,MAAM;AAAA,EAAA;AAAA,EAERuD,eAAe;AAAA,IACbnE,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAgB;AAAA,IAC7BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAiB;AAAA,IACvCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAa4D;AAAAA,IAC3BxD,MAAM;AAAA,EAAA;AAAA,EAERyD,gBAAgB;AAAA,IACdrE,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAiB;AAAA,IAC9BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAkB;AAAA,IACxCE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAa8D;AAAAA,IAC3B1D,MAAM;AAAA,EAAA;AAAA,EAER2D,cAAc;AAAA,IACZvE,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAsB;AAAA,IACnCC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAuB;AAAA,IAC7CE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZC,cAAcC,aAAagE;AAAAA,IAC3B5D,MAAM;AAAA,EAAA;AAAA,EAER6D,aAAa;AAAA,IACXzE,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAc;AAAA,IAC3BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAe;AAAA,IACrCI,cAAcC,aAAakE;AAAAA,IAC3B9D,MAAM;AAAA,EAAA;AAAA,EAER+D,eAAe;AAAA,IACb3E,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAgB;AAAA,IAC7BC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAiB;AAAA,IACvCE,cAAc;AAAA,IACdE,cAAcC,aAAaoE;AAAAA,IAC3BhE,MAAM;AAAA,EAAA;AAAA,EAERiE,OAAO;AAAA,IACL7E,OAAOA,MAAAC,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAO;AAAA,IACpBC,gBAAgBA,MAAAH,MAAAC;AAAAA;AAAAA,MAAM;AAAA,QAAAC,IAAA;AAAA,MAAA;AAAA,IAAQ;AAAA,IAC9BI,cAAcC,aAAasE;AAAAA,IAC3BzE,cAAc;AAAA,IACdC,YAAY;AAAA,IACZM,MAAM;AAAA,EAAA;AAEV;"}
@@ -3,7 +3,6 @@ export declare enum ModelType {
3
3
  supplierpart = "supplierpart",
4
4
  manufacturerpart = "manufacturerpart",
5
5
  partcategory = "partcategory",
6
- partparametertemplate = "partparametertemplate",
7
6
  parttesttemplate = "parttesttemplate",
8
7
  projectcode = "projectcode",
9
8
  stockitem = "stockitem",
@@ -14,6 +13,8 @@ export declare enum ModelType {
14
13
  buildline = "buildline",
15
14
  builditem = "builditem",
16
15
  company = "company",
16
+ parameter = "parameter",
17
+ parametertemplate = "parametertemplate",
17
18
  purchaseorder = "purchaseorder",
18
19
  purchaseorderlineitem = "purchaseorderlineitem",
19
20
  salesorder = "salesorder",
@@ -3,7 +3,6 @@ var ModelType = /* @__PURE__ */ ((ModelType2) => {
3
3
  ModelType2["supplierpart"] = "supplierpart";
4
4
  ModelType2["manufacturerpart"] = "manufacturerpart";
5
5
  ModelType2["partcategory"] = "partcategory";
6
- ModelType2["partparametertemplate"] = "partparametertemplate";
7
6
  ModelType2["parttesttemplate"] = "parttesttemplate";
8
7
  ModelType2["projectcode"] = "projectcode";
9
8
  ModelType2["stockitem"] = "stockitem";
@@ -14,6 +13,8 @@ var ModelType = /* @__PURE__ */ ((ModelType2) => {
14
13
  ModelType2["buildline"] = "buildline";
15
14
  ModelType2["builditem"] = "builditem";
16
15
  ModelType2["company"] = "company";
16
+ ModelType2["parameter"] = "parameter";
17
+ ModelType2["parametertemplate"] = "parametertemplate";
17
18
  ModelType2["purchaseorder"] = "purchaseorder";
18
19
  ModelType2["purchaseorderlineitem"] = "purchaseorderlineitem";
19
20
  ModelType2["salesorder"] = "salesorder";
@@ -1 +1 @@
1
- {"version":3,"file":"ModelType.js","sources":["../../lib/enums/ModelType.tsx"],"sourcesContent":["/*\n * Enumeration of available API model types\n */\nexport enum ModelType {\n part = 'part',\n supplierpart = 'supplierpart',\n manufacturerpart = 'manufacturerpart',\n partcategory = 'partcategory',\n partparametertemplate = 'partparametertemplate',\n parttesttemplate = 'parttesttemplate',\n projectcode = 'projectcode',\n stockitem = 'stockitem',\n stocklocation = 'stocklocation',\n stocklocationtype = 'stocklocationtype',\n stockhistory = 'stockhistory',\n build = 'build',\n buildline = 'buildline',\n builditem = 'builditem',\n company = 'company',\n purchaseorder = 'purchaseorder',\n purchaseorderlineitem = 'purchaseorderlineitem',\n salesorder = 'salesorder',\n salesordershipment = 'salesordershipment',\n returnorder = 'returnorder',\n returnorderlineitem = 'returnorderlineitem',\n importsession = 'importsession',\n address = 'address',\n contact = 'contact',\n owner = 'owner',\n user = 'user',\n group = 'group',\n reporttemplate = 'reporttemplate',\n labeltemplate = 'labeltemplate',\n pluginconfig = 'pluginconfig',\n contenttype = 'contenttype',\n selectionlist = 'selectionlist',\n error = 'error'\n}\n"],"names":["ModelType","part","supplierpart","manufacturerpart","partcategory","partparametertemplate","parttesttemplate","projectcode","stockitem","stocklocation","stocklocationtype","stockhistory","build","buildline","builditem","company","purchaseorder","purchaseorderlineitem","salesorder","salesordershipment","returnorder","returnorderlineitem","importsession","address","contact","owner","user","group","reporttemplate","labeltemplate","pluginconfig","contenttype","selectionlist","error"],"mappings":"AAGO,IAAKA,8BAAAA,eAAL;AACLC,aAAAA,MAAAA,IAAO;AACPC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,kBAAAA,IAAmB;AACnBC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,uBAAAA,IAAwB;AACxBC,aAAAA,kBAAAA,IAAmB;AACnBC,aAAAA,aAAAA,IAAc;AACdC,aAAAA,WAAAA,IAAY;AACZC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,mBAAAA,IAAoB;AACpBC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,WAAAA,IAAY;AACZC,aAAAA,WAAAA,IAAY;AACZC,aAAAA,SAAAA,IAAU;AACVC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,uBAAAA,IAAwB;AACxBC,aAAAA,YAAAA,IAAa;AACbC,aAAAA,oBAAAA,IAAqB;AACrBC,aAAAA,aAAAA,IAAc;AACdC,aAAAA,qBAAAA,IAAsB;AACtBC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,SAAAA,IAAU;AACVC,aAAAA,SAAAA,IAAU;AACVC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,MAAAA,IAAO;AACPC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,gBAAAA,IAAiB;AACjBC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,aAAAA,IAAc;AACdC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,OAAAA,IAAQ;AAjCEjC,SAAAA;AAAAA,GAAAA,aAAAA,CAAAA,CAAAA;"}
1
+ {"version":3,"file":"ModelType.js","sources":["../../lib/enums/ModelType.tsx"],"sourcesContent":["/*\n * Enumeration of available API model types\n */\nexport enum ModelType {\n part = 'part',\n supplierpart = 'supplierpart',\n manufacturerpart = 'manufacturerpart',\n partcategory = 'partcategory',\n parttesttemplate = 'parttesttemplate',\n projectcode = 'projectcode',\n stockitem = 'stockitem',\n stocklocation = 'stocklocation',\n stocklocationtype = 'stocklocationtype',\n stockhistory = 'stockhistory',\n build = 'build',\n buildline = 'buildline',\n builditem = 'builditem',\n company = 'company',\n parameter = 'parameter',\n parametertemplate = 'parametertemplate',\n purchaseorder = 'purchaseorder',\n purchaseorderlineitem = 'purchaseorderlineitem',\n salesorder = 'salesorder',\n salesordershipment = 'salesordershipment',\n returnorder = 'returnorder',\n returnorderlineitem = 'returnorderlineitem',\n importsession = 'importsession',\n address = 'address',\n contact = 'contact',\n owner = 'owner',\n user = 'user',\n group = 'group',\n reporttemplate = 'reporttemplate',\n labeltemplate = 'labeltemplate',\n pluginconfig = 'pluginconfig',\n contenttype = 'contenttype',\n selectionlist = 'selectionlist',\n error = 'error'\n}\n"],"names":["ModelType","part","supplierpart","manufacturerpart","partcategory","parttesttemplate","projectcode","stockitem","stocklocation","stocklocationtype","stockhistory","build","buildline","builditem","company","parameter","parametertemplate","purchaseorder","purchaseorderlineitem","salesorder","salesordershipment","returnorder","returnorderlineitem","importsession","address","contact","owner","user","group","reporttemplate","labeltemplate","pluginconfig","contenttype","selectionlist","error"],"mappings":"AAGO,IAAKA,8BAAAA,eAAL;AACLC,aAAAA,MAAAA,IAAO;AACPC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,kBAAAA,IAAmB;AACnBC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,kBAAAA,IAAmB;AACnBC,aAAAA,aAAAA,IAAc;AACdC,aAAAA,WAAAA,IAAY;AACZC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,mBAAAA,IAAoB;AACpBC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,WAAAA,IAAY;AACZC,aAAAA,WAAAA,IAAY;AACZC,aAAAA,SAAAA,IAAU;AACVC,aAAAA,WAAAA,IAAY;AACZC,aAAAA,mBAAAA,IAAoB;AACpBC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,uBAAAA,IAAwB;AACxBC,aAAAA,YAAAA,IAAa;AACbC,aAAAA,oBAAAA,IAAqB;AACrBC,aAAAA,aAAAA,IAAc;AACdC,aAAAA,qBAAAA,IAAsB;AACtBC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,SAAAA,IAAU;AACVC,aAAAA,SAAAA,IAAU;AACVC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,MAAAA,IAAO;AACPC,aAAAA,OAAAA,IAAQ;AACRC,aAAAA,gBAAAA,IAAiB;AACjBC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,cAAAA,IAAe;AACfC,aAAAA,aAAAA,IAAc;AACdC,aAAAA,eAAAA,IAAgB;AAChBC,aAAAA,OAAAA,IAAQ;AAlCElC,SAAAA;AAAAA,GAAAA,aAAAA,CAAAA,CAAAA;"}
@@ -1,3 +1,4 @@
1
1
  export declare function isTrue(value: any): boolean;
2
2
  export declare function resolveItem(obj: any, path: string): any;
3
3
  export declare function identifierString(value: string): string;
4
+ export declare function toNumber(value: any, defaultValue?: number | null): number | null;
@@ -1 +1 @@
1
- {"version":3,"file":"Conversion.js","sources":["../../lib/functions/Conversion.tsx"],"sourcesContent":["/*\n * Determine if the provided value is \"true\":\n *\n * Many settings stored on the server are true/false,\n * but stored as string values, \"true\" / \"false\".\n *\n * This function provides a wrapper to ensure that the return type is boolean\n */\nexport function isTrue(value: any): boolean {\n if (value === true) {\n return true;\n }\n\n if (value === false) {\n return false;\n }\n\n const s = String(value).trim().toLowerCase();\n\n return ['true', 'yes', '1', 'on', 't', 'y'].includes(s);\n}\n\n/*\n * Resolve a nested item in an object.\n * Returns the resolved item, if it exists.\n *\n * e.g. resolveItem(data, \"sub.key.accessor\")\n *\n * Allows for retrieval of nested items in an object.\n */\nexport function resolveItem(obj: any, path: string): any {\n const properties = path.split('.');\n return properties.reduce((prev, curr) => prev?.[curr], obj);\n}\n\nexport function identifierString(value: string): string {\n // Convert an input string e.g. \"Hello World\" into a string that can be used as an identifier, e.g. \"hello-world\"\n\n value = value || '-';\n\n return value.toLowerCase().replace(/[^a-z0-9]/g, '-');\n}\n"],"names":["isTrue","value","s","String","trim","toLowerCase","includes","identifierString","replace"],"mappings":"AAQO,SAASA,OAAOC,OAAqB;AAC1C,MAAIA,UAAU,MAAM;AAClB,WAAO;AAAA,EACT;AAEA,MAAIA,UAAU,OAAO;AACnB,WAAO;AAAA,EACT;AAEA,QAAMC,IAAIC,OAAOF,KAAK,EAAEG,KAAAA,EAAOC,YAAAA;AAE/B,SAAO,CAAC,QAAQ,OAAO,KAAK,MAAM,KAAK,GAAG,EAAEC,SAASJ,CAAC;AACxD;AAeO,SAASK,iBAAiBN,OAAuB;AAGtDA,UAAQA,SAAS;AAEjB,SAAOA,MAAMI,YAAAA,EAAcG,QAAQ,cAAc,GAAG;AACtD;"}
1
+ {"version":3,"file":"Conversion.js","sources":["../../lib/functions/Conversion.tsx"],"sourcesContent":["/*\n * Determine if the provided value is \"true\":\n *\n * Many settings stored on the server are true/false,\n * but stored as string values, \"true\" / \"false\".\n *\n * This function provides a wrapper to ensure that the return type is boolean\n */\nexport function isTrue(value: any): boolean {\n if (value === true) {\n return true;\n }\n\n if (value === false) {\n return false;\n }\n\n const s = String(value).trim().toLowerCase();\n\n return ['true', 'yes', '1', 'on', 't', 'y'].includes(s);\n}\n\n/*\n * Resolve a nested item in an object.\n * Returns the resolved item, if it exists.\n *\n * e.g. resolveItem(data, \"sub.key.accessor\")\n *\n * Allows for retrieval of nested items in an object.\n */\nexport function resolveItem(obj: any, path: string): any {\n // Return the top-level object if no path is provided\n if (path == null || path === '') {\n return obj;\n }\n\n const properties = path.split('.');\n return properties.reduce((prev, curr) => prev?.[curr], obj);\n}\n\nexport function identifierString(value: string): string {\n // Convert an input string e.g. \"Hello World\" into a string that can be used as an identifier, e.g. \"hello-world\"\n\n value = value || '-';\n\n return value.toLowerCase().replace(/[^a-z0-9]/g, '-');\n}\n\nexport function toNumber(\n value: any,\n defaultValue: number | null = 0\n): number | null {\n // Convert the provided value into a number (if possible)\n\n if (value == undefined || value == null || value === '') {\n return defaultValue;\n }\n\n // Case 1: numeric already\n if (typeof value === 'number') return value;\n\n // Case 2: react-number-format object\n if (typeof value === 'object') {\n if ('floatValue' in value && typeof value.floatValue === 'number') {\n return value.floatValue;\n }\n if ('value' in value) {\n const parsed = Number(value.value);\n return Number.isNaN(parsed) ? Number.NaN : parsed;\n }\n }\n\n // Case 3: string\n if (typeof value === 'string') {\n const parsed = Number(value);\n return Number.isNaN(parsed) ? Number.NaN : parsed;\n }\n\n return Number.NaN;\n}\n"],"names":["isTrue","value","s","String","trim","toLowerCase","includes","identifierString","replace"],"mappings":"AAQO,SAASA,OAAOC,OAAqB;AAC1C,MAAIA,UAAU,MAAM;AAClB,WAAO;AAAA,EACT;AAEA,MAAIA,UAAU,OAAO;AACnB,WAAO;AAAA,EACT;AAEA,QAAMC,IAAIC,OAAOF,KAAK,EAAEG,KAAAA,EAAOC,YAAAA;AAE/B,SAAO,CAAC,QAAQ,OAAO,KAAK,MAAM,KAAK,GAAG,EAAEC,SAASJ,CAAC;AACxD;AAoBO,SAASK,iBAAiBN,OAAuB;AAGtDA,UAAQA,SAAS;AAEjB,SAAOA,MAAMI,YAAAA,EAAcG,QAAQ,cAAc,GAAG;AACtD;"}
@@ -1,8 +1,7 @@
1
1
  function cancelEvent(event) {
2
- var _a;
3
- event == null ? void 0 : event.preventDefault();
4
- event == null ? void 0 : event.stopPropagation();
5
- (_a = event == null ? void 0 : event.nativeEvent) == null ? void 0 : _a.stopImmediatePropagation();
2
+ event?.preventDefault();
3
+ event?.stopPropagation();
4
+ event?.nativeEvent?.stopImmediatePropagation();
6
5
  }
7
6
  export {
8
7
  cancelEvent
@@ -1 +1 @@
1
- {"version":3,"file":"Events.js","sources":["../../lib/functions/Events.tsx"],"sourcesContent":["// Helper function to cancel event propagation\nexport function cancelEvent(event: any) {\n event?.preventDefault();\n event?.stopPropagation();\n event?.nativeEvent?.stopImmediatePropagation();\n}\n"],"names":["cancelEvent","event","preventDefault","stopPropagation","nativeEvent","stopImmediatePropagation"],"mappings":"AACO,SAASA,YAAYC,OAAY;AAAjC;AACLA,iCAAOC;AACPD,iCAAOE;AACPF,uCAAOG,gBAAPH,mBAAoBI;AACtB;"}
1
+ {"version":3,"file":"Events.js","sources":["../../lib/functions/Events.tsx"],"sourcesContent":["// Helper function to cancel event propagation\nexport function cancelEvent(event: any) {\n event?.preventDefault();\n event?.stopPropagation();\n event?.nativeEvent?.stopImmediatePropagation();\n}\n"],"names":["cancelEvent","event","preventDefault","stopPropagation","nativeEvent","stopImmediatePropagation"],"mappings":"AACO,SAASA,YAAYC,OAAY;AACtCA,SAAOC,eAAAA;AACPD,SAAOE,gBAAAA;AACPF,SAAOG,aAAaC,yBAAAA;AACtB;"}
@@ -1,6 +1,11 @@
1
1
  import { NavigateFunction } from 'react-router-dom';
2
2
  import { ModelType } from '../enums/ModelType';
3
3
  export declare const getBaseUrl: () => string;
4
+ /**
5
+ * Returns the overview URL for a given model type.
6
+ * This is the UI URL, not the API URL.
7
+ */
8
+ export declare function getOverviewUrl(model: ModelType, absolute?: boolean): string;
4
9
  /**
5
10
  * Returns the detail view URL for a given model type.
6
11
  * This is the UI URL, not the API URL.
@@ -1,9 +1,6 @@
1
1
  import { ModelInformationDict } from "../enums/ModelInformation.js";
2
2
  import { cancelEvent } from "./Events.js";
3
- const getBaseUrl = () => {
4
- var _a;
5
- return ((_a = window.INVENTREE_SETTINGS) == null ? void 0 : _a.base_url) || "web";
6
- };
3
+ const getBaseUrl = () => window.INVENTREE_SETTINGS?.base_url || "web";
7
4
  function getDetailUrl(model, pk, absolute) {
8
5
  const modelInfo = ModelInformationDict[model];
9
6
  if (pk === void 0 || pk === null) {
@@ -39,7 +36,7 @@ const navigateToLink = (link, navigate, event) => {
39
36
  }
40
37
  };
41
38
  const eventModified = (event) => {
42
- return (event == null ? void 0 : event.ctrlKey) || (event == null ? void 0 : event.shiftKey) || (event == null ? void 0 : event.metaKey);
39
+ return event?.ctrlKey || event?.shiftKey || event?.metaKey;
43
40
  };
44
41
  export {
45
42
  eventModified,
@@ -1 +1 @@
1
- {"version":3,"file":"Navigation.js","sources":["../../lib/functions/Navigation.tsx"],"sourcesContent":["import type { NavigateFunction } from 'react-router-dom';\nimport { ModelInformationDict } from '../enums/ModelInformation';\nimport type { ModelType } from '../enums/ModelType';\nimport { apiUrl } from './Api';\nimport { cancelEvent } from './Events';\n\nexport const getBaseUrl = (): string =>\n (window as any).INVENTREE_SETTINGS?.base_url || 'web';\n\n/**\n * Returns the detail view URL for a given model type.\n * This is the UI URL, not the API URL.\n */\nexport function getDetailUrl(\n model: ModelType,\n pk: number | string,\n absolute?: boolean\n): string {\n const modelInfo = ModelInformationDict[model];\n\n if (pk === undefined || pk === null) {\n return '';\n }\n\n if (!!pk && modelInfo && modelInfo.url_detail) {\n const url = modelInfo.url_detail.replace(':pk', pk.toString());\n const base = getBaseUrl();\n\n if (absolute && base) {\n return `/${base}${url}`;\n } else {\n return url;\n }\n }\n\n console.error(`No detail URL found for model ${model} <${pk}>`);\n return '';\n}\n\n/**\n * Returns the API detail URL for a given model type.\n */\nexport function getApiUrl(\n model: ModelType,\n pk: number | string\n): string | undefined {\n const modelInfo = ModelInformationDict[model];\n\n if (pk === undefined || pk === null) {\n return '';\n }\n\n if (!!pk && modelInfo && modelInfo.api_endpoint) {\n return apiUrl(modelInfo.api_endpoint, pk);\n }\n\n console.error(`No API detail URL found for model ${model} <${pk}>`);\n return undefined;\n}\n\n/*\n * Navigate to a provided link.\n * - If the link is to be opened externally, open it in a new tab.\n * - Otherwise, navigate using the provided navigate function.\n */\nexport const navigateToLink = (\n link: string,\n navigate: NavigateFunction,\n event: any\n) => {\n cancelEvent(event);\n\n const base = `/${getBaseUrl()}`;\n\n if (eventModified(event)) {\n // Open the link in a new tab\n let url = link;\n if (link.startsWith('/') && !link.startsWith(base)) {\n url = `${base}${link}`;\n }\n window.open(url, '_blank');\n } else {\n // Navigate internally\n let url = link;\n\n if (link.startsWith(base)) {\n // Strip the base URL from the link\n url = link.replace(base, '');\n }\n\n navigate(url);\n }\n};\n\n/**\n * Check if the event is modified (e.g. ctrl, shift, or meta key pressed)\n * @param event - The event to check\n * @returns true if the event was modified\n */\nexport const eventModified = (\n event: React.MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n) => {\n return event?.ctrlKey || event?.shiftKey || event?.metaKey;\n};\n"],"names":["getBaseUrl","window","INVENTREE_SETTINGS","base_url","getDetailUrl","model","pk","absolute","modelInfo","ModelInformationDict","undefined","url_detail","url","replace","toString","base","console","error","navigateToLink","link","navigate","event","cancelEvent","eventModified","startsWith","open","ctrlKey","shiftKey","metaKey"],"mappings":";;AAMO,MAAMA,aAAaA,MAAAA;;AACvBC,uBAAeC,uBAAfD,mBAAmCE,aAAY;AAAA;AAM3C,SAASC,aACdC,OACAC,IACAC,UACQ;AACR,QAAMC,YAAYC,qBAAqBJ,KAAK;AAE5C,MAAIC,OAAOI,UAAaJ,OAAO,MAAM;AACnC,WAAO;AAAA,EACT;AAEA,MAAI,CAAC,CAACA,MAAME,aAAaA,UAAUG,YAAY;AAC7C,UAAMC,MAAMJ,UAAUG,WAAWE,QAAQ,OAAOP,GAAGQ,UAAU;AAC7D,UAAMC,OAAOf,WAAAA;AAEb,QAAIO,YAAYQ,MAAM;AACpB,aAAO,IAAIA,IAAI,GAAGH,GAAG;AAAA,IACvB,OAAO;AACL,aAAOA;AAAAA,IACT;AAAA,EACF;AAEAI,UAAQC,MAAM,iCAAiCZ,KAAK,KAAKC,EAAE,GAAG;AAC9D,SAAO;AACT;AA4BO,MAAMY,iBAAiBA,CAC5BC,MACAC,UACAC,UACG;AACHC,cAAYD,KAAK;AAEjB,QAAMN,OAAO,IAAIf,WAAAA,CAAY;AAE7B,MAAIuB,cAAcF,KAAK,GAAG;AAExB,QAAIT,MAAMO;AACV,QAAIA,KAAKK,WAAW,GAAG,KAAK,CAACL,KAAKK,WAAWT,IAAI,GAAG;AAClDH,YAAM,GAAGG,IAAI,GAAGI,IAAI;AAAA,IACtB;AACAlB,WAAOwB,KAAKb,KAAK,QAAQ;AAAA,EAC3B,OAAO;AAEL,QAAIA,MAAMO;AAEV,QAAIA,KAAKK,WAAWT,IAAI,GAAG;AAEzBH,YAAMO,KAAKN,QAAQE,MAAM,EAAE;AAAA,IAC7B;AAEAK,aAASR,GAAG;AAAA,EACd;AACF;AAOO,MAAMW,gBAAgBA,CAC3BF,UACG;AACH,UAAOA,+BAAOK,aAAWL,+BAAOM,cAAYN,+BAAOO;AACrD;"}
1
+ {"version":3,"file":"Navigation.js","sources":["../../lib/functions/Navigation.tsx"],"sourcesContent":["import type { NavigateFunction } from 'react-router-dom';\nimport { ModelInformationDict } from '../enums/ModelInformation';\nimport type { ModelType } from '../enums/ModelType';\nimport { apiUrl } from './Api';\nimport { cancelEvent } from './Events';\n\nexport const getBaseUrl = (): string =>\n (window as any).INVENTREE_SETTINGS?.base_url || 'web';\n\n/**\n * Returns the overview URL for a given model type.\n * This is the UI URL, not the API URL.\n */\nexport function getOverviewUrl(model: ModelType, absolute?: boolean): string {\n const modelInfo = ModelInformationDict[model];\n\n if (modelInfo?.url_overview) {\n const url = modelInfo.url_overview;\n const base = getBaseUrl();\n\n if (absolute && base) {\n return `/${base}${url}`;\n } else {\n return url;\n }\n }\n\n console.error(`No overview URL found for model ${model}`);\n return '';\n}\n\n/**\n * Returns the detail view URL for a given model type.\n * This is the UI URL, not the API URL.\n */\nexport function getDetailUrl(\n model: ModelType,\n pk: number | string,\n absolute?: boolean\n): string {\n const modelInfo = ModelInformationDict[model];\n\n if (pk === undefined || pk === null) {\n return '';\n }\n\n if (!!pk && modelInfo && modelInfo.url_detail) {\n const url = modelInfo.url_detail.replace(':pk', pk.toString());\n const base = getBaseUrl();\n\n if (absolute && base) {\n return `/${base}${url}`;\n } else {\n return url;\n }\n }\n\n console.error(`No detail URL found for model ${model} <${pk}>`);\n return '';\n}\n\n/**\n * Returns the API detail URL for a given model type.\n */\nexport function getApiUrl(\n model: ModelType,\n pk: number | string\n): string | undefined {\n const modelInfo = ModelInformationDict[model];\n\n if (pk === undefined || pk === null) {\n return '';\n }\n\n if (!!pk && modelInfo && modelInfo.api_endpoint) {\n return apiUrl(modelInfo.api_endpoint, pk);\n }\n\n console.error(`No API detail URL found for model ${model} <${pk}>`);\n return undefined;\n}\n\n/*\n * Navigate to a provided link.\n * - If the link is to be opened externally, open it in a new tab.\n * - Otherwise, navigate using the provided navigate function.\n */\nexport const navigateToLink = (\n link: string,\n navigate: NavigateFunction,\n event: any\n) => {\n cancelEvent(event);\n\n const base = `/${getBaseUrl()}`;\n\n if (eventModified(event)) {\n // Open the link in a new tab\n let url = link;\n if (link.startsWith('/') && !link.startsWith(base)) {\n url = `${base}${link}`;\n }\n window.open(url, '_blank');\n } else {\n // Navigate internally\n let url = link;\n\n if (link.startsWith(base)) {\n // Strip the base URL from the link\n url = link.replace(base, '');\n }\n\n navigate(url);\n }\n};\n\n/**\n * Check if the event is modified (e.g. ctrl, shift, or meta key pressed)\n * @param event - The event to check\n * @returns true if the event was modified\n */\nexport const eventModified = (\n event: React.MouseEvent<HTMLButtonElement | HTMLAnchorElement>\n) => {\n return event?.ctrlKey || event?.shiftKey || event?.metaKey;\n};\n"],"names":["getBaseUrl","window","INVENTREE_SETTINGS","base_url","getDetailUrl","model","pk","absolute","modelInfo","ModelInformationDict","undefined","url_detail","url","replace","toString","base","console","error","navigateToLink","link","navigate","event","cancelEvent","eventModified","startsWith","open","ctrlKey","shiftKey","metaKey"],"mappings":";;AAMO,MAAMA,aAAaA,MACvBC,OAAeC,oBAAoBC,YAAY;AA4B3C,SAASC,aACdC,OACAC,IACAC,UACQ;AACR,QAAMC,YAAYC,qBAAqBJ,KAAK;AAE5C,MAAIC,OAAOI,UAAaJ,OAAO,MAAM;AACnC,WAAO;AAAA,EACT;AAEA,MAAI,CAAC,CAACA,MAAME,aAAaA,UAAUG,YAAY;AAC7C,UAAMC,MAAMJ,UAAUG,WAAWE,QAAQ,OAAOP,GAAGQ,UAAU;AAC7D,UAAMC,OAAOf,WAAAA;AAEb,QAAIO,YAAYQ,MAAM;AACpB,aAAO,IAAIA,IAAI,GAAGH,GAAG;AAAA,IACvB,OAAO;AACL,aAAOA;AAAAA,IACT;AAAA,EACF;AAEAI,UAAQC,MAAM,iCAAiCZ,KAAK,KAAKC,EAAE,GAAG;AAC9D,SAAO;AACT;AA4BO,MAAMY,iBAAiBA,CAC5BC,MACAC,UACAC,UACG;AACHC,cAAYD,KAAK;AAEjB,QAAMN,OAAO,IAAIf,WAAAA,CAAY;AAE7B,MAAIuB,cAAcF,KAAK,GAAG;AAExB,QAAIT,MAAMO;AACV,QAAIA,KAAKK,WAAW,GAAG,KAAK,CAACL,KAAKK,WAAWT,IAAI,GAAG;AAClDH,YAAM,GAAGG,IAAI,GAAGI,IAAI;AAAA,IACtB;AACAlB,WAAOwB,KAAKb,KAAK,QAAQ;AAAA,EAC3B,OAAO;AAEL,QAAIA,MAAMO;AAEV,QAAIA,KAAKK,WAAWT,IAAI,GAAG;AAEzBH,YAAMO,KAAKN,QAAQE,MAAM,EAAE;AAAA,IAC7B;AAEAK,aAASR,GAAG;AAAA,EACd;AACF;AAOO,MAAMW,gBAAgBA,CAC3BF,UACG;AACH,SAAOA,OAAOK,WAAWL,OAAOM,YAAYN,OAAOO;AACrD;"}
@@ -1,15 +1,13 @@
1
1
  import { INVENTREE_PLUGIN_VERSION } from "../types/Plugins.js";
2
2
  function checkPluginVersion(context) {
3
- var _a;
4
- const systemVersion = ((_a = context == null ? void 0 : context.version) == null ? void 0 : _a.inventree) || "";
3
+ const systemVersion = context?.version?.inventree || "";
5
4
  if (INVENTREE_PLUGIN_VERSION != systemVersion) {
6
5
  console.info(`Plugin version mismatch! Expected version ${INVENTREE_PLUGIN_VERSION}, got ${systemVersion}`);
7
6
  }
8
7
  }
9
8
  function initPlugin(context) {
10
- var _a, _b;
11
9
  checkPluginVersion(context);
12
- (_b = (_a = context.i18n) == null ? void 0 : _a.activate) == null ? void 0 : _b.call(_a, context.locale);
10
+ context.i18n?.activate?.(context.locale);
13
11
  }
14
12
  export {
15
13
  checkPluginVersion,
@@ -1 +1 @@
1
- {"version":3,"file":"Plugins.js","sources":["../../lib/functions/Plugins.tsx"],"sourcesContent":["import {\n INVENTREE_PLUGIN_VERSION,\n type InvenTreePluginContext\n} from '../types/Plugins';\n\n/**\n * Check that the plugin version matches the expected version.\n * This is a helper function which only generates a warning if there is a mismatch.\n */\nexport function checkPluginVersion(context: InvenTreePluginContext) {\n const systemVersion: string = context?.version?.inventree || '';\n\n if (INVENTREE_PLUGIN_VERSION != systemVersion) {\n console.info(\n `Plugin version mismatch! Expected version ${INVENTREE_PLUGIN_VERSION}, got ${systemVersion}`\n );\n }\n}\n\n/**\n * Helper function to initialize the plugin context.\n */\nexport function initPlugin(context: InvenTreePluginContext) {\n // Check that the plugin version matches the expected version\n checkPluginVersion(context);\n\n // Activate the i18n context for the current locale\n context.i18n?.activate?.(context.locale);\n}\n"],"names":["checkPluginVersion","context","systemVersion","version","inventree","INVENTREE_PLUGIN_VERSION","console","info","initPlugin","i18n","activate","locale"],"mappings":";AASO,SAASA,mBAAmBC,SAAiC;;AAClE,QAAMC,kBAAwBD,wCAASE,YAATF,mBAAkBG,cAAa;AAE7D,MAAIC,4BAA4BH,eAAe;AAC7CI,YAAQC,KACN,6CAA6CF,wBAAwB,SAASH,aAAa,EAC7F;AAAA,EACF;AACF;AAKO,SAASM,WAAWP,SAAiC;;AAE1DD,qBAAmBC,OAAO;AAG1BA,sBAAQQ,SAARR,mBAAcS,aAAdT,4BAAyBA,QAAQU;AACnC;"}
1
+ {"version":3,"file":"Plugins.js","sources":["../../lib/functions/Plugins.tsx"],"sourcesContent":["import {\n INVENTREE_PLUGIN_VERSION,\n type InvenTreePluginContext\n} from '../types/Plugins';\n\n/**\n * Check that the plugin version matches the expected version.\n * This is a helper function which only generates a warning if there is a mismatch.\n */\nexport function checkPluginVersion(context: InvenTreePluginContext) {\n const systemVersion: string = context?.version?.inventree || '';\n\n if (INVENTREE_PLUGIN_VERSION != systemVersion) {\n console.info(\n `Plugin version mismatch! Expected version ${INVENTREE_PLUGIN_VERSION}, got ${systemVersion}`\n );\n }\n}\n\n/**\n * Helper function to initialize the plugin context.\n */\nexport function initPlugin(context: InvenTreePluginContext) {\n // Check that the plugin version matches the expected version\n checkPluginVersion(context);\n\n // Activate the i18n context for the current locale\n context.i18n?.activate?.(context.locale);\n}\n"],"names":["checkPluginVersion","context","systemVersion","version","inventree","INVENTREE_PLUGIN_VERSION","console","info","initPlugin","i18n","activate","locale"],"mappings":";AASO,SAASA,mBAAmBC,SAAiC;AAClE,QAAMC,gBAAwBD,SAASE,SAASC,aAAa;AAE7D,MAAIC,4BAA4BH,eAAe;AAC7CI,YAAQC,KACN,6CAA6CF,wBAAwB,SAASH,aAAa,EAC7F;AAAA,EACF;AACF;AAKO,SAASM,WAAWP,SAAiC;AAE1DD,qBAAmBC,OAAO;AAG1BA,UAAQQ,MAAMC,WAAWT,QAAQU,MAAM;AACzC;"}
@@ -0,0 +1,10 @@
1
+ import { AxiosInstance } from 'axios';
2
+ /**
3
+ * Hook for monitoring a data output process running on the server
4
+ */
5
+ export default function monitorDataOutput({ api, title, hostname, id }: {
6
+ api: AxiosInstance;
7
+ title: string;
8
+ hostname?: string;
9
+ id?: number;
10
+ }): void;
@@ -0,0 +1,112 @@
1
+ import { j as jsxRuntimeExports } from "../_virtual/jsx-runtime.js";
2
+ import { useQuery } from "../node_modules/@tanstack/react-query/build/modern/useQuery.js";
3
+ import { ProgressBar } from "../components/ProgressBar.js";
4
+ import { ApiEndpoints } from "../enums/ApiEndpoints.js";
5
+ import { apiUrl } from "../functions/Api.js";
6
+ import { useDocumentVisibility } from "../node_modules/@mantine/hooks/esm/use-document-visibility/use-document-visibility.js";
7
+ import IconExclamationCircle from "../node_modules/@tabler/icons-react/dist/esm/icons/IconExclamationCircle.js";
8
+ import IconCircleCheck from "../node_modules/@tabler/icons-react/dist/esm/icons/IconCircleCheck.js";
9
+ const _i18n = window["LinguiCore"].i18n;
10
+ const notifications = window["MantineNotifications"].notifications;
11
+ const showNotification = window["MantineNotifications"].showNotification;
12
+ const useEffect = window["React"].useEffect;
13
+ const useState = window["React"].useState;
14
+ function monitorDataOutput({
15
+ api,
16
+ title,
17
+ hostname,
18
+ id
19
+ }) {
20
+ const visibility = useDocumentVisibility();
21
+ const [loading, setLoading] = useState(false);
22
+ useEffect(() => {
23
+ if (!!id) {
24
+ setLoading(true);
25
+ showNotification({
26
+ id: `data-output-${id}`,
27
+ title,
28
+ loading: true,
29
+ autoClose: false,
30
+ withCloseButton: false,
31
+ message: /* @__PURE__ */ jsxRuntimeExports.jsx(ProgressBar, { size: "lg", value: 0, progressLabel: true })
32
+ });
33
+ } else setLoading(false);
34
+ }, [id, title]);
35
+ useQuery({
36
+ enabled: !!id && loading && visibility === "visible",
37
+ refetchInterval: 500,
38
+ queryKey: ["data-output", id, title],
39
+ queryFn: () => api.get(apiUrl(ApiEndpoints.data_output, id)).then((response) => {
40
+ const data = response?.data ?? {};
41
+ if (!!data.errors || !!data.error) {
42
+ setLoading(false);
43
+ const error = data?.error ?? data?.errors?.error ?? _i18n._(
44
+ /*i18n*/
45
+ {
46
+ id: "gzjOvt"
47
+ }
48
+ );
49
+ notifications.update({
50
+ id: `data-output-${id}`,
51
+ loading: false,
52
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(IconExclamationCircle, {}),
53
+ autoClose: 2500,
54
+ title,
55
+ message: error,
56
+ color: "red"
57
+ });
58
+ } else if (data.complete) {
59
+ setLoading(false);
60
+ notifications.update({
61
+ id: `data-output-${id}`,
62
+ loading: false,
63
+ autoClose: 2500,
64
+ title,
65
+ message: _i18n._(
66
+ /*i18n*/
67
+ {
68
+ id: "TCOQbo"
69
+ }
70
+ ),
71
+ color: "green",
72
+ icon: /* @__PURE__ */ jsxRuntimeExports.jsx(IconCircleCheck, {})
73
+ });
74
+ if (data.output) {
75
+ const url = data.output;
76
+ const base = hostname ?? window.location.hostname;
77
+ const downloadUrl = new URL(url, base);
78
+ window.open(downloadUrl.toString(), "_blank");
79
+ }
80
+ } else {
81
+ notifications.update({
82
+ id: `data-output-${id}`,
83
+ loading: true,
84
+ autoClose: false,
85
+ withCloseButton: false,
86
+ message: /* @__PURE__ */ jsxRuntimeExports.jsx(ProgressBar, { size: "lg", maximum: data.total, value: data.progress, progressLabel: data.total > 0, animated: true })
87
+ });
88
+ }
89
+ return data;
90
+ }).catch(() => {
91
+ setLoading(false);
92
+ notifications.update({
93
+ id: `data-output-${id}`,
94
+ loading: false,
95
+ autoClose: 2500,
96
+ title,
97
+ message: _i18n._(
98
+ /*i18n*/
99
+ {
100
+ id: "gzjOvt"
101
+ }
102
+ ),
103
+ color: "red"
104
+ });
105
+ return {};
106
+ })
107
+ });
108
+ }
109
+ export {
110
+ monitorDataOutput as default
111
+ };
112
+ //# sourceMappingURL=MonitorDataOutput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MonitorDataOutput.js","sources":["../../lib/hooks/MonitorDataOutput.tsx"],"sourcesContent":["import { t } from '@lingui/core/macro';\nimport { useDocumentVisibility } from '@mantine/hooks';\nimport { notifications, showNotification } from '@mantine/notifications';\nimport { IconCircleCheck, IconExclamationCircle } from '@tabler/icons-react';\nimport { useQuery } from '@tanstack/react-query';\nimport type { AxiosInstance } from 'axios';\nimport { useEffect, useState } from 'react';\nimport { ProgressBar } from '../components/ProgressBar';\nimport { ApiEndpoints } from '../enums/ApiEndpoints';\nimport { apiUrl } from '../functions/Api';\n\n/**\n * Hook for monitoring a data output process running on the server\n */\nexport default function monitorDataOutput({\n api,\n title,\n hostname,\n id\n}: {\n api: AxiosInstance;\n title: string;\n hostname?: string;\n id?: number;\n}) {\n const visibility = useDocumentVisibility();\n\n const [loading, setLoading] = useState<boolean>(false);\n\n useEffect(() => {\n if (!!id) {\n setLoading(true);\n showNotification({\n id: `data-output-${id}`,\n title: title,\n loading: true,\n autoClose: false,\n withCloseButton: false,\n message: <ProgressBar size='lg' value={0} progressLabel />\n });\n } else setLoading(false);\n }, [id, title]);\n\n useQuery({\n enabled: !!id && loading && visibility === 'visible',\n refetchInterval: 500,\n queryKey: ['data-output', id, title],\n queryFn: () =>\n api\n .get(apiUrl(ApiEndpoints.data_output, id))\n .then((response) => {\n const data = response?.data ?? {};\n\n if (!!data.errors || !!data.error) {\n setLoading(false);\n\n const error: string =\n data?.error ?? data?.errors?.error ?? t`Process failed`;\n\n notifications.update({\n id: `data-output-${id}`,\n loading: false,\n icon: <IconExclamationCircle />,\n autoClose: 2500,\n title: title,\n message: error,\n color: 'red'\n });\n } else if (data.complete) {\n setLoading(false);\n notifications.update({\n id: `data-output-${id}`,\n loading: false,\n autoClose: 2500,\n title: title,\n message: t`Process completed successfully`,\n color: 'green',\n icon: <IconCircleCheck />\n });\n\n if (data.output) {\n const url = data.output;\n const base = hostname ?? window.location.hostname;\n\n const downloadUrl = new URL(url, base);\n\n window.open(downloadUrl.toString(), '_blank');\n }\n } else {\n notifications.update({\n id: `data-output-${id}`,\n loading: true,\n autoClose: false,\n withCloseButton: false,\n message: (\n <ProgressBar\n size='lg'\n maximum={data.total}\n value={data.progress}\n progressLabel={data.total > 0}\n animated\n />\n )\n });\n }\n\n return data;\n })\n .catch(() => {\n setLoading(false);\n notifications.update({\n id: `data-output-${id}`,\n loading: false,\n autoClose: 2500,\n title: title,\n message: t`Process failed`,\n color: 'red'\n });\n return {};\n })\n });\n}\n"],"names":["monitorDataOutput","api","title","hostname","id","visibility","useDocumentVisibility","loading","setLoading","useState","useEffect","showNotification","autoClose","withCloseButton","message","useQuery","enabled","refetchInterval","queryKey","queryFn","get","apiUrl","ApiEndpoints","data_output","then","response","data","errors","error","_i18n","_","notifications","update","icon","color","complete","output","url","base","window","location","downloadUrl","URL","open","toString","jsx","total","progress","catch"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -18,3 +18,4 @@ export { ProgressBar } from './components/ProgressBar';
18
18
  export { PassFailButton, YesNoButton } from './components/YesNoButton';
19
19
  export { SearchInput } from './components/SearchInput';
20
20
  export { RowViewAction, RowDuplicateAction, RowEditAction, RowDeleteAction, RowCancelAction, RowActions } from './components/RowActions';
21
+ export { default as monitorDataOutput } from './hooks/MonitorDataOutput';
package/dist/index.js CHANGED
@@ -13,6 +13,7 @@ import { ProgressBar } from "./components/ProgressBar.js";
13
13
  import { PassFailButton, YesNoButton } from "./components/YesNoButton.js";
14
14
  import { SearchInput } from "./components/SearchInput.js";
15
15
  import { RowActions, RowCancelAction, RowDeleteAction, RowDuplicateAction, RowEditAction, RowViewAction } from "./components/RowActions.js";
16
+ import { default as default2 } from "./hooks/MonitorDataOutput.js";
16
17
  export {
17
18
  ActionButton,
18
19
  AddItemButton,
@@ -43,6 +44,7 @@ export {
43
44
  getBaseUrl,
44
45
  getDetailUrl,
45
46
  initPlugin,
47
+ default2 as monitorDataOutput,
46
48
  navigateToLink
47
49
  };
48
50
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
@@ -0,0 +1,16 @@
1
+ const useState = window["React"].useState;
2
+ const useEffect = window["React"].useEffect;
3
+ function useDocumentVisibility() {
4
+ const [documentVisibility, setDocumentVisibility] = useState("visible");
5
+ useEffect(() => {
6
+ setDocumentVisibility(document.visibilityState);
7
+ const listener = () => setDocumentVisibility(document.visibilityState);
8
+ document.addEventListener("visibilitychange", listener);
9
+ return () => document.removeEventListener("visibilitychange", listener);
10
+ }, []);
11
+ return documentVisibility;
12
+ }
13
+ export {
14
+ useDocumentVisibility
15
+ };
16
+ //# sourceMappingURL=use-document-visibility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-document-visibility.js","sources":["../../../../../../node_modules/@mantine/hooks/esm/use-document-visibility/use-document-visibility.mjs"],"sourcesContent":["'use client';\nimport { useState, useEffect } from 'react';\n\nfunction useDocumentVisibility() {\n const [documentVisibility, setDocumentVisibility] = useState(\"visible\");\n useEffect(() => {\n setDocumentVisibility(document.visibilityState);\n const listener = () => setDocumentVisibility(document.visibilityState);\n document.addEventListener(\"visibilitychange\", listener);\n return () => document.removeEventListener(\"visibilitychange\", listener);\n }, []);\n return documentVisibility;\n}\n\nexport { useDocumentVisibility };\n//# sourceMappingURL=use-document-visibility.mjs.map\n"],"names":[],"mappings":"AACA,MAAA,WAAA,OAAA,OAAA,EAAA;;AAEA,SAAS,wBAAwB;AAC/B,QAAM,CAAC,oBAAoB,qBAAqB,IAAI,SAAS,SAAS;AACtE,YAAU,MAAM;AACd,0BAAsB,SAAS,eAAe;AAC9C,UAAM,WAAW,MAAM,sBAAsB,SAAS,eAAe;AACrE,aAAS,iBAAiB,oBAAoB,QAAQ;AACtD,WAAO,MAAM,SAAS,oBAAoB,oBAAoB,QAAQ;AAAA,EACxE,GAAG,CAAA,CAAE;AACL,SAAO;AACT;","x_google_ignoreList":[0]}
@@ -0,0 +1,14 @@
1
+ import createReactComponent from "../createReactComponent.js";
2
+ /**
3
+ * @license @tabler/icons-react v3.34.1 - MIT
4
+ *
5
+ * This source code is licensed under the MIT license.
6
+ * See the LICENSE file in the root directory of this source tree.
7
+ */
8
+ const __iconNode = [["path", { "d": "M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0", "key": "svg-0" }], ["path", { "d": "M9 12l2 2l4 -4", "key": "svg-1" }]];
9
+ const IconCircleCheck = createReactComponent("outline", "circle-check", "CircleCheck", __iconNode);
10
+ export {
11
+ __iconNode,
12
+ IconCircleCheck as default
13
+ };
14
+ //# sourceMappingURL=IconCircleCheck.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IconCircleCheck.js","sources":["../../../../../../../node_modules/@tabler/icons-react/dist/esm/icons/IconCircleCheck.mjs"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.34.1 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M9 12l2 2l4 -4\", \"key\": \"svg-1\" }]];\nconst IconCircleCheck = createReactComponent(\"outline\", \"circle-check\", \"CircleCheck\", __iconNode);\n\nexport { __iconNode, IconCircleCheck as default };\n//# sourceMappingURL=IconCircleCheck.mjs.map\n"],"names":[],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASK,MAAC,aAAa,CAAC,CAAC,QAAQ,EAAE,KAAK,8CAA8C,OAAO,QAAO,CAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,kBAAkB,OAAO,SAAS,CAAC;AACnJ,MAAC,kBAAkB,qBAAqB,WAAW,gBAAgB,eAAe,UAAU;","x_google_ignoreList":[0]}