odoo-addon-shopfloor-mobile 18.0.1.0.0.3__py3-none-any.whl → 18.0.1.0.1__py3-none-any.whl

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.
@@ -11,7 +11,7 @@ Shopfloor mobile
11
11
  !! This file is generated by oca-gen-addon-readme !!
12
12
  !! changes will be overwritten. !!
13
13
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
14
- !! source digest: sha256:72c521eb98798688bdc15454ac31dcfc7a5d0ab70bff691f621d9b212c1ab6d1
14
+ !! source digest: sha256:5343b7be8eb4f58f7548ae53194c5554d3a7d9ac639fb64e27cae31cf8cd2766
15
15
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16
16
 
17
17
  .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
@@ -34,35 +34,35 @@ Shopfloor mobile
34
34
 
35
35
  Frontend for Shopfloor app.
36
36
 
37
- The work is organized in scenario.
38
- A scenario represents a process in the warehouse (eg: receive, deliver).
39
- The app allows to start each process through the main menu.
40
-
41
- Each scenario is linked to a specific menu item which can be configured in the backend.
42
- Each scenario drives you through the work to do.
37
+ The work is organized in scenario. A scenario represents a process in
38
+ the warehouse (eg: receive, deliver). The app allows to start each
39
+ process through the main menu.
43
40
 
41
+ Each scenario is linked to a specific menu item which can be configured
42
+ in the backend. Each scenario drives you through the work to do.
44
43
 
45
44
  Tech details
46
- ~~~~~~~~~~~~
45
+ ------------
47
46
 
48
- * This frontend is built on top of `VueJS <vuejs.org>`_ and `VuetifyJS <vuetifyjs.com/>`_
49
- and relies on `shopfloor` module that exposes REST API in Odoo
50
- (based in turn on `base_rest <https://github.com/OCA/rest-framework/tree/13.0/base_rest>`_).
47
+ - This frontend is built on top of `VueJS <vuejs.org>`__ and
48
+ `VuetifyJS <vuetifyjs.com/>`__ and relies on shopfloor module that
49
+ exposes REST API in Odoo (based in turn on
50
+ `base_rest <https://github.com/OCA/rest-framework/tree/13.0/base_rest>`__).
51
51
 
52
- * The whole business logic comes from `shopfloor` module,
53
- this module takes care of providing a nice and reactive UI to work with.
52
+ - The whole business logic comes from shopfloor module, this module
53
+ takes care of providing a nice and reactive UI to work with.
54
54
 
55
- * No Odoo JS is used, no assets machinery used.
55
+ - No Odoo JS is used, no assets machinery used.
56
56
 
57
57
  Static assets are loaded straight, served by a specific controller.
58
58
  This app is a Single Page App, hence resources are loaded only once.
59
59
 
60
- The version of the module appended to the URL of each resources
61
- makes sure it's not cached when the version changes.
60
+ The version of the module appended to the URL of each resources makes
61
+ sure it's not cached when the version changes.
62
62
 
63
- * When developing you can use a demo mode which allows to define interactive scenario
64
- with pure JS demo data, without interacting with Odoo.
65
- Nothing to deal with Odoo demo data.
63
+ - When developing you can use a demo mode which allows to define
64
+ interactive scenario with pure JS demo data, without interacting with
65
+ Odoo. Nothing to deal with Odoo demo data.
66
66
 
67
67
  **Table of contents**
68
68
 
@@ -73,78 +73,92 @@ Usage
73
73
  =====
74
74
 
75
75
  Pre-requisites
76
- ~~~~~~~~~~~~~~
76
+ --------------
77
77
 
78
- * Your Odoo instance is accessible via mobile device
79
- * You have an API Key configured
78
+ - Your Odoo instance is accessible via mobile device
79
+ - You have an API Key configured
80
80
 
81
81
  Start the app
82
- ~~~~~~~~~~~~~
82
+ -------------
83
83
 
84
- * Go to "Inventory -> Configuration -> Shopfloor -> Shopfloor App"
85
- * In the login screen fill in your API key
86
- * Hit "Login"
84
+ - Go to "Inventory -> Configuration -> Shopfloor -> Shopfloor App"
85
+ - In the login screen fill in your API key
86
+ - Hit "Login"
87
87
 
88
88
  Select a profile
89
- ~~~~~~~~~~~~~~~~
89
+ ----------------
90
90
 
91
- Several profiles can be configured in the backend,
92
- you must choose one before starting.
91
+ Several profiles can be configured in the backend, you must choose one
92
+ before starting.
93
93
 
94
- * Tap on "Configure profile"
95
- * Select a profile
94
+ - Tap on "Configure profile"
95
+ - Select a profile
96
96
 
97
97
  This will load all available menu items for the selected profile.
98
98
 
99
99
  Change language
100
- ~~~~~~~~~~~~~~~
100
+ ---------------
101
101
 
102
- * Go to "Settings -> Language"
103
- * Select a language
102
+ - Go to "Settings -> Language"
103
+ - Select a language
104
104
 
105
105
  Customization
106
- ~~~~~~~~~~~~~
106
+ -------------
107
107
 
108
- Please refer to `shopfloor_mobile_custom_example`.
108
+ Please refer to shopfloor_mobile_custom_example.
109
109
 
110
110
  Known issues / Roadmap
111
111
  ======================
112
112
 
