@fleetbase/fleetops-engine 0.4.0 → 0.4.2

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 (207) hide show
  1. package/addon/components/admin/navigator-app.hbs +3 -3
  2. package/addon/components/admin/visibility-controls.hbs +4 -4
  3. package/addon/components/cell/driver-name.hbs +1 -1
  4. package/addon/components/contact-form-panel.hbs +15 -15
  5. package/addon/components/contact-form-panel.js +8 -4
  6. package/addon/components/contact-panel/details.hbs +7 -7
  7. package/addon/components/contact-panel.hbs +2 -2
  8. package/addon/components/display-place.hbs +2 -2
  9. package/addon/components/driver-card.hbs +1 -1
  10. package/addon/components/driver-form-panel.hbs +36 -29
  11. package/addon/components/driver-form-panel.js +6 -2
  12. package/addon/components/driver-panel/details.hbs +10 -10
  13. package/addon/components/driver-panel.hbs +5 -5
  14. package/addon/components/fleet-driver-listing.hbs +5 -5
  15. package/addon/components/fleet-form-panel.hbs +16 -16
  16. package/addon/components/fleet-form-panel.js +5 -1
  17. package/addon/components/fleet-panel/details.hbs +7 -7
  18. package/addon/components/fleet-panel/driver-listing.hbs +5 -5
  19. package/addon/components/fleet-panel/driver-listing.js +6 -0
  20. package/addon/components/fleet-panel/vehicle-listing.hbs +5 -5
  21. package/addon/components/fleet-panel/vehicle-listing.js +6 -0
  22. package/addon/components/fleet-vehicle-listing.hbs +5 -5
  23. package/addon/components/fuel-report-form-panel.hbs +16 -16
  24. package/addon/components/fuel-report-form-panel.js +5 -1
  25. package/addon/components/fuel-report-panel/details.hbs +11 -11
  26. package/addon/components/fuel-report-panel.hbs +3 -3
  27. package/addon/components/global-search.hbs +1 -1
  28. package/addon/components/horizontal-route.hbs +1 -1
  29. package/addon/components/integrated-order-details.hbs +13 -13
  30. package/addon/components/issue-form-panel.hbs +25 -25
  31. package/addon/components/issue-form-panel.js +6 -1
  32. package/addon/components/issue-panel/details.hbs +11 -11
  33. package/addon/components/issue-panel.hbs +3 -3
  34. package/addon/components/layout/fleet-ops-sidebar.hbs +2 -2
  35. package/addon/components/layout/fleet-ops-sidebar.js +28 -12
  36. package/addon/components/live-map-drawer/driver-listing.hbs +1 -1
  37. package/addon/components/live-map-drawer/driver-listing.js +16 -10
  38. package/addon/components/live-map-drawer/place-listing.hbs +1 -1
  39. package/addon/components/live-map-drawer/place-listing.js +12 -7
  40. package/addon/components/live-map-drawer/vehicle-listing.hbs +1 -1
  41. package/addon/components/live-map-drawer/vehicle-listing.js +15 -9
  42. package/addon/components/live-map.hbs +10 -92
  43. package/addon/components/live-map.js +29 -24
  44. package/addon/components/map-container/toolbar/visibility-control-panel.hbs +9 -9
  45. package/addon/components/map-container/toolbar/zones-panel.hbs +10 -10
  46. package/addon/components/map-container/toolbar.hbs +6 -6
  47. package/addon/components/modals/assign-driver.hbs +2 -2
  48. package/addon/components/modals/clone-config-form.hbs +2 -2
  49. package/addon/components/modals/contact-details.hbs +6 -6
  50. package/addon/components/modals/contact-form.hbs +11 -11
  51. package/addon/components/modals/driver-assign-order.hbs +2 -2
  52. package/addon/components/modals/driver-assign-vehicle.hbs +2 -2
  53. package/addon/components/modals/driver-assign-vendor.hbs +2 -2
  54. package/addon/components/modals/driver-details.hbs +14 -14
  55. package/addon/components/modals/driver-form.hbs +18 -18
  56. package/addon/components/modals/edit-meta-form.hbs +2 -2
  57. package/addon/components/modals/entity-form.hbs +16 -16
  58. package/addon/components/modals/entity-meta-field-prompt.hbs +1 -1
  59. package/addon/components/modals/fleet-details.hbs +6 -6
  60. package/addon/components/modals/fleet-form.hbs +8 -8
  61. package/addon/components/modals/fuel-report-details.hbs +9 -9
  62. package/addon/components/modals/fuel-report-form.hbs +8 -8
  63. package/addon/components/modals/group-details.hbs +4 -4
  64. package/addon/components/modals/group-form.hbs +6 -6
  65. package/addon/components/modals/install-prompt.hbs +2 -3
  66. package/addon/components/modals/issue-details.hbs +8 -8
  67. package/addon/components/modals/issue-from.hbs +21 -21
  68. package/addon/components/modals/map-field-form.hbs +2 -2
  69. package/addon/components/modals/map-field-group-form.hbs +1 -1
  70. package/addon/components/modals/map-layer-form.hbs +10 -10
  71. package/addon/components/modals/meta-field-form.hbs +2 -2
  72. package/addon/components/modals/meta-field-group-form.hbs +1 -1
  73. package/addon/components/modals/new-order-config.hbs +4 -4
  74. package/addon/components/modals/order-assign-driver.hbs +2 -2
  75. package/addon/components/modals/order-config-new-status.hbs +1 -1
  76. package/addon/components/modals/order-event.hbs +2 -2
  77. package/addon/components/modals/order-form.hbs +8 -8
  78. package/addon/components/modals/order-import.hbs +8 -8
  79. package/addon/components/modals/order-label.hbs +1 -1
  80. package/addon/components/modals/order-new-activity.hbs +10 -10
  81. package/addon/components/modals/order-route-form.hbs +17 -17
  82. package/addon/components/modals/place-assign-vendor.hbs +2 -2
  83. package/addon/components/modals/place-details.hbs +13 -13
  84. package/addon/components/modals/place-form.hbs +15 -15
  85. package/addon/components/modals/policy-form.hbs +5 -5
  86. package/addon/components/modals/role-form.hbs +3 -3
  87. package/addon/components/modals/select-payment-method.hbs +1 -1
  88. package/addon/components/modals/service-area-form.hbs +8 -8
  89. package/addon/components/modals/set-password.hbs +3 -3
  90. package/addon/components/modals/uninstall-prompt.hbs +2 -3
  91. package/addon/components/modals/user-form.hbs +9 -9
  92. package/addon/components/modals/vehicle-details.hbs +41 -41
  93. package/addon/components/modals/vehicle-form.hbs +73 -73
  94. package/addon/components/modals/vendor-details.hbs +10 -10
  95. package/addon/components/modals/vendor-form.hbs +36 -36
  96. package/addon/components/modals/view-service-area.hbs +1 -1
  97. package/addon/components/modals/zone-form.hbs +6 -6
  98. package/addon/components/order/header.hbs +11 -11
  99. package/addon/components/order/place-card.hbs +2 -2
  100. package/addon/components/order/schedule-card.hbs +6 -6
  101. package/addon/components/order/schedule-card.js +11 -7
  102. package/addon/components/order-config/activity-flow-editor.hbs +14 -14
  103. package/addon/components/order-config/activity-flow-editor.js +11 -11
  104. package/addon/components/order-config/details-editor.hbs +9 -9
  105. package/addon/components/order-config/entities-editor.hbs +13 -13
  106. package/addon/components/order-config/entities-editor.js +2 -2
  107. package/addon/components/order-config/fields-editor.hbs +14 -14
  108. package/addon/components/order-config/fields-editor.js +13 -12
  109. package/addon/components/order-config.hbs +9 -9
  110. package/addon/components/order-config.js +12 -11
  111. package/addon/components/order-list-overlay.hbs +14 -14
  112. package/addon/components/place-form-panel.hbs +18 -18
  113. package/addon/components/place-form-panel.js +6 -1
  114. package/addon/components/place-panel/details.hbs +10 -10
  115. package/addon/components/place-panel.hbs +2 -2
  116. package/addon/components/route-list.hbs +2 -2
  117. package/addon/components/settings-window.hbs +5 -5
  118. package/addon/components/settings-window.js +2 -1
  119. package/addon/components/vehicle-form-panel.hbs +27 -27
  120. package/addon/components/vehicle-form-panel.js +8 -3
  121. package/addon/components/vehicle-panel/details.hbs +7 -7
  122. package/addon/components/vehicle-panel.hbs +4 -4
  123. package/addon/components/vendor-form-panel/create-form.hbs +34 -33
  124. package/addon/components/vendor-form-panel/create-form.js +6 -2
  125. package/addon/components/vendor-form-panel/edit-form.hbs +27 -27
  126. package/addon/components/vendor-form-panel/edit-form.js +1 -0
  127. package/addon/components/vendor-form-panel.hbs +6 -6
  128. package/addon/components/vendor-form-panel.js +7 -2
  129. package/addon/components/vendor-panel/details.hbs +10 -10
  130. package/addon/components/vendor-panel.hbs +3 -3
  131. package/addon/components/widget/fleet-ops-quickstart.hbs +2 -2
  132. package/addon/components/widget/fleet-ops-quickstart.js +1 -0
  133. package/addon/components/widget/key-metrics.hbs +12 -12
  134. package/addon/components/widget/live-order-map.hbs +4 -4
  135. package/addon/components/widget/recent-orders.hbs +4 -4
  136. package/addon/components/widget/transactions.hbs +4 -4
  137. package/addon/controllers/management/contacts/index/edit.js +10 -3
  138. package/addon/controllers/management/contacts/index/new.js +7 -0
  139. package/addon/controllers/management/contacts/index.js +23 -16
  140. package/addon/controllers/management/drivers/index/edit.js +10 -3
  141. package/addon/controllers/management/drivers/index/new.js +7 -0
  142. package/addon/controllers/management/drivers/index.js +33 -19
  143. package/addon/controllers/management/fleets/index/edit.js +10 -3
  144. package/addon/controllers/management/fleets/index/new.js +7 -0
  145. package/addon/controllers/management/fleets/index.js +24 -17
  146. package/addon/controllers/management/fuel-reports/index/edit.js +10 -3
  147. package/addon/controllers/management/fuel-reports/index/new.js +7 -0
  148. package/addon/controllers/management/fuel-reports/index.js +20 -13
  149. package/addon/controllers/management/issues/index/edit.js +10 -3
  150. package/addon/controllers/management/issues/index/new.js +8 -0
  151. package/addon/controllers/management/issues/index.js +22 -15
  152. package/addon/controllers/management/places/index/edit.js +10 -3
  153. package/addon/controllers/management/places/index/new.js +7 -0
  154. package/addon/controllers/management/places/index.js +27 -20
  155. package/addon/controllers/management/vehicles/index/edit.js +10 -3
  156. package/addon/controllers/management/vehicles/index/new.js +7 -0
  157. package/addon/controllers/management/vehicles/index.js +22 -15
  158. package/addon/controllers/management/vendors/index/edit.js +10 -3
  159. package/addon/controllers/management/vendors/index/new.js +7 -0
  160. package/addon/controllers/management/vendors/index.js +23 -16
  161. package/addon/controllers/operations/orders/index/new.js +127 -30
  162. package/addon/controllers/operations/orders/index/view.js +57 -20
  163. package/addon/controllers/operations/orders/index.js +34 -27
  164. package/addon/controllers/operations/scheduler/index.js +3 -2
  165. package/addon/controllers/operations/service-rates/index/edit.js +1 -12
  166. package/addon/controllers/operations/service-rates/index/new.js +9 -1
  167. package/addon/controllers/operations/service-rates/index.js +16 -9
  168. package/addon/routes/application.js +5 -2
  169. package/addon/routes/management/places/index.js +1 -1
  170. package/addon/routes/operations/orders/index/view.js +2 -14
  171. package/addon/services/driver-actions.js +9 -8
  172. package/addon/services/vehicle-actions.js +2 -1
  173. package/addon/styles/fleetops-engine.css +6 -0
  174. package/addon/templates/management/contacts/index.hbs +6 -6
  175. package/addon/templates/management/drivers/index.hbs +6 -6
  176. package/addon/templates/management/fleets/index.hbs +6 -6
  177. package/addon/templates/management/fuel-reports/index.hbs +7 -7
  178. package/addon/templates/management/index.hbs +17 -17
  179. package/addon/templates/management/issues/index.hbs +6 -6
  180. package/addon/templates/management/places/index.hbs +6 -6
  181. package/addon/templates/management/vehicles/index.hbs +6 -6
  182. package/addon/templates/management/vendors/index.hbs +6 -6
  183. package/addon/templates/operations/orders/index/config/types.hbs +3 -3
  184. package/addon/templates/operations/orders/index/config.hbs +3 -4
  185. package/addon/templates/operations/orders/index/new.hbs +73 -73
  186. package/addon/templates/operations/orders/index/view.hbs +147 -53
  187. package/addon/templates/operations/orders/index.hbs +13 -13
  188. package/addon/templates/operations/scheduler/index.hbs +3 -3
  189. package/addon/templates/operations/service-rates/index/new.hbs +79 -81
  190. package/addon/templates/operations/service-rates/index.hbs +6 -6
  191. package/composer.json +2 -2
  192. package/extension.json +1 -1
  193. package/package.json +4 -2
  194. package/server/resources/views/labels/default.php +40 -18
  195. package/server/resources/views/labels/waypoint-label.php +126 -0
  196. package/server/src/Http/Controllers/Api/v1/DriverController.php +4 -1
  197. package/server/src/Http/Controllers/Api/v1/OrderController.php +1 -1
  198. package/server/src/Http/Resources/v1/Entity.php +2 -2
  199. package/server/src/Http/Resources/v1/Payload.php +11 -30
  200. package/server/src/Http/Resources/v1/Place.php +3 -3
  201. package/server/src/Http/Resources/v1/Waypoint.php +101 -0
  202. package/server/src/Models/Entity.php +1 -1
  203. package/server/src/Models/Payload.php +39 -0
  204. package/server/src/Models/Place.php +5 -2
  205. package/server/src/Models/Proof.php +1 -1
  206. package/server/src/Models/Waypoint.php +15 -3
  207. package/translations/en-us.yaml +1343 -3