113
- * Split module by scenario
114
- * Improve documentation and demo data
115
- * Document each component
116
- * Document demo mode
117
- * Find / create a nice icon
118
- * Finish base translations (move all UI strings to translatable terms)
119
- * Use SCSS
120
- * Refactor states definition
121
-
122
- States are now part of the scenario data. They should be specific objects with their own class.
123
- They should also provide all the actions that should be displayed w/ their handlers when needed.
124
- Actions can be popup actions or buttons at the bottom of the screen.
125
- The tricky part here could be how to register this states for the given component.
126
- Today states have access to the full object of the scenario component as they are part of it.
127
- `_get_state_spec` could probably lookup for registered states
128
- (eg: when you register a component in the registry you should provide states as well).
129
- When we'll have states in this fashion we should also consider if they should provide their own template.
130
- This way the component template will hold only the generic bits of the scenario.
131
-
132
- * Back buttons should be smarter
133
-
134
- In some cases getting back using history is fine but very often this could lead to outdated data display.
135
- To mitigate this in particular scenario's steps, custom handlers for the back action have been implemented.
136
- For instance, in cluster_picking when you hit back on manual selection it forces the state to go to start and reload.
137
- For starting we should provide `on_back` property to all states where we want to display it
138
- (no more specific check on the state to display this button).
139
- This part is also related to "Refactor states definition".
140
-
141
- * Go through `_.forEach` and similar calls to replace them w/ vanilla JS (eg: `.map()`)
113
+ - Split module by scenario
114
+
115
+ - Improve documentation and demo data
116
+
117
+ - Document each component
118
+
119
+ - Document demo mode
120
+
121
+ - Find / create a nice icon
122
+
123
+ - Finish base translations (move all UI strings to translatable terms)
124
+
125
+ - Use SCSS
126
+
127
+ - Refactor states definition
128
+
129
+ States are now part of the scenario data. They should be specific
130
+ objects with their own class. They should also provide all the actions
131
+ that should be displayed w/ their handlers when needed. Actions can be
132
+ popup actions or buttons at the bottom of the screen. The tricky part
133
+ here could be how to register this states for the given component.
134
+ Today states have access to the full object of the scenario component
135
+ as they are part of it. \_get_state_spec could probably lookup for
136
+ registered states (eg: when you register a component in the registry
137
+ you should provide states as well). When we'll have states in this
138
+ fashion we should also consider if they should provide their own
139
+ template. This way the component template will hold only the generic
140
+ bits of the scenario.
141
+
142
+ - Back buttons should be smarter
143
+
144
+ In some cases getting back using history is fine but very often this
145
+ could lead to outdated data display. To mitigate this in particular
146
+ scenario's steps, custom handlers for the back action have been
147
+ implemented. For instance, in cluster_picking when you hit back on
148
+ manual selection it forces the state to go to start and reload. For
149
+ starting we should provide on_back property to all states where we
150
+ want to display it (no more specific check on the state to display
151
+ this button). This part is also related to "Refactor states
152
+ definition".
153
+
154
+ - Go through \_.forEach and similar calls to replace them w/ vanilla JS
155
+ (eg: .map())
142
156
 
143
157
  Changelog
144
158
  =========
145
159
 
146
160
  13.0.1.0.0
147
- ~~~~~~~~~~
161
+ ----------
148
162
 
149
163
  First official version.
150
164
 
@@ -162,39 +176,38 @@ Credits
162
176
  =======
163
177
 
164
178
  Authors
165
- ~~~~~~~
179
+ -------
166
180
 
167
181
  * Camptocamp
168
182
  * BCIM
169
183
  * Akretion
170
184
 
171
185
  Contributors
172
- ~~~~~~~~~~~~
186
+ ------------
173
187
 
174
- * Simone Orsi <simahawk@gmail.com>
175
- * Thierry Ducrest <thierry.ducrest@camptocamp.com>
176
- * Guewen Baconnier <guewen.baconnier@camptocamp.com>
177
- * Raphaël Reverdy <raphael.reverdy@akretion.com>
178
- * Sébastien Beau <sebastien.beau@akretion.com>
179
- * Jacques-Etienne Baudoux <je@bcim.be>
188
+ - Simone Orsi <simahawk@gmail.com>
189
+ - Thierry Ducrest <thierry.ducrest@camptocamp.com>
190
+ - Guewen Baconnier <guewen.baconnier@camptocamp.com>
191
+ - Raphaël Reverdy <raphael.reverdy@akretion.com>
192
+ - Sébastien Beau <sebastien.beau@akretion.com>
193
+ - Jacques-Etienne Baudoux <je@bcim.be>
180
194
 
181
- Design
182
- ~~~~~~
195
+ **Design**
183
196
 
184
- * Joël Grand-Guillaume <joel.grandguillaume@camptocamp.com>
185
- * Jacques-Etienne Baudoux <je@bcim.be>
197
+ - Joël Grand-Guillaume <joel.grandguillaume@camptocamp.com>
198
+ - Jacques-Etienne Baudoux <je@bcim.be>
186
199
 
187
200
  Other credits
188
- ~~~~~~~~~~~~~
201
+ -------------
189
202
 
190
203
  **Financial support**
191
204
 
192
- * Cosanum
193
- * Camptocamp R&D
194
- * Akretion R&D
205
+ - Cosanum
206
+ - Camptocamp R&D
207
+ - Akretion R&D
195
208
 
196
209
  Maintainers
197
- ~~~~~~~~~~~
210
+ -----------
198
211
 
199
212
  This module is maintained by the OCA.
200
213
 