@@ -11,15 +11,15 @@
11
11
  </div>
12
12
  <div class="grid grid-cols-1 md:grid-cols-3 gap-2 text-xs dark:text-gray-100">
13
13
  <div class="field-info-container">
14
- <div class="field-name">Sandbox</div>
14
+ <div class="field-name">{{t "fleet-ops.component.modals.vendor-details.sandbox"}}</div>
15
15
  <div class="field-value">{{if @options.vendor.sandbox "Yes" "No"}}</div>
16
16
  </div>
17
17
  <div class="field-info-container">
18
- <div class="field-name">Host</div>
18
+ <div class="field-name">{{t "fleet-ops.component.modals.vendor-details.host"}}</div>
19
19
  <div class="field-value">{{n-a @options.vendor.host}}</div>
20
20
  </div>
21
21
  <div class="field-info-container">
22
- <div class="field-name">Namespace</div>
22
+ <div class="field-name">{{t "fleet-ops.component.modals.vendor-details.namespace"}}</div>
23
23
  <div class="field-value">{{n-a @options.vendor.namespace}}</div>
24
24
  </div>
25
25
  {{#if (is-object @options.vendor.options)}}
@@ -34,41 +34,41 @@
34
34
  {{else}}
35
35
  <div class="grid grid-cols-3 md:grid-cols-2 gap-2 text-xs dark:text-gray-100">
36
36
  <div class="field-info-container">
37
- <div class="field-name">Name</div>
37
+ <div class="field-name">{{t "fleet-ops.common.name"}}</div>
38
38
  <div class="field-value">{{n-a @options.vendor.name}}</div>
39
39
  </div>
40
40
 
41
41
  <div class="field-info-container">
42
- <div class="field-name">Email</div>
42
+ <div class="field-name">{{t "fleet-ops.common.email"}}</div>
43
43
  <div class="field-value">{{n-a @options.vendor.email}}</div>
44
44
  </div>
45
45
 
46
46
  <div class="field-info-container">
47
- <div class="field-name">Phone</div>
47
+ <div class="field-name">{{t "fleet-ops.common.phone"}}</div>
48
48
  <div class="field-value">{{n-a @options.vendor.phone}}</div>
49
49
  </div>
50
50
 
51
51
  <div class="field-info-container">
52
- <div class="field-name">Website URL</div>
52
+ <div class="field-name">{{t "fleet-ops.common.website-url"}}</div>
53
53
  <div class="field-value">{{n-a @options.vendor.website_url}}</div>
54
54
  </div>
55
55
 
56
56
  <div class="field-info-container">
57
- <div class="field-name">Country</div>
57
+ <div class="field-name">{{t "fleet-ops.common.country"}}</div>
58
58
  <div class="field-value">
59
59
  <CountryName @country={{@options.vendor.country}} @showFlag={{true}} />
60
60
  </div>
61
61
  </div>
62
62
 
63
63
  <div class="field-info-container">
64
- <div class="field-name">Status</div>
64
+ <div class="field-name">{{t "fleet-ops.common.status"}}</div>
65
65
  <div class="field-value">
66
66
  <Badge @status={{@options.vendor.status}} />
67
67
  </div>
68
68
  </div>
69
69
 
70
70
  <div class="field-info-container">
71
- <div class="field-name">Address</div>
71
+ <div class="field-name">{{t "fleet-ops.common.address"}}</div>
72
72
  <div class="field-value">{{n-a @options.vendor.address}}</div>
73
73
  </div>
74
74
  </div>
@@ -8,7 +8,7 @@
8
8
  <FaIcon @icon="handshake" @size="xl" class="text-blue-500" />
9
9
  </div>
10
10
  <div>
11
- <span class="text-gray-900 dark:text-gray-100 text-lg">Choose Integrated Vendor</span>
11
+ <span class="text-gray-900 dark:text-gray-100 text-lg">{{t "fleet-ops.component.modals.vendor-form.choose-vendor"}}</span>
12
12
  </div>
13
13
  </button>
14
14
  <button type="button" class="outline-none flex-1 rounded-lg bg-white dark:bg-gray-900 border-2 border-transparent px-4 py-2 flex items-center justify-center {{if (eq @options.action "create") 'border-blue-500'}}" {{on "click" (fn (mut @options.action) "create")}}>
@@ -16,7 +16,7 @@
16
16
  <FaIcon @icon="building" @size="xl" class="text-blue-500" />
17
17
  </div>
18
18
  <div>
19
- <span class="text-gray-900 dark:text-gray-100 text-lg">Create Custom Vendor</span>
19
+ <span class="text-gray-900 dark:text-gray-100 text-lg">{{t "fleet-ops.component.modals.vendor-form.create-vendor"}}</span>
20
20
  </div>
21
21
  </button>
22
22
  </div>
@@ -39,38 +39,38 @@
39
39
 
40
40
  {{#if @options.selectedIntegratedVendor}}
41
41
  <div class="mb-2">
42
- <label class="mb-2 block dark:text-gray-400 text-xs">Credentials</label>
42
+ <label class="mb-2 block dark:text-gray-400 text-xs">{{t "fleet-ops.component.modals.vendor-form.credentials"}}</label>
43
43
  {{#each @options.selectedIntegratedVendor.credential_params as |param|}}
44
- <InputGroup @name={{smart-humanize param.key}} @value={{mut (get @options.integratedVendor.credentials param.key)}} @helpText={{concat "Optionally supply your own " (smart-humanize param.key) " to configure this vendor."}} />
44
+ <InputGroup @name={{smart-humanize param.key}} @value={{mut (get @options.integratedVendor.credentials param.key)}} @helpText={{concat (t "fleet-ops.component.modals.vendor-form.optionally") (smart-humanize param.key) (t "fleet-ops.component.modals.vendor-form.configure-vendor")}} />
45
45
  {{/each}}
46
46
  </div>
47
47
  <div class="mb-2">
48
- <label class="mb-2 block dark:text-gray-400 text-xs">Options</label>
48
+ <label class="mb-2 block dark:text-gray-400 text-xs">{{t "fleet-ops.component.modals.vendor-form.options"}}</label>
49
49
  {{#each @options.selectedIntegratedVendor.option_params as |param|}}
50
50
  {{#if param.options}}
51
51
  <InputGroup @name={{smart-humanize param.key}}>
52
- <Select @value={{mut (get @options.integratedVendor.options param.key)}} @options={{param.options}} @optionValue={{param.optionValue}} @optionLabel={{param.optionLabel}} @humanize={{true}} @placeholder={{concat "Select " (smart-humanize param.key)}} @onSelect={{fn (mut (get @options.integratedVendor.options param.key))}} />
52
+ <Select @value={{mut (get @options.integratedVendor.options param.key)}} @options={{param.options}} @optionValue={{param.optionValue}} @optionLabel={{param.optionLabel}} @humanize={{true}} @placeholder={{concat (t "fleet-ops.component.modals.vendor-form.select") (smart-humanize param.key)}} @onSelect={{fn (mut (get @options.integratedVendor.options param.key))}} />
53
53
  </InputGroup>
54
54
  {{else}}
55
- <InputGroup @name={{smart-humanize param.key}} @value={{mut (get @options.integratedVendor.options param.key)}} @helpText={{concat "Optionally supply your own " (smart-humanize param.key) " to configure this vendor."}} />
55
+ <InputGroup @name={{smart-humanize param.key}} @value={{mut (get @options.integratedVendor.options param.key)}} @helpText={{concat (t "fleet-ops.component.modals.vendor-form.optionally") (smart-humanize param.key) (t "fleet-ops.component.modals.vendor-form.configure-vendor")}} />
56
56
  {{/if}}
57
57
  {{/each}}
58
58
  </div>
59
59
  <InputGroup @wrapperClass="mb-2">
60
- <Checkbox @value={{@options.integratedVendor.sandbox}} @label="Sandbox" @onToggle={{fn (mut @options.integratedVendor.sandbox)}} @alignItems="center" @labelClass="mb-0i" />
60
+ <Checkbox @value={{@options.integratedVendor.sandbox}} @label={{t "fleet-ops.component.modals.vendor-form.sandbox"}} @onToggle={{fn (mut @options.integratedVendor.sandbox)}} @alignItems="center" @labelClass="mb-0i" />
61
61
  </InputGroup>
62
62
  <div>
63
63
  <button type="button" class="btn-link text-xs outline-none text-blue-600 hover:text-blue-600 mb-3" {{on "click" @options.toggleAdvancedOptions}}>
64
64
  {{#if @options.showAdvancedOptions}}
65
- <span>Hide Advanced</span>
65
+ <span>{{t "fleet-ops.component.modals.vendor-form.hide-advanced"}}</span>
66
66
  {{else}}
67
- <span>Show Advanced</span>
67
+ <span>{{t "fleet-ops.component.modals.vendor-form.show-advanced"}}</span>
68
68
  {{/if}}
69
69
  </button>
70
70
  {{#if @options.showAdvancedOptions}}
71
- <InputGroup @name="Custom Host" @value={{@options.integratedVendor.host}} @helpText="Optionally provide a custom host that should be used for this integration." />
72
- <InputGroup @name="Custom Namespace" @value={{@options.integratedVendor.namespace}} @helpText="Optionally provide a custom namespace or api version that should be used for the integration." />
73
- <InputGroup @name="Webhook URL" @value={{@options.integratedVendor.webhook_url}} @helpText="Integrated vendors will typically require this so that Fleetbase can receive activity updates on the order. Do not change unless you know what you are doing! Changing this may break your order updates!" />
71
+ <InputGroup @name={{t "fleet-ops.component.modals.vendor-form.custom-host"}} @value={{@options.integratedVendor.host}} @helpText={{t "fleet-ops.component.modals.vendor-form.host-text"}} />
72
+ <InputGroup @name={{t "fleet-ops.component.modals.vendor-form.custom-namespace"}} @value={{@options.integratedVendor.namespace}} @helpText={{t "fleet-ops.component.modals.vendor-form.namespace-text"}} />
73
+ <InputGroup @name={{t "fleet-ops.component.modals.vendor-form.webhook"}} @value={{@options.integratedVendor.webhook_url}} @helpText={{t "fleet-ops.component.modals.vendor-form.webhook-text"}} />
74
74
  {{/if}}
75
75
  </div>
76
76
  {{/if}}
@@ -85,35 +85,35 @@
85
85
  </div>
86
86
  </div>
87
87
  <div class="mb-2">
88
- <label class="mb-2 block dark:text-gray-400 text-xs">Credentials</label>
88
+ <label class="mb-2 block dark:text-gray-400 text-xs">{{t "fleet-ops.component.modals.vendor-form.credentials"}}</label>
89
89
  {{#if @options.isEditingCredentials}}
90
90
  {{#each @options.vendor.provider_settings.credential_params as |param|}}
91
- <InputGroup @name={{smart-humanize param.key}} @value={{mut (get @options.vendor.credentials param.key)}} @helpText={{concat "Optionally supply your own " (smart-humanize param.key) " to configure this vendor."}} />
91
+ <InputGroup @name={{smart-humanize param.key}} @value={{mut (get @options.vendor.credentials param.key)}} @helpText={{concat (t "fleet-ops.component.modals.vendor-form.optionally") (smart-humanize param.key) (t "fleet-ops.component.modals.vendor-form.configure-vendor")}} />
92
92
  {{/each}}
93
93
  <div class="my-4">
94
- <Button @text="Cancel credentials reset" @type="danger" @size="sm" @icon="times" @onClick={{@options.toggleCredentialsReset}} />
94
+ <Button @text={{t "fleet-ops.component.modals.vendor-form.cancel-credentials"}} @type="danger" @size="sm" @icon="times" @onClick={{@options.toggleCredentialsReset}} />
95
95
  </div>
96
96
  {{else}}
97
97
  <div>
98
98
  <div class="rounded-md border border-blue-300 dark:border-blue-600 bg-blue-100 dark:bg-blue-500 text-blue-900 dark:text-white text-sm px-4 py-2 mb-4">
99
- <p class="mb-2">Sensitive credentials can only be reset, to update credentials you must re-enter the credentials.</p>
99
+ <p class="mb-2">{{t "fleet-ops.component.modals.vendor-form.reset-message"}}</p>
100
100
  <Button @type="default" @size="xs" @icon="repeat" @text="Click here to reset" @onClick={{@options.toggleCredentialsReset}} />
101
101
  </div>
102
102
  </div>
103
103
  {{#each @options.vendor.provider_settings.credential_params as |param|}}
104
- <InputGroup @name={{smart-humanize param.key}} @value="*********" @disabled="true" @helpText={{concat "Optionally supply your own " (smart-humanize param.key) " to configure this vendor."}} />
104
+ <InputGroup @name={{smart-humanize param.key}} @value="*********" @disabled="true" @helpText={{concat (t "fleet-ops.component.modals.vendor-form.optionally") (smart-humanize param.key) (t "fleet-ops.component.modals.vendor-form.configure-vendor")}} />
105
105
  {{/each}}
106
106
  {{/if}}
107
107
  </div>
108
108
  <div class="mb-2">
109
- <label class="mb-2 block dark:text-gray-400 text-xs">Options</label>
109
+ <label class="mb-2 block dark:text-gray-400 text-xs">{{t "fleet-ops.component.modals.vendor-form.options"}}</label>
110
110
  {{#each @options.vendor.provider_settings.option_params as |param|}}
111
111
  {{#if param.options}}
112
112
  <InputGroup @name={{smart-humanize param.key}}>
113
- <Select @value={{mut (get @options.vendor.options param.key)}} @options={{param.options}} @optionValue={{param.optionValue}} @optionLabel={{param.optionLabel}} @humanize={{true}} @placeholder={{concat "Select " (smart-humanize param.key)}} @onSelect={{fn (mut (get @options.vendor.options param.key))}} />
113
+ <Select @value={{mut (get @options.vendor.options param.key)}} @options={{param.options}} @optionValue={{param.optionValue}} @optionLabel={{param.optionLabel}} @humanize={{true}} @placeholder={{concat (t "fleet-ops.component.modals.vendor-form.select") (smart-humanize param.key)}} @onSelect={{fn (mut (get @options.vendor.options param.key))}} />
114
114
  </InputGroup>
115
115
  {{else}}
116
- <InputGroup @name={{smart-humanize param.key}} @value={{mut (get @options.vendor.options param.key)}} @helpText={{concat "Optionally supply your own " (smart-humanize param.key) " to configure this vendor."}} />
116
+ <InputGroup @name={{smart-humanize param.key}} @value={{mut (get @options.vendor.options param.key)}} @helpText={{concat (t "fleet-ops.component.modals.vendor-form.optionally") (smart-humanize param.key) (t "fleet-ops.component.modals.vendor-form.configure-vendor")}} />
117
117
  {{/if}}
118
118
  {{/each}}
119
119
  </div>
@@ -123,43 +123,43 @@
123
123
  <div>
124
124
  <button type="button" class="btn-link text-xs outline-none text-blue-600 hover:text-blue-600 mb-3" {{on "click" @options.toggleAdvancedOptions}}>
125
125
  {{#if @options.showAdvancedOptions}}
126
- <span>Hide Advanced</span>
126
+ <span>{{t "fleet-ops.component.modals.vendor-form.hide-advanced"}}</span>
127
127
  {{else}}
128
- <span>Show Advanced</span>
128
+ <span>{{t "fleet-ops.component.modals.vendor-form.show-advanced"}}</span>
129
129
  {{/if}}
130
130
  </button>
131
131
  {{#if @options.showAdvancedOptions}}
132
- <InputGroup @name="Custom Host" @value={{@options.vendor.host}} @helpText="Optionally provide a custom host that should be used for this integration." />
133
- <InputGroup @name="Custom Namespace" @value={{@options.vendor.namespace}} @helpText="Optionally provide a custom namespace or api version that should be used for the integration." />
134
- <InputGroup @name="Webhook URL" @value={{@options.vendor.webhook_url}} @helpText="Integrated vendors will typically require this so that Fleetbase can receive activity updates on the order. Do not change unless you know what you are doing! Changing this may break your order updates!" />
132
+ <InputGroup @name={{t "fleet-ops.component.modals.vendor-form.custom-host"}} @value={{@options.vendor.host}} @helpText={{t "fleet-ops.component.modals.vendor-form.host-text"}} />
133
+ <InputGroup @name={{t "fleet-ops.component.modals.vendor-form.custom-namespace"}} @value={{@options.vendor.namespace}} @helpText={{t "fleet-ops.component.modals.vendor-form.namespace-text"}} />
134
+ <InputGroup @name={{t "fleet-ops.component.modals.vendor-form.webhook"}} @value={{@options.vendor.webhook_url}} @helpText={{t "fleet-ops.component.modals.vendor-form.webhook-text"}} />
135
135
  {{/if}}
136
136
  </div>
137
137
  {{else}}
138
138
  <div class="grid lg:grid-cols-2 grid-cols-1 gap-2 text-xs dark:text-gray-100">
139
- <InputGroup @name="Name" @value={{@options.vendor.name}} @wrapperClass="mb-0" @helpText="The vendor's name, typically the name of a business." />
140
- <InputGroup @name="Email" @type="email" @value={{@options.vendor.email}} @wrapperClass="mb-0" @helpText="The vendor's email, this can be used to trigger emails to the vendor." />
141
- <InputGroup @name="Phone" @type="tel" @value={{@options.vendor.phone}} @wrapperClass="mb-0" @helpText="The vendor's phone #, this can be used to trigger SMS or messages to the vendor." />
142
- <InputGroup @name="Website" @value={{@options.vendor.website}} @wrapperClass="mb-0" @helpText="The vendor's website, optionally add the vendors website for reference." />
139
+ <InputGroup @name={{t "fleet-ops.common.name"}} @value={{@options.vendor.name}} @wrapperClass="mb-0" @helpText={{t "fleet-ops.component.modals.vendor-form.name-text"}} />
140
+ <InputGroup @name={{t "fleet-ops.common.email"}} @type="email" @value={{@options.vendor.email}} @wrapperClass="mb-0" @helpText={{t "fleet-ops.component.modals.vendor-form.email-text"}} />
141
+ <InputGroup @name={{t "fleet-ops.common.phone"}} @type="tel" @value={{@options.vendor.phone}} @wrapperClass="mb-0" @helpText={{t "fleet-ops.component.modals.vendor-form.phone-text"}} />
142
+ <InputGroup @name={{t "fleet-ops.common.website"}} @value={{@options.vendor.website}} @wrapperClass="mb-0" @helpText={{t "fleet-ops.component.modals.vendor-form.website-text"}} />
143
143
  <InputGroup @wrapperClass="mb-0 col-span-2">
144
144
  <div class="flex items-start justify-between">
145
145
  <label>
146
- Address
146
+ {{t "fleet-ops.common.address"}}
147
147
  </label>
148
148
  <div class="mb-1.5 flex flex-row">
149
149
  {{#if @options.vendor.has_place}}
150
- <Button @type="default" @size="xs" @icon="edit" @text="Edit" @onClick={{@options.editAddress}} />
150
+ <Button @type="default" @size="xs" @icon="edit" @text={{t "fleet-ops.common.edit"}} @onClick={{@options.editAddress}} />
151
151
  {{/if}}
152
- <Button @type="default" @size="xs" @icon="plus" @text="New" @onClick={{@options.newAddress}} />
152
+ <Button @type="default" @size="xs" @icon="plus" @text={{t "fleet-ops.common.new"}} @onClick={{@options.newAddress}} />
153
153
  </div>
154
154
  </div>
155
155
 
156
- <ModelSelect @modelName="place" @selectedModel={{@options.vendor.place}} @placeholder="Select Address" @triggerClass="form-select form-input" @infiniteScroll={{false}} @renderInPlace={{true}} @onChange={{@options.selectAddress}} as |model|>
156
+ <ModelSelect @modelName="place" @selectedModel={{@options.vendor.place}} @placeholder={{t "fleet-ops.component.modals.vendor-form.select-address"}} @triggerClass="form-select form-input" @infiniteScroll={{false}} @renderInPlace={{true}} @onChange={{@options.selectAddress}} as |model|>
157
157
  {{model.name}} - {{model.street1}}
158
158
  </ModelSelect>
159
159
  </InputGroup>
160
160
 
161
- <InputGroup @name="Country" @wrapperClass="mb-0">
162
- <CountrySelect class="w-full form-input form-select form-datalist" @value={{@options.vendor.country}} @onChange={{fn (mut @options.vendor.country)}} placeholder="Country" />
161
+ <InputGroup @name={{t "fleet-ops.common.country"}} @wrapperClass="mb-0">
162
+ <CountrySelect class="w-full form-input form-select form-datalist" @value={{@options.vendor.country}} @onChange={{fn (mut @options.vendor.country)}} placeholder={{t "fleet-ops.common.country"}} />
163
163
  </InputGroup>
164
164
  </div>
165
165
  {{/if}}
@@ -4,7 +4,7 @@
4
4
  <layers.tile @url={{this.tileSourceUrl}} />
5
5
  {{#if @options.serviceArea}}
6
6
  <layers.polygon @id={{@options.serviceArea.id}} @record={{@options.serviceArea}} @locations={{@options.serviceArea.bounds}} @fillColor={{@options.serviceArea.color}} @color={{@options.serviceArea.stroke_color}} @onAdd={{fn this.onServiceAreaAdded @options.serviceArea}} as |polygon|>
7
- <polygon.tooltip @permanent={{true}} @sticky={{true}}>{{@options.serviceArea.name}} Service Area</polygon.tooltip>
7
+ <polygon.tooltip @permanent={{true}} @sticky={{true}}>{{@options.serviceArea.name}} {{t "fleet-ops.common.service-area"}}</polygon.tooltip>
8
8
  </layers.polygon>
9
9
  {{/if}}
10
10
  </LeafletMap>
@@ -1,16 +1,16 @@
1
1
  <Modal::Default @modalIsOpened={{@modalIsOpened}} @options={{@options}} @confirm={{@onConfirm}} @decline={{@onDecline}}>
2
2
  <div class="modal-body-container">
3
3
  <div class="input-group">
4
- <InputLabel @labelText="Zone Name" @helpText="Set a display name for the zone." @required={{true}} />
5
- <Input @value={{@options.zone.name}} @type="text" class="w-full form-input" placeholder="Zone Name" />
4
+ <InputLabel @labelText={{t "fleet-ops.component.modals.zone-form.name"}} @helpText={{t "fleet-ops.component.modals.zone-form.name-text"}} @required={{true}} />
5
+ <Input @value={{@options.zone.name}} @type="text" class="w-full form-input" placeholder={{t "fleet-ops.component.modals.zone-form.name"}} />
6
6
  </div>
7
7
 
8
- <InputGroup @type="color" @value={{@options.zone.stroke_color}} @name="Zone Border Color" @helpText="Customize the border color for this zone." class="p-0 border-0 m-0 w-8 h-8 bg-transparent rounded-none" />
9
- <InputGroup @type="color" @value={{@options.zone.color}} @name="Zone Color" @helpText="Customize the fill color for this zone." class="p-0 border-0 m-0 w-8 h-8 bg-transparent rounded-none" />
8
+ <InputGroup @type="color" @value={{@options.zone.stroke_color}} @name={{t "fleet-ops.component.modals.zone-form.border-color"}} @helpText={{t "fleet-ops.component.modals.zone-form.customize-border"}} class="p-0 border-0 m-0 w-8 h-8 bg-transparent rounded-none" />
9
+ <InputGroup @type="color" @value={{@options.zone.color}} @name={{t "fleet-ops.component.modals.zone-form.zone-color"}} @helpText={{t "fleet-ops.component.modals.zone-form.customize-fill-color"}} class="p-0 border-0 m-0 w-8 h-8 bg-transparent rounded-none" />
10
10
 
11
11
  <div class="input-group">
12
- <InputLabel @labelText="Zone Name" @helpText="Optionally give the zone a description." />
13
- <Textarea @value={{@options.zone.description}} rows={{3}} type="text" class="w-full form-input" placeholder="Description of Zone" />
12
+ <InputLabel @labelText={{t "fleet-ops.component.modals.zone-form.name"}} @helpText={{t "fleet-ops.component.modals.zone-form.optionally"}} />
13
+ <Textarea @value={{@options.zone.description}} rows={{3}} type="text" class="w-full form-input" placeholder={{t "fleet-ops.component.modals.zone-form.description-zone"}} />
14
14
  </div>
15
15
  </div>
16
16
  </Modal::Default>
@@ -1,45 +1,45 @@
1
1
  <div class="px-3 py-4 border-b border-gray-900 order-view-header">
2
2
  <div class="flex items-start justify-between">
3
3
  <div class="flex items-start flex-1">
4
- <Button @text="Back" @onClick={{@onBackButtonClick}} class="mr-3" />
4
+ <Button @text={{t "fleet-ops.common.back"}} @onClick={{@onBackButtonClick}} class="mr-3" />
5
5
  <div>
6
6
  <h1 class="mb-1 text-gray-700 dark:text-gray-100">
7
7
  {{@order.public_id}}
8
8
  </h1>
9
9
  <div class="flex flex-row">
10
- <Badge @status={{@order.status}} @helpText={{if (eq @order.status "dispatched") (concat "Dispatched at " @order.dispatchedAt)}} />
10
+ <Badge @status={{@order.status}} @helpText={{if (eq @order.status (t "fleet-ops.component.order.header.dispatched")) (concat (t "fleet-ops.component.order.header.dispatched-at") @order.dispatchedAt)}} />
11
11
  {{#if @order.shouldDisplayDispatchLabel}}
12
- <Badge @status="info" class="ml-2" @helpText="Dispatched at {{@order.dispatchedAt}}">Dispatched</Badge>
12
+ <Badge @status="info" class="ml-2" @helpText={{t "fleet-ops.component.order.header.dispatched" htmlSafe=true order=@order.dispatchedAt}}>{{t "fleet-ops.component.order.header.dispatched"}}</Badge>
13
13
  {{/if}}
14
14
  </div>
15
15
  </div>
16
16
  </div>
17
17
  <div class="flex">
18
18
  {{#if @order.canBeDispatched}}
19
- <Button @type="primary" @icon="paper-plane" @text="Dispatch" class="mr-2" @onClick={{fn this.forwardAction "dispatchOrder"}} />
19
+ <Button @type="primary" @icon="paper-plane" @text={{t "fleet-ops.component.order.header.dispatched"}} class="mr-2" @onClick={{fn this.forwardAction "dispatchOrder"}} />
20
20
  {{/if}}
21
21
  <DropdownButton @icon="ellipsis-h" @contentClass="dropdown-menu" as |dd|>
22
22
  <div class="dropdown-menu-content context-menu">
23
23
  <a href="#" class="dropdown-menu-item" {{on "click" (fn this.forwardAction "editOrder" dd)}}>
24
- Edit Details
24
+ {{t "fleet-ops.component.order.header.edit"}}
25
25
  </a>
26
26
  <a href="#" class="dropdown-menu-item" {{on "click" (fn this.forwardAction "createNewActivity" dd)}}>
27
- Update Activity
27
+ {{t "fleet-ops.component.order.header.update"}}
28
28
  </a>
29
29
  <a href="#" class="dropdown-menu-item" {{on "click" (fn this.forwardAction "assignDriver" dd)}}>
30
- Assign Driver
30
+ {{t "fleet-ops.component.order.header.assign"}}
31
31
  </a>
32
32
  <a href="#" class="dropdown-menu-item" {{on "click" (fn this.forwardAction "viewOrderLabel" dd)}}>
33
- Get Order Label
33
+ {{t "fleet-ops.component.order.header.get-order"}}
34
34
  </a>
35
35
  {{!-- <a href="#" class="dropdown-menu-item" {{on "click" (fn this.forwardAction "splitOrder" dd)}}>
36
- Split Order
36
+ {{t "fleet-ops.component.order.header.split-order"}}
37
37
  </a> --}}
38
38
  {{!-- <a href="#" class="dropdown-menu-item" {{on "click" (fn this.forwardAction "splitOrder" dd)}}>
39
- Reschedule Order
39
+ {{t "fleet-ops.component.order.header.reschedule"}}
40
40
  </a> --}}
41
41
  <a href="#" class="dropdown-menu-item" {{on "click" (fn this.forwardAction "cancelOrder" dd)}}>
42
- Cancel Order
42
+ {{t "fleet-ops.component.order.header.cancel-order"}}
43
43
  </a>
44
44
  </div>
45
45
  </DropdownButton>
@@ -29,9 +29,9 @@
29
29
  {{#if @place.metadata}}
30
30
  <Button @size="xs" @onClick={{this.showMeta}} class="my-2">
31
31
  {{#if this.showingMeta}}
32
- Show less details
32
+ {{t "fleet-ops.component.order.place-card.show-less"}}
33
33
  {{else}}
34
- Show more details
34
+ {{t "fleet-ops.component.order.place-card.show-more"}}
35
35
  {{/if}}
36
36
  </Button>
37
37
  {{#if this.showingMeta}}
@@ -9,7 +9,7 @@
9
9
  <div class="flex items-center justify-between">
10
10
  <div>
11
11
  <FaIcon @icon="calendar" class="mr-2" />
12
- <span class="font-semibold">Date scheduled</span>
12
+ <span class="font-semibold">{{t "fleet-ops.component.order.schedule-card.date"}}</span>
13
13
  </div>
14
14
  <span class={{unless @order.scheduled_at "dark:text-gray-600 text-gray-400"}}>{{n-a @order.scheduledAt "Not Scheduled"}}</span>
15
15
  </div>
@@ -23,7 +23,7 @@
23
23
  <div class="flex items-center justify-between">
24
24
  <div class="flex flex-row items-center">
25
25
  <FaIcon @icon="calendar" class="mr-2" />
26
- <span class="font-semibold">Driver Assigned</span>
26
+ <span class="font-semibold">{{t "fleet-ops.component.order.schedule-card.driver-assigned"}}</span>
27
27
  <div class="ml-2">
28
28
  <a href="javascript:;" class="text-blue-400 hover:opacity-75" {{on "click" this.startAssignDriver}}>
29
29
  <FaIcon @icon="edit" @size="xs" />
@@ -32,7 +32,7 @@
32
32
  </div>
33
33
  <div>
34
34
  {{#if this.isAssigningDriver}}
35
- <ModelSelect @modelName="driver" @selectedModel={{@order.driver_assigned}} @placeholder="Select Driver" @triggerClass="form-select form-input form-input-sm w-48" @infiniteScroll={{false}} @renderInPlace={{true}} @allowClear={{true}} @disabled={{@model.isLoading}} @onChange={{this.assignDriver}} as |model|>
35
+ <ModelSelect @modelName="driver" @selectedModel={{@order.driver_assigned}} @placeholder={{t "fleet-ops.component.order.schedule-card.select-driver"}} @triggerClass="form-select form-input form-input-sm w-48" @infiniteScroll={{false}} @renderInPlace={{true}} @allowClear={{true}} @disabled={{@model.isLoading}} @onChange={{this.assignDriver}} as |model|>
36
36
  <div class="flex items-center">
37
37
  <div class="w-5">
38
38
  <FaIcon @icon="id-card-alt" @size="xs" />
@@ -44,16 +44,16 @@
44
44
  </div>
45
45
  </ModelSelect>
46
46
  {{else}}
47
- <a href="javascript:;" disabled={{not @order.driver_assigned}} class={{unless @order.driver_assigned "dark:text-gray-600 text-gray-400"}} {{on "click" (fn this.onClickDriver @order.driver_assigned)}}>{{n-a @order.driver_assigned.name "No Driver Assigned"}}</a>
47
+ <a href="javascript:;" disabled={{not @order.driver_assigned}} class={{unless @order.driver_assigned "dark:text-gray-600 text-gray-400"}} {{on "click" (fn this.onClickDriver @order.driver_assigned)}}>{{n-a @order.driver_assigned.name (t "fleet-ops.component.order.schedule-card.no-driver")}}</a>
48
48
  {{/if}}
49
49
  </div>
50
50
  </div>
51
51
  <div class="flex items-center justify-between">
52
52
  <div class="flex flex-row items-center">
53
53
  <FaIcon @icon="calendar" class="mr-2" />
54
- <span class="font-semibold">Vehicle Assigned</span>
54
+ <span class="font-semibold">{{t "fleet-ops.component.order.schedule-card.vehicle-assigned"}}</span>
55
55
  </div>
56
- <a href="javascript:;" disabled={{not @order.driver_assigned.vehicle}} class={{unless @order.driver_assigned.vehicle_uuid "dark:text-gray-600 text-gray-400"}} {{on "click" (fn this.onClickVehicle @order.driver_assigned.vehicle)}}>{{n-a @order.driver_assigned.vehicle_name "No Vehicle Assigned"}}</a>
56
+ <a href="javascript:;" disabled={{not @order.driver_assigned.vehicle}} class={{unless @order.driver_assigned.vehicle_uuid "dark:text-gray-600 text-gray-400"}} {{on "click" (fn this.onClickVehicle @order.driver_assigned.vehicle)}}>{{n-a @order.driver_assigned.vehicle_name (t "fleet-ops.component.order.schedule-card.no-vehicle")}}</a>
57
57
  </div>
58
58
  {{!-- <div class="z-20 relative">
59
59
  <RouteList @order={{@order}} />
@@ -16,7 +16,11 @@ export default class OrderScheduleCardComponent extends Component {
16
16
  * @memberof OrderScheduleCardComponent
17
17
  */
18
18
  @service contextPanel;
19
-
19
+ /**
20
+ * Service for intl.
21
+ * @service
22
+ */
23
+ @service intl;
20
24
  /**
21
25
  * Service for managing modals.
22
26
  * @service
@@ -89,9 +93,9 @@ export default class OrderScheduleCardComponent extends Component {
89
93
 
90
94
  if (isBlank(driver)) {
91
95
  return this.modalsManager.confirm({
92
- title: 'Unassign Driver?',
93
- body: `You are about to unassign the driver for Order ${order.public_id}. Click continue to confirm removal of driver.`,
94
- acceptButtonText: 'Continue and unassign driver',
96
+ title: this.intl.t('fleet-ops.component.order.schedule-card.unassign-driver'),
97
+ body: this.intl.t('fleet-ops.component.order.schedule-card.unassign-text', { orderId: order.public_id }),
98
+ acceptButtonText: this.intl.t('fleet-ops.component.order.schedule-card.unassign-button'),
95
99
  confirm: () => {
96
100
  order.setProperties({
97
101
  driver_assigned: null,
@@ -115,9 +119,9 @@ export default class OrderScheduleCardComponent extends Component {
115
119
  }
116
120
 
117
121
  return this.modalsManager.confirm({
118
- title: 'Assign New Driver?',
119
- body: `You are about to assign a new driver (${driver.name}) to Order ${order.public_id}. Click continue to confirm driver.`,
120
- acceptButtonText: 'Continue and assign driver',
122
+ title: this.intl.t('fleet-ops.component.order.schedule-card.assign-driver'),
123
+ body: this.intl.t('fleet-ops.component.order.schedule-card.assign-text', { driverName: driver.name, orderId: order.public_id }),
124
+ acceptButtonText: this.intl.t('fleet-ops.component.order.schedule-card.assign-button'),
121
125
  confirm: () => {
122
126
  order.set('driver_assigned_uuid', driver.id);
123
127
  return order
@@ -2,23 +2,23 @@
2
2
  <div class="content-panel mb-20">
3
3
  <div class="content-panel-header items-center">
4
4
  <h3 class="text-lg font-semibold dark:text-gray-100">
5
- Activity Flow
5
+ {{t "fleet-ops.component.order-config.activity-flow-editor.title"}}
6
6
  </h3>
7
7
 
8
8
  <Button @icon="plus" @iconPrefix="fas" @text="New Status" @size="sm" @onClick={{this.newStatus}} />
9
9
  </div>
10
10
  <div class="content-panel-body no-padding">
11
11
  <div class="my-6 px-5">
12
- <p>Activity flow configuration will allow you to define the different types of tracking status activities that apply for this order type. Logic of the activity flow can also be configured.</p>
12
+ <p>{{t "fleet-ops.component.order-config.activity-flow-editor.message"}}</p>
13
13
  </div>
14
14
 
15
15
  <div class="ui-tabs mb-4">
16
16
  <nav>
17
17
  <a href="javascript:;" class="ui-tab {{if (eq this.activeTab 'order') 'active'}}" {{on "click" (fn (mut this.activeTab) "order" )}}>
18
- Order Flow
18
+ {{t "fleet-ops.component.order-config.activity-flow-editor.order-flow"}}
19
19
  </a>
20
20
  <a href="javascript:;" class="ui-tab {{if (eq this.activeTab 'waypoint') 'active'}}" {{on "click" (fn (mut this.activeTab) "waypoint" )}}>
21
- Waypoint Flow
21
+ {{t "fleet-ops.component.order-config.activity-flow-editor.waypoint-flow"}}
22
22
  </a>
23
23
  </nav>
24
24
  </div>
@@ -33,7 +33,7 @@
33
33
  <div class="activity-status relative cursor-move flex items-center justify-center mb-6">
34
34
  <div class="relative px-3 py-2 status-element {{dasherize (flow-raw-status status)}}-status-element rounded-md flex flex-col items-center justify-center">
35
35
  <Badge @status={{flow-raw-status status}} class="status-badge-lg shadow-none" />
36
- <Button @text="New Activity" @icon="plus" @iconPrefix="fas" @wrapperClass="my-2" @onClick={{fn this.addNewActivity status}} />
36
+ <Button @text={{t "fleet-ops.component.order-config.activity-flow-editor.new-activity"}} @icon="plus" @iconPrefix="fas" @wrapperClass="my-2" @onClick={{fn this.addNewActivity status}} />
37
37
  {{#if (not (includes status (w "created dispatched completed")))}}
38
38
  <div class="absolute top-0 right-0">
39
39
  <button type="button" class="flex items-center justify-center rounded-full w-6 h-6 bg-gray-900 font-semibold text-white -mt-3 -mr-3 shadow-sm" {{on "click" (fn this.removeStatus status)}}>
@@ -50,25 +50,25 @@
50
50
  <div class="mb-4 flex items-center justify-between">
51
51
  <div>
52
52
  <FaIcon @icon="sitemap" class="mr-2 dark:text-sky-300" />
53
- <span class="dark:text-gray-100 text-sm">Activity Details</span>
53
+ <span class="dark:text-gray-100 text-sm">{{t "fleet-ops.component.order-config.activity-flow-editor.activity-details"}}</span>
54
54
  </div>
55
55
  <a href="javascript:;" class="btn btn-danger btn-sm" {{on "click" (fn this.removeActivity status event)}}>
56
56
  <FaIcon @icon="trash" />
57
57
  </a>
58
58
  </div>
59
59
  <div class="grid grid-cols-3 gap-2">
60
- <InputGroup @name="Status" @value={{event.status}} />
61
- <InputGroup @name="Code" @value={{event.code}} />
62
- <InputGroup @name="Details" @value={{event.details}} />
60
+ <InputGroup @name={{t "fleet-ops.common.status"}} @value={{event.status}} />
61
+ <InputGroup @name={{t "fleet-ops.common.code"}} @value={{event.code}} />
62
+ <InputGroup @name={{t "fleet-ops.common.details"}} @value={{event.details}} />
63
63
  </div>
64
64
  </div>
65
65
  <div class="p-3">
66
66
  <div class="mb-4 flex items-center justify-between">
67
67
  <div>
68
68
  <FaIcon @icon="project-diagram" class="mr-2 dark:text-sky-300" />
69
- <span class="dark:text-gray-100 text-sm">Logic Stack</span>
69
+ <span class="dark:text-gray-100 text-sm">{{t "fleet-ops.component.order-config.activity-flow-editor.logic-stack"}}</span>
70
70
  </div>
71
- <Button @text="Add logic condition" @icon="plus" @iconPrefix="fas" @onClick={{fn this.addLogicCondition status event}} />
71
+ <Button @text={{t "fleet-ops.component.order-config.activity-flow-editor.add-logic"}} @icon="plus" @iconPrefix="fas" @onClick={{fn this.addLogicCondition status event}} />
72
72
  </div>
73
73
  <div class="space-y-3 mb-3">
74
74
  {{#each event.if as |logic conditionIndex|}}
@@ -79,15 +79,15 @@
79
79
  </div>
80
80
  <Select @options={{this.configFields}} @value={{get logic 0}} @placeholder="Select field" class="flex-1 w-full" @onSelect={{fn this.updateActivityLogic status event conditionIndex 0}} />
81
81
  </div>
82
- <Select @options={{this.logicOperators}} @value={{get logic 1}} @optionLabel="label" @optionValue="value" @onSelect={{fn this.updateActivityLogic status event conditionIndex 1}} @placeholder="Select operator" />
82
+ <Select @options={{this.logicOperators}} @value={{get logic 1}} @optionLabel="label" @optionValue="value" @onSelect={{fn this.updateActivityLogic status event conditionIndex 1}} @placeholder={{t "fleet-ops.component.order-config.activity-flow-editor.select-operator"}} />
83
83
  <div class="flex items-center col-span-2">
84
- <Input @type="text" @value={{get logic 2}} {{on "keyup" (fn this.updateActivityLogic status event conditionIndex 2)}} placeholder="Enter value to compare" class="form-input w-full flex-1 mr-3" />
84
+ <Input @type="text" @value={{get logic 2}} {{on "keyup" (fn this.updateActivityLogic status event conditionIndex 2)}} placeholder={{t "fleet-ops.component.order-config.activity-flow-editor.enter-value"}} class="form-input w-full flex-1 mr-3" />
85
85
  <Button @size="sm" @icon="trash" @onClick={{fn this.removeLogicCondition event logic}} />
86
86
  </div>
87
87
  </div>
88
88
  {{else}}
89
89
  <div class="flex items-center justify-center">
90
- <div class="rounded bg-gray-300 dark:bg-gray-700 shadow-sm text-sm text-center px-6 py-3 dark:text-gray-100 border border-dashed border-gray-500 dark:border-gray-900">No logic conditions applied</div>
90
+ <div class="rounded bg-gray-300 dark:bg-gray-700 shadow-sm text-sm text-center px-6 py-3 dark:text-gray-100 border border-dashed border-gray-500 dark:border-gray-900">{{t "fleet-ops.component.order-config.activity-flow-editor.no-logic"}}</div>
91
91
  </div>
92
92
  {{/each}}
93
93
  </div>