@@ -5,7 +5,7 @@
5
5
  {
6
6
  "name": "Shopfloor mobile",
7
7
  "summary": "Mobile frontend for WMS Shopfloor app",
8
- "version": "18.0.1.0.0",
8
+ "version": "18.0.1.0.1",
9
9
  "depends": ["shopfloor", "shopfloor_mobile_base"],
10
10
  "author": "Camptocamp, BCIM, Akretion, Odoo Community Association (OCA)",
11
11
  "maintainers": ["simahawk"],
@@ -0,0 +1,11 @@
1
+ - Simone Orsi \<<simahawk@gmail.com>\>
2
+ - Thierry Ducrest \<<thierry.ducrest@camptocamp.com>\>
3
+ - Guewen Baconnier \<<guewen.baconnier@camptocamp.com>\>
4
+ - Raphaël Reverdy \<<raphael.reverdy@akretion.com>\>
5
+ - Sébastien Beau \<<sebastien.beau@akretion.com>\>
6
+ - Jacques-Etienne Baudoux \<<je@bcim.be>\>
7
+
8
+ **Design**
9
+
10
+ - Joël Grand-Guillaume \<<joel.grandguillaume@camptocamp.com>\>
11
+ - Jacques-Etienne Baudoux \<<je@bcim.be>\>
@@ -0,0 +1,5 @@
1
+ **Financial support**
2
+
3
+ - Cosanum
4
+ - Camptocamp R&D
5
+ - Akretion R&D
@@ -0,0 +1,30 @@
1
+ Frontend for Shopfloor app.
2
+
3
+ The work is organized in scenario. A scenario represents a process in
4
+ the warehouse (eg: receive, deliver). The app allows to start each
5
+ process through the main menu.
6
+
7
+ Each scenario is linked to a specific menu item which can be configured
8
+ in the backend. Each scenario drives you through the work to do.
9
+
10
+ ## Tech details
11
+
12
+ - This frontend is built on top of [VueJS](vuejs.org) and
13
+ [VuetifyJS](vuetifyjs.com/) and relies on shopfloor module that
14
+ exposes REST API in Odoo (based in turn on
15
+ [base_rest](https://github.com/OCA/rest-framework/tree/13.0/base_rest)).
16
+
17
+ - The whole business logic comes from shopfloor module, this module
18
+ takes care of providing a nice and reactive UI to work with.
19
+
20
+ - No Odoo JS is used, no assets machinery used.
21
+
22
+ Static assets are loaded straight, served by a specific controller.
23
+ This app is a Single Page App, hence resources are loaded only once.
24
+
25
+ The version of the module appended to the URL of each resources makes
26
+ sure it's not cached when the version changes.
27
+
28
+ - When developing you can use a demo mode which allows to define
29
+ interactive scenario with pure JS demo data, without interacting with
30
+ Odoo. Nothing to deal with Odoo demo data.
@@ -1,4 +1,3 @@
1
- 13.0.1.0.0
2
- ~~~~~~~~~~
1
+ ## 13.0.1.0.0
3
2
 
4
3
  First official version.
@@ -0,0 +1,43 @@
1
+ - Split module by scenario
2
+
3
+ - Improve documentation and demo data
4
+
5
+ - Document each component
6
+
7
+ - Document demo mode
8
+
9
+ - Find / create a nice icon
10
+
11
+ - Finish base translations (move all UI strings to translatable terms)
12
+
13
+ - Use SCSS
14
+
15
+ - Refactor states definition
16
+
17
+ States are now part of the scenario data. They should be specific
18
+ objects with their own class. They should also provide all the actions
19
+ that should be displayed w/ their handlers when needed. Actions can be
20
+ popup actions or buttons at the bottom of the screen. The tricky part
21
+ here could be how to register this states for the given component.
22
+ Today states have access to the full object of the scenario component
23
+ as they are part of it. \_get_state_spec could probably lookup for
24
+ registered states (eg: when you register a component in the registry
25
+ you should provide states as well). When we'll have states in this
26
+ fashion we should also consider if they should provide their own
27
+ template. This way the component template will hold only the generic
28
+ bits of the scenario.
29
+
30
+ - Back buttons should be smarter
31
+
32
+ In some cases getting back using history is fine but very often this
33
+ could lead to outdated data display. To mitigate this in particular
34
+ scenario's steps, custom handlers for the back action have been
35
+ implemented. For instance, in cluster_picking when you hit back on
36
+ manual selection it forces the state to go to start and reload. For
37
+ starting we should provide on_back property to all states where we
38
+ want to display it (no more specific check on the state to display
39
+ this button). This part is also related to "Refactor states
40
+ definition".
41
+
42
+ - Go through \_.forEach and similar calls to replace them w/ vanilla JS
43
+ (eg: .map())
@@ -0,0 +1,29 @@
1
+ ## Pre-requisites
2
+
3
+ - Your Odoo instance is accessible via mobile device
4
+ - You have an API Key configured
5
+
6
+ ## Start the app
7
+
8
+ - Go to "Inventory -\> Configuration -\> Shopfloor -\> Shopfloor App"
9
+ - In the login screen fill in your API key
10
+ - Hit "Login"
11
+
12
+ ## Select a profile
13
+
14
+ Several profiles can be configured in the backend, you must choose one
15
+ before starting.
16
+
17
+ - Tap on "Configure profile"
18
+ - Select a profile
19
+
20
+ This will load all available menu items for the selected profile.
21
+
22
+ ## Change language
23
+
24
+ - Go to "Settings -\> Language"
25
+ - Select a language
26
+
27
+ ## Customization
28
+
29
+ Please refer to shopfloor_mobile_custom_example.
@@ -372,34 +372,35 @@ ul.auto-toc {
372
372
  !! This file is generated by oca-gen-addon-readme !!
373
373
  !! changes will be overwritten. !!
374
374
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
375
- !! source digest: sha256:72c521eb98798688bdc15454ac31dcfc7a5d0ab70bff691f621d9b212c1ab6d1
375
+ !! source digest: sha256:5343b7be8eb4f58f7548ae53194c5554d3a7d9ac639fb64e27cae31cf8cd2766
376
376
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
377
377
  <p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/license-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/stock-logistics-shopfloor/tree/18.0/shopfloor_mobile"><img alt="OCA/stock-logistics-shopfloor" src="https://img.shields.io/badge/github-OCA%2Fstock--logistics--shopfloor-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/stock-logistics-shopfloor-18-0/stock-logistics-shopfloor-18-0-shopfloor_mobile"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/stock-logistics-shopfloor&amp;target_branch=18.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
378
378
  <p>Frontend for Shopfloor app.</p>
379
- <p>The work is organized in scenario.
380
- A scenario represents a process in the warehouse (eg: receive, deliver).
381
- The app allows to start each process through the main menu.</p>
382
- <p>Each scenario is linked to a specific menu item which can be configured in the backend.
383
- Each scenario drives you through the work to do.</p>
379
+ <p>The work is organized in scenario. A scenario represents a process in
380
+ the warehouse (eg: receive, deliver). The app allows to start each
381
+ process through the main menu.</p>
382
+ <p>Each scenario is linked to a specific menu item which can be configured
383
+ in the backend. Each scenario drives you through the work to do.</p>
384
384
  <div class="section" id="tech-details">
385
385
  <h2>Tech details</h2>
386
386
  <ul>
387
- <li><p class="first">This frontend is built on top of <a class="reference external" href="vuejs.org">VueJS</a> and <a class="reference external" href="vuetifyjs.com/">VuetifyJS</a>
388
- and relies on <cite>shopfloor</cite> module that exposes REST API in Odoo
389
- (based in turn on <a class="reference external" href="https://github.com/OCA/rest-framework/tree/13.0/base_rest">base_rest</a>).</p>
387
+ <li><p class="first">This frontend is built on top of <a class="reference external" href="vuejs.org">VueJS</a> and
388
+ <a class="reference external" href="vuetifyjs.com/">VuetifyJS</a> and relies on shopfloor module that
389
+ exposes REST API in Odoo (based in turn on
390
+ <a class="reference external" href="https://github.com/OCA/rest-framework/tree/13.0/base_rest">base_rest</a>).</p>
390
391
  </li>
391
- <li><p class="first">The whole business logic comes from <cite>shopfloor</cite> module,
392
- this module takes care of providing a nice and reactive UI to work with.</p>
392
+ <li><p class="first">The whole business logic comes from shopfloor module, this module
393
+ takes care of providing a nice and reactive UI to work with.</p>
393
394
  </li>
394
395
  <li><p class="first">No Odoo JS is used, no assets machinery used.</p>
395
396
  <p>Static assets are loaded straight, served by a specific controller.
396
397
  This app is a Single Page App, hence resources are loaded only once.</p>
397
- <p>The version of the module appended to the URL of each resources
398
- makes sure it’s not cached when the version changes.</p>
398
+ <p>The version of the module appended to the URL of each resources makes
399
+ sure it’s not cached when the version changes.</p>
399
400
  </li>
400
- <li><p class="first">When developing you can use a demo mode which allows to define interactive scenario
401
- with pure JS demo data, without interacting with Odoo.
402
- Nothing to deal with Odoo demo data.</p>
401
+ <li><p class="first">When developing you can use a demo mode which allows to define
402
+ interactive scenario with pure JS demo data, without interacting with
403
+ Odoo. Nothing to deal with Odoo demo data.</p>
403
404
  </li>
404
405
  </ul>
405
406
  <p><strong>Table of contents</strong></p>
@@ -429,8 +430,8 @@ Nothing to deal with Odoo demo data.</p>
429
430
  </div>
430
431
  <div class="section" id="select-a-profile">
431
432
  <h2>Select a profile</h2>
432
- <p>Several profiles can be configured in the backend,
433
- you must choose one before starting.</p>
433
+ <p>Several profiles can be configured in the backend, you must choose one
434
+ before starting.</p>
434
435
  <ul class="simple">
435
436
  <li>Tap on “Configure profile”</li>
436
437
  <li>Select a profile</li>
@@ -446,7 +447,7 @@ you must choose one before starting.</p>
446
447
  </div>
447
448
  <div class="section" id="customization">
448
449
  <h2>Customization</h2>
449
- <p>Please refer to <cite>shopfloor_mobile_custom_example</cite>.</p>
450
+ <p>Please refer to shopfloor_mobile_custom_example.</p>
450
451
  <div class="section" id="known-issues-roadmap">
451
452
  <h3>Known issues / Roadmap</h3>
452
453
  <ul>
@@ -465,25 +466,32 @@ you must choose one before starting.</p>
465
466
  <li><p class="first">Use SCSS</p>
466
467
  </li>
467
468
  <li><p class="first">Refactor states definition</p>
468
- <p>States are now part of the scenario data. They should be specific objects with their own class.
469
- They should also provide all the actions that should be displayed w/ their handlers when needed.
470
- Actions can be popup actions or buttons at the bottom of the screen.
471
- The tricky part here could be how to register this states for the given component.
472
- Today states have access to the full object of the scenario component as they are part of it.
473
- <cite>_get_state_spec</cite> could probably lookup for registered states
474
- (eg: when you register a component in the registry you should provide states as well).
475
- When we’ll have states in this fashion we should also consider if they should provide their own template.
476
- This way the component template will hold only the generic bits of the scenario.</p>
469
+ <p>States are now part of the scenario data. They should be specific
470
+ objects with their own class. They should also provide all the actions
471
+ that should be displayed w/ their handlers when needed. Actions can be
472
+ popup actions or buttons at the bottom of the screen. The tricky part
473
+ here could be how to register this states for the given component.
474
+ Today states have access to the full object of the scenario component
475
+ as they are part of it. _get_state_spec could probably lookup for
476
+ registered states (eg: when you register a component in the registry
477
+ you should provide states as well). When we’ll have states in this
478
+ fashion we should also consider if they should provide their own
479
+ template. This way the component template will hold only the generic
480
+ bits of the scenario.</p>
477
481
  </li>
478
482
  <li><p class="first">Back buttons should be smarter</p>
479
- <p>In some cases getting back using history is fine but very often this could lead to outdated data display.
480
- To mitigate this in particular scenario’s steps, custom handlers for the back action have been implemented.
481
- For instance, in cluster_picking when you hit back on manual selection it forces the state to go to start and reload.
482
- For starting we should provide <cite>on_back</cite> property to all states where we want to display it
483
- (no more specific check on the state to display this button).
484
- This part is also related to “Refactor states definition”.</p>
483
+ <p>In some cases getting back using history is fine but very often this
484
+ could lead to outdated data display. To mitigate this in particular
485
+ scenario’s steps, custom handlers for the back action have been
486
+ implemented. For instance, in cluster_picking when you hit back on
487
+ manual selection it forces the state to go to start and reload. For
488
+ starting we should provide on_back property to all states where we
489
+ want to display it (no more specific check on the state to display
490
+ this button). This part is also related to “Refactor states
491
+ definition”.</p>
485
492
  </li>
486
- <li><p class="first">Go through <cite>_.forEach</cite> and similar calls to replace them w/ vanilla JS (eg: <cite>.map()</cite>)</p>
493
+ <li><p class="first">Go through _.forEach and similar calls to replace them w/ vanilla JS
494
+ (eg: .map())</p>
487
495
  </li>
488
496
  </ul>
489
497
  </div>
@@ -524,9 +532,7 @@ If you spotted it first, help us to smash it by providing a detailed and welcome
524
532
  <li>Sébastien Beau &lt;<a class="reference external" href="mailto:sebastien.beau&#64;akretion.com">sebastien.beau&#64;akretion.com</a>&gt;</li>
525
533
  <li>Jacques-Etienne Baudoux &lt;<a class="reference external" href="mailto:je&#64;bcim.be">je&#64;bcim.be</a>&gt;</li>
526
534
  </ul>
527
- </div>
528
- <div class="section" id="design">
529
- <h2>Design</h2>
535
+ <p><strong>Design</strong></p>
530
536
  <ul class="simple">
531
537
  <li>Joël Grand-Guillaume &lt;<a class="reference external" href="mailto:joel.grandguillaume&#64;camptocamp.com">joel.grandguillaume&#64;camptocamp.com</a>&gt;</li>
532
538
  <li>Jacques-Etienne Baudoux &lt;<a class="reference external" href="mailto:je&#64;bcim.be">je&#64;bcim.be</a>&gt;</li>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: odoo-addon-shopfloor_mobile
3
- Version: 18.0.1.0.0.3
3
+ Version: 18.0.1.0.1
4
4
  Requires-Python: >=3.10
5
5
  Requires-Dist: odoo-addon-shopfloor==18.0.*
6
6
  Requires-Dist: odoo-addon-shopfloor_mobile_base==18.0.*
@@ -29,7 +29,7 @@ Shopfloor mobile
29
29
  !! This file is generated by oca-gen-addon-readme !!
30
30
  !! changes will be overwritten. !!
31
31
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
32
- !! source digest: sha256:72c521eb98798688bdc15454ac31dcfc7a5d0ab70bff691f621d9b212c1ab6d1
32
+ !! source digest: sha256:5343b7be8eb4f58f7548ae53194c5554d3a7d9ac639fb64e27cae31cf8cd2766
33
33
  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
34
34
 
35
35
  .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
@@ -52,35 +52,35 @@ Shopfloor mobile
52
52
 
53
53
  Frontend for Shopfloor app.
54
54
 
55
- The work is organized in scenario.
56
- A scenario represents a process in the warehouse (eg: receive, deliver).
57
- The app allows to start each process through the main menu.
58
-
59
- Each scenario is linked to a specific menu item which can be configured in the backend.
60
- Each scenario drives you through the work to do.
55
+ The work is organized in scenario. A scenario represents a process in
56
+ the warehouse (eg: receive, deliver). The app allows to start each
57
+ process through the main menu.
61
58
 
59
+ Each scenario is linked to a specific menu item which can be configured
60
+ in the backend. Each scenario drives you through the work to do.
62
61
 
63
62
  Tech details
64
- ~~~~~~~~~~~~
63
+ ------------
65
64
 
66
- * This frontend is built on top of `VueJS <vuejs.org>`_ and `VuetifyJS <vuetifyjs.com/>`_
67
- and relies on `shopfloor` module that exposes REST API in Odoo
68
- (based in turn on `base_rest <https://github.com/OCA/rest-framework/tree/13.0/base_rest>`_).
65
+ - This frontend is built on top of `VueJS <vuejs.org>`__ and
66
+ `VuetifyJS <vuetifyjs.com/>`__ and relies on shopfloor module that
67
+ exposes REST API in Odoo (based in turn on
68
+ `base_rest <https://github.com/OCA/rest-framework/tree/13.0/base_rest>`__).
69
69
 
70
- * The whole business logic comes from `shopfloor` module,
71
- this module takes care of providing a nice and reactive UI to work with.
70
+ - The whole business logic comes from shopfloor module, this module
71
+ takes care of providing a nice and reactive UI to work with.
72
72
 
73
- * No Odoo JS is used, no assets machinery used.
73
+ - No Odoo JS is used, no assets machinery used.
74
74
 
75
75
  Static assets are loaded straight, served by a specific controller.
76
76
  This app is a Single Page App, hence resources are loaded only once.
77
77
 
78
- The version of the module appended to the URL of each resources
79
- makes sure it's not cached when the version changes.
78
+ The version of the module appended to the URL of each resources makes
79
+ sure it's not cached when the version changes.
80
80
 
81
- * When developing you can use a demo mode which allows to define interactive scenario
82
- with pure JS demo data, without interacting with Odoo.
83
- Nothing to deal with Odoo demo data.
81
+ - When developing you can use a demo mode which allows to define
82
+ interactive scenario with pure JS demo data, without interacting with
83
+ Odoo. Nothing to deal with Odoo demo data.
84
84
 
85
85
  **Table of contents**
86
86
 
@@ -91,78 +91,92 @@ Usage
91
91
  =====
92
92
 
93
93
  Pre-requisites
94
- ~~~~~~~~~~~~~~
94
+ --------------
95
95
 
96
- * Your Odoo instance is accessible via mobile device
97
- * You have an API Key configured
96
+ - Your Odoo instance is accessible via mobile device
97
+ - You have an API Key configured
98
98
 
99
99
  Start the app
100
- ~~~~~~~~~~~~~
100
+ -------------
101
101
 
102
- * Go to "Inventory -> Configuration -> Shopfloor -> Shopfloor App"
103
- * In the login screen fill in your API key
104
- * Hit "Login"
102
+ - Go to "Inventory -> Configuration -> Shopfloor -> Shopfloor App"
103
+ - In the login screen fill in your API key
104
+ - Hit "Login"
105
105
 
106
106
  Select a profile
107
- ~~~~~~~~~~~~~~~~
107
+ ----------------
108
108
 
109
- Several profiles can be configured in the backend,
110
- you must choose one before starting.
109
+ Several profiles can be configured in the backend, you must choose one
110
+ before starting.
111
111
 
112
- * Tap on "Configure profile"
113
- * Select a profile
112
+ - Tap on "Configure profile"
113
+ - Select a profile
114
114
 
115
115
  This will load all available menu items for the selected profile.
116
116
 
117
117
  Change language
118
- ~~~~~~~~~~~~~~~
118
+ ---------------
119
119
 
120
- * Go to "Settings -> Language"
121
- * Select a language
120
+ - Go to "Settings -> Language"
121
+ - Select a language
122
122
 
123
123
  Customization
124
- ~~~~~~~~~~~~~
124
+ -------------
125
125
 
126
- Please refer to `shopfloor_mobile_custom_example`.
126
+ Please refer to shopfloor_mobile_custom_example.
127
127
 
128
128
  Known issues / Roadmap
129
129
  ======================
130
130
 
131
- * Split module by scenario
132
- * Improve documentation and demo data
133
- * Document each component
134
- * Document demo mode
135
- * Find / create a nice icon
136
- * Finish base translations (move all UI strings to translatable terms)
137
- * Use SCSS
138
- * Refactor states definition
139
-
140
- States are now part of the scenario data. They should be specific objects with their own class.
141
- They should also provide all the actions that should be displayed w/ their handlers when needed.
142
- Actions can be popup actions or buttons at the bottom of the screen.
143
- The tricky part here could be how to register this states for the given component.
144
- Today states have access to the full object of the scenario component as they are part of it.
145
- `_get_state_spec` could probably lookup for registered states
146
- (eg: when you register a component in the registry you should provide states as well).
147
- When we'll have states in this fashion we should also consider if they should provide their own template.
148
- This way the component template will hold only the generic bits of the scenario.
149
-
150
- * Back buttons should be smarter
151
-
152
- In some cases getting back using history is fine but very often this could lead to outdated data display.
153
- To mitigate this in particular scenario's steps, custom handlers for the back action have been implemented.
154
- For instance, in cluster_picking when you hit back on manual selection it forces the state to go to start and reload.
155
- For starting we should provide `on_back` property to all states where we want to display it
156
- (no more specific check on the state to display this button).
157
- This part is also related to "Refactor states definition".
158
-
159
- * Go through `_.forEach` and similar calls to replace them w/ vanilla JS (eg: `.map()`)
131
+ - Split module by scenario
132
+
133
+ - Improve documentation and demo data
134
+
135
+ - Document each component
136
+
137
+ - Document demo mode
138
+
139
+ - Find / create a nice icon
140
+
141
+ - Finish base translations (move all UI strings to translatable terms)
142
+
143
+ - Use SCSS
144
+
145
+ - Refactor states definition
146
+
147
+ States are now part of the scenario data. They should be specific
148
+ objects with their own class. They should also provide all the actions
149
+ that should be displayed w/ their handlers when needed. Actions can be
150
+ popup actions or buttons at the bottom of the screen. The tricky part
151
+ here could be how to register this states for the given component.
152
+ Today states have access to the full object of the scenario component
153
+ as they are part of it. \_get_state_spec could probably lookup for
154
+ registered states (eg: when you register a component in the registry
155
+ you should provide states as well). When we'll have states in this
156
+ fashion we should also consider if they should provide their own
157
+ template. This way the component template will hold only the generic
158
+ bits of the scenario.
159
+
160
+ - Back buttons should be smarter
161
+
162
+ In some cases getting back using history is fine but very often this
163
+ could lead to outdated data display. To mitigate this in particular
164
+ scenario's steps, custom handlers for the back action have been
165
+ implemented. For instance, in cluster_picking when you hit back on
166
+ manual selection it forces the state to go to start and reload. For
167
+ starting we should provide on_back property to all states where we
168
+ want to display it (no more specific check on the state to display
169
+ this button). This part is also related to "Refactor states
170
+ definition".
171
+
172
+ - Go through \_.forEach and similar calls to replace them w/ vanilla JS
173
+ (eg: .map())
160
174
 
161
175
  Changelog
162
176
  =========
163
177
 
164
178
  13.0.1.0.0
165
- ~~~~~~~~~~
179
+ ----------
166
180
 
167
181
  First official version.
168
182
 
@@ -180,39 +194,38 @@ Credits
180
194
  =======
181
195
 
182
196
  Authors
183
- ~~~~~~~
197
+ -------
184
198
 
185
199
  * Camptocamp
186
200
  * BCIM
187
201
  * Akretion
188
202
 
189
203
  Contributors
190
- ~~~~~~~~~~~~
204
+ ------------
191
205
 
192
- * Simone Orsi <simahawk@gmail.com>
193
- * Thierry Ducrest <thierry.ducrest@camptocamp.com>
194
- * Guewen Baconnier <guewen.baconnier@camptocamp.com>
195
- * Raphaël Reverdy <raphael.reverdy@akretion.com>
196
- * Sébastien Beau <sebastien.beau@akretion.com>
197
- * Jacques-Etienne Baudoux <je@bcim.be>
206
+ - Simone Orsi <simahawk@gmail.com>
207
+ - Thierry Ducrest <thierry.ducrest@camptocamp.com>
208
+ - Guewen Baconnier <guewen.baconnier@camptocamp.com>
209
+ - Raphaël Reverdy <raphael.reverdy@akretion.com>
210
+ - Sébastien Beau <sebastien.beau@akretion.com>
211
+ - Jacques-Etienne Baudoux <je@bcim.be>
198
212
 
199
- Design
200
- ~~~~~~
213
+ **Design**
201
214
 
202
- * Joël Grand-Guillaume <joel.grandguillaume@camptocamp.com>
203
- * Jacques-Etienne Baudoux <je@bcim.be>
215
+ - Joël Grand-Guillaume <joel.grandguillaume@camptocamp.com>
216
+ - Jacques-Etienne Baudoux <je@bcim.be>
204
217
 
205
218
  Other credits
206
- ~~~~~~~~~~~~~
219
+ -------------
207
220
 
208
221
  **Financial support**
209
222
 
210
- * Cosanum
211
- * Camptocamp R&D
212
- * Akretion R&D
223
+ - Cosanum
224
+ - Camptocamp R&D
225
+ - Akretion R&D
213
226
 
214
227
  Maintainers
215
- ~~~~~~~~~~~
228
+ -----------
216
229
 
217
230
  This module is maintained by the OCA.
218
231
 
@@ -1,19 +1,19 @@
1
- odoo/addons/shopfloor_mobile/README.rst,sha256=UbMcxyA0oVWCcIbuMD1pGSx2AgjwZS9Eg8ffe_3kJVo,7535
1
+ odoo/addons/shopfloor_mobile/README.rst,sha256=UmHT0U7vbLx-7twlKbc9yBMFyr-9zuYWAS6fFKVJT7I,7544
2
2
  odoo/addons/shopfloor_mobile/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- odoo/addons/shopfloor_mobile/__manifest__.py,sha256=69ve-61qicPHLsCtqdzWYi2z4RlAt_gHy9MU-d5MIpc,705
3
+ odoo/addons/shopfloor_mobile/__manifest__.py,sha256=5NRg1zBM05mcz3MRQ_S0fPLfz5gJbJAbGTAPcXceQVA,705
4
4
  odoo/addons/shopfloor_mobile/i18n/de.po,sha256=6eRN27NdcMT5a9_rC7t-L1IyssIf4d0sV8XcBlxYETU,411
5
5
  odoo/addons/shopfloor_mobile/i18n/es_AR.po,sha256=8mGWCcMew3na_BE6yzC9aGqTSHNwLq_fu1r-JnZnYGE,1149
6
6
  odoo/addons/shopfloor_mobile/i18n/it.po,sha256=Fuhk7nf_wDaq10_RJlCCe4xE6u8qKIml2r_4nUJ1O1w,412
7
7
  odoo/addons/shopfloor_mobile/i18n/pt_BR.po,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
8
  odoo/addons/shopfloor_mobile/i18n/shopfloor_mobile.pot,sha256=2nkV-O77dcHWhLBfGldb2hwKdpsp_Iq_PU5QMeyP-mo,341
9
- odoo/addons/shopfloor_mobile/readme/CONTRIBUTORS.rst,sha256=AEECRuaiP1U4xBwIQOYsHFr-Tgx2-LqBQPmFejH6OIs,392
10
- odoo/addons/shopfloor_mobile/readme/CREDITS.rst,sha256=gvM_pe6NW3J9LsH6xxFxvRsY1AY8T8fVLeRzce2RKhY,65
11
- odoo/addons/shopfloor_mobile/readme/DESCRIPTION.rst,sha256=uA0FkgekxpCEfqLjiUlpPWbe-8QKOiVDB6QvoyJ7bJg,1245
12
- odoo/addons/shopfloor_mobile/readme/HISTORY.rst,sha256=Ibf54quZVYNg74R-oWzny0XeMee1wp8T4Og1gaGo3OQ,47
13
- odoo/addons/shopfloor_mobile/readme/ROADMAP.rst,sha256=Nm8uyGJvPQWMQtYwwxt8P4WBuLLpUZjZ_p8eqTrFRbM,1726
14
- odoo/addons/shopfloor_mobile/readme/USAGE.rst,sha256=5NNHChxhLwFVo4m6XhCaSlagf_bpNaZgsF8oSGSQ2WY,677
9
+ odoo/addons/shopfloor_mobile/readme/CONTRIBUTORS.md,sha256=9fV8XRI7FHlu1rZooxvlWcoD188t7zC5Frd8eUHz3tk,421
10
+ odoo/addons/shopfloor_mobile/readme/CREDITS.md,sha256=mijiEMeb8qlUh8sbIa_3gn03LhbjHBFrlNCF_9CZELM,65
11
+ odoo/addons/shopfloor_mobile/readme/DESCRIPTION.md,sha256=tsBMHhIrbnsPP5KBIRgtnmjxPvdHhVbCmjglGgU6tOA,1225
12
+ odoo/addons/shopfloor_mobile/readme/HISTORY.md,sha256=uDTaJkR5ECI5b0x32Vuj4ONzBVvfsfMjPm20jISB5Ps,39
13
+ odoo/addons/shopfloor_mobile/readme/ROADMAP.md,sha256=GMldnYqUvyrfgwUbIjZ_68wJtHmOyE1Tb_vQZtAplOo,1741
14
+ odoo/addons/shopfloor_mobile/readme/USAGE.md,sha256=0rRYeb0UEsTSg2EiEB0WHlOGdEMX8sCJT5blDcF0fFU,618
15
15
  odoo/addons/shopfloor_mobile/static/description/icon.png,sha256=6xBPJauaFOF0KDHfHgQopSc28kKvxMaeoQFQWZtfZDo,9455
16
- odoo/addons/shopfloor_mobile/static/description/index.html,sha256=6oBWayb187QODeaw1KlSFkg9OeG8WrDXcCNA-fO59NU,18469
16
+ odoo/addons/shopfloor_mobile/static/description/index.html,sha256=zSP52hzehSed3XuUyyweJqU57UnnQwYSXuqPXGGoZ54,18351
17
17
  odoo/addons/shopfloor_mobile/static/wms/.gitignore,sha256=rQCFL3FQm3Lll35BRUETzj1HYlakdld--GvTGLPeHpE,214
18
18
  odoo/addons/shopfloor_mobile/static/wms/src/screen.esm.js,sha256=77TQgYSfpnErCuhV9FjQujMFlrKU7EZ6OdeTJnZutV8,1461
19
19
  odoo/addons/shopfloor_mobile/static/wms/src/wms_utils.esm.js,sha256=89d19IbDlfFavsgsinKfEtyaSTbRZduITxwxAHnnLbE,12178
@@ -53,7 +53,7 @@ odoo/addons/shopfloor_mobile/static/wms/src/scenario/location_content_transfer.e
53
53
  odoo/addons/shopfloor_mobile/static/wms/src/scenario/single_pack_transfer.esm.js,sha256=ipc8fKBtv4_KRZBEBV5pmmefjtHnSOarx5KUnfyjNoE,6114
54
54
  odoo/addons/shopfloor_mobile/static/wms/src/scenario/zone_picking.esm.js,sha256=mNcE39AtO9vPfjSrNybjV9hiNoSErMyJ0ev1PgOOxd0,44849
55
55
  odoo/addons/shopfloor_mobile/templates/assets.xml,sha256=K9Tu1nUq_t8WquSEV4GHigPd5QuYY-2rqbt4V9sWkxs,7993
56
- odoo_addon_shopfloor_mobile-18.0.1.0.0.3.dist-info/METADATA,sha256=yDGuulMEomM9O7NwoEhl7EY6f3_TP2mhUGQ2WgYs1x0,8223
57
- odoo_addon_shopfloor_mobile-18.0.1.0.0.3.dist-info/WHEEL,sha256=ZhOvUsYhy81Dx67gN3TV0RchQWBIIzutDZaJODDg2Vo,81
58
- odoo_addon_shopfloor_mobile-18.0.1.0.0.3.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
59
- odoo_addon_shopfloor_mobile-18.0.1.0.0.3.dist-info/RECORD,,
56
+ odoo_addon_shopfloor_mobile-18.0.1.0.1.dist-info/METADATA,sha256=hcd_wcQGd53whR2AclzUUOdX__BMFxXqCA9yVKaok9k,8230
57
+ odoo_addon_shopfloor_mobile-18.0.1.0.1.dist-info/WHEEL,sha256=ZhOvUsYhy81Dx67gN3TV0RchQWBIIzutDZaJODDg2Vo,81
58
+ odoo_addon_shopfloor_mobile-18.0.1.0.1.dist-info/top_level.txt,sha256=QE6RBQ0QX5f4eFuUcGgU5Kbq1A_qJcDs-e_vpr6pmfU,4
59
+ odoo_addon_shopfloor_mobile-18.0.1.0.1.dist-info/RECORD,,
@@ -1,12 +0,0 @@
1
- * Simone Orsi <simahawk@gmail.com>
2
- * Thierry Ducrest <thierry.ducrest@camptocamp.com>
3
- * Guewen Baconnier <guewen.baconnier@camptocamp.com>
4
- * Raphaël Reverdy <raphael.reverdy@akretion.com>
5
- * Sébastien Beau <sebastien.beau@akretion.com>
6
- * Jacques-Etienne Baudoux <je@bcim.be>
7
-
8
- Design
9
- ~~~~~~
10
-
11
- * Joël Grand-Guillaume <joel.grandguillaume@camptocamp.com>
12
- * Jacques-Etienne Baudoux <je@bcim.be>
@@ -1,5 +0,0 @@
1
- **Financial support**
2
-
3
- * Cosanum
4
- * Camptocamp R&D
5
- * Akretion R&D
@@ -1,31 +0,0 @@
1
- Frontend for Shopfloor app.
2
-
3
- The work is organized in scenario.
4
- A scenario represents a process in the warehouse (eg: receive, deliver).
5
- The app allows to start each process through the main menu.
6
-
7
- Each scenario is linked to a specific menu item which can be configured in the backend.
8
- Each scenario drives you through the work to do.
9
-
10
-
11
- Tech details
12
- ~~~~~~~~~~~~
13
-
14
- * This frontend is built on top of `VueJS <vuejs.org>`_ and `VuetifyJS <vuetifyjs.com/>`_
15
- and relies on `shopfloor` module that exposes REST API in Odoo
16
- (based in turn on `base_rest <https://github.com/OCA/rest-framework/tree/13.0/base_rest>`_).
17
-
18
- * The whole business logic comes from `shopfloor` module,
19
- this module takes care of providing a nice and reactive UI to work with.
20
-
21
- * No Odoo JS is used, no assets machinery used.
22
-
23
- Static assets are loaded straight, served by a specific controller.
24
- This app is a Single Page App, hence resources are loaded only once.
25
-
26
- The version of the module appended to the URL of each resources
27
- makes sure it's not cached when the version changes.
28
-
29
- * When developing you can use a demo mode which allows to define interactive scenario
30
- with pure JS demo data, without interacting with Odoo.
31
- Nothing to deal with Odoo demo data.
@@ -1,29 +0,0 @@
1
- * Split module by scenario
2
- * Improve documentation and demo data
3
- * Document each component
4
- * Document demo mode
5
- * Find / create a nice icon
6
- * Finish base translations (move all UI strings to translatable terms)
7
- * Use SCSS
8
- * Refactor states definition
9
-
10
- States are now part of the scenario data. They should be specific objects with their own class.
11
- They should also provide all the actions that should be displayed w/ their handlers when needed.
12
- Actions can be popup actions or buttons at the bottom of the screen.
13
- The tricky part here could be how to register this states for the given component.
14
- Today states have access to the full object of the scenario component as they are part of it.
15
- `_get_state_spec` could probably lookup for registered states
16
- (eg: when you register a component in the registry you should provide states as well).
17
- When we'll have states in this fashion we should also consider if they should provide their own template.
18
- This way the component template will hold only the generic bits of the scenario.
19
-
20
- * Back buttons should be smarter
21
-
22
- In some cases getting back using history is fine but very often this could lead to outdated data display.
23
- To mitigate this in particular scenario's steps, custom handlers for the back action have been implemented.
24
- For instance, in cluster_picking when you hit back on manual selection it forces the state to go to start and reload.
25
- For starting we should provide `on_back` property to all states where we want to display it
26
- (no more specific check on the state to display this button).
27
- This part is also related to "Refactor states definition".
28
-
29
- * Go through `_.forEach` and similar calls to replace them w/ vanilla JS (eg: `.map()`)
@@ -1,34 +0,0 @@
1
- Pre-requisites
2
- ~~~~~~~~~~~~~~
3
-
4
- * Your Odoo instance is accessible via mobile device
5
- * You have an API Key configured
6
-
7
- Start the app
8
- ~~~~~~~~~~~~~
9
-
10
- * Go to "Inventory -> Configuration -> Shopfloor -> Shopfloor App"
11
- * In the login screen fill in your API key
12
- * Hit "Login"
13
-
14
- Select a profile
15
- ~~~~~~~~~~~~~~~~
16
-
17
- Several profiles can be configured in the backend,
18
- you must choose one before starting.
19
-
20
- * Tap on "Configure profile"
21
- * Select a profile
22
-
23
- This will load all available menu items for the selected profile.
24
-
25
- Change language
26
- ~~~~~~~~~~~~~~~
27
-
28
- * Go to "Settings -> Language"
29
- * Select a language
30
-
31
- Customization
32
- ~~~~~~~~~~~~~
33
-
34
- Please refer to `shopfloor_mobile_custom_example`.