Mercurial > libervia-backend
annotate libervia/cli/constants.py @ 4180:b86912d3fd33
plugin IP: fix use of legacy URL + coroutine use:
An https:/salut-a-toi.org URL was used to retrieve external IP, but it's not valid
anymore, resulting in an exception. This feature is currently disabled.
Also moved several methods from legacy inline callbacks to coroutines.
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 09 Dec 2023 14:30:54 +0100 |
parents | 849721e1563b |
children | 0f8ea0768a3b |
rev | line source |
---|---|
3137 | 1 #!/usr/bin/env python3 |
2 | |
970
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
3 |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
4 # Primitivus: a SAT frontend |
3479 | 5 # Copyright (C) 2009-2021 Jérôme Poisson (goffi@goffi.org) |
970
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
6 |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
7 # This program is free software: you can redistribute it and/or modify |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
8 # it under the terms of the GNU Affero General Public License as published by |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
9 # the Free Software Foundation, either version 3 of the License, or |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
10 # (at your option) any later version. |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
11 |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
12 # This program is distributed in the hope that it will be useful, |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
15 # GNU Affero General Public License for more details. |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
16 |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
17 # You should have received a copy of the GNU Affero General Public License |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
18 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
19 |
4074
26b7ed2817da
refactoring: rename `sat_frontends` to `libervia.frontends`
Goffi <goffi@goffi.org>
parents:
4071
diff
changeset
|
20 from libervia.frontends.quick_frontend import constants |
4071
4b842c1fb686
refactoring: renamed `sat` package to `libervia.backend`
Goffi <goffi@goffi.org>
parents:
3661
diff
changeset
|
21 from libervia.backend.tools.common.ansi import ANSI as A |
4129 | 22 from rich.theme import Theme |
970
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
23 |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
24 |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
25 class Const(constants.Const): |
2e052998c7eb
jp: using C.APP_URL for application url
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
26 |
3555
53fec6309fa3
cli: update constants to use new name
Goffi <goffi@goffi.org>
parents:
3479
diff
changeset
|
27 APP_NAME = "Libervia CLI" |
53fec6309fa3
cli: update constants to use new name
Goffi <goffi@goffi.org>
parents:
3479
diff
changeset
|
28 APP_COMPONENT = "CLI" |
53fec6309fa3
cli: update constants to use new name
Goffi <goffi@goffi.org>
parents:
3479
diff
changeset
|
29 APP_NAME_ALT = "jp" |
53fec6309fa3
cli: update constants to use new name
Goffi <goffi@goffi.org>
parents:
3479
diff
changeset
|
30 APP_NAME_FILE = "libervia_cli" |
53fec6309fa3
cli: update constants to use new name
Goffi <goffi@goffi.org>
parents:
3479
diff
changeset
|
31 CONFIG_SECTION = APP_COMPONENT.lower() |
3028 | 32 PLUGIN_CMD = "commands" |
33 PLUGIN_OUTPUT = "outputs" | |
34 OUTPUT_TEXT = "text" # blob of unicode text | |
35 OUTPUT_DICT = "dict" # simple key/value dictionary | |
36 OUTPUT_LIST = "list" | |
37 OUTPUT_LIST_DICT = "list_dict" # list of dictionaries | |
38 OUTPUT_DICT_DICT = "dict_dict" # dict of nested dictionaries | |
39 OUTPUT_MESS = "mess" # messages (chat) | |
40 OUTPUT_COMPLEX = "complex" # complex data (e.g. multi-level dictionary) | |
41 OUTPUT_XML = "xml" # XML node (as unicode string) | |
42 OUTPUT_LIST_XML = "list_xml" # list of XML nodes (as unicode strings) | |
43 OUTPUT_XMLUI = "xmlui" # XMLUI as unicode string | |
44 OUTPUT_LIST_XMLUI = "list_xmlui" # list of XMLUI (as unicode strings) | |
2624
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
45 OUTPUT_TYPES = ( |
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
46 OUTPUT_TEXT, |
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
47 OUTPUT_DICT, |
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
48 OUTPUT_LIST, |
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
49 OUTPUT_LIST_DICT, |
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
50 OUTPUT_DICT_DICT, |
2707
b156b78b8f9a
jp (output): new OUTPUT_MESS output to handle data containing chat messages
Goffi <goffi@goffi.org>
parents:
2624
diff
changeset
|
51 OUTPUT_MESS, |
2624
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
52 OUTPUT_COMPLEX, |
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
53 OUTPUT_XML, |
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
54 OUTPUT_LIST_XML, |
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
55 OUTPUT_XMLUI, |
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
56 OUTPUT_LIST_XMLUI, |
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
57 ) |
3640
f4c02bdb2d91
CLI: use global constants for output names
Goffi <goffi@goffi.org>
parents:
3555
diff
changeset
|
58 OUTPUT_NAME_SIMPLE = "simple" |
f4c02bdb2d91
CLI: use global constants for output names
Goffi <goffi@goffi.org>
parents:
3555
diff
changeset
|
59 OUTPUT_NAME_XML = "xml" |
f4c02bdb2d91
CLI: use global constants for output names
Goffi <goffi@goffi.org>
parents:
3555
diff
changeset
|
60 OUTPUT_NAME_XML_RAW = "xml-raw" |
f4c02bdb2d91
CLI: use global constants for output names
Goffi <goffi@goffi.org>
parents:
3555
diff
changeset
|
61 OUTPUT_NAME_JSON = "json" |
f4c02bdb2d91
CLI: use global constants for output names
Goffi <goffi@goffi.org>
parents:
3555
diff
changeset
|
62 OUTPUT_NAME_JSON_RAW = "json-raw" |
1951
ac89f455fcbf
jp: added consts for exit codes, not used yet
Goffi <goffi@goffi.org>
parents:
1950
diff
changeset
|
63 |
2532 | 64 # Pubsub options flags |
3028 | 65 SERVICE = "service" # service required |
66 NODE = "node" # node required | |
67 ITEM = "item" # item required | |
68 SINGLE_ITEM = "single_item" # only one item is allowed | |
69 MULTI_ITEMS = "multi_items" # multiple items are allowed | |
70 NO_MAX = "no_max" # don't add --max option for multi items | |
3600
1709f0a78f50
jp (base): add flag for `use_pubsub` to add cache skipping option
Goffi <goffi@goffi.org>
parents:
3555
diff
changeset
|
71 CACHE = "cache" # add cache control flag |
2532 | 72 |
2232
4f389486667d
jp: added constant to handle ANSI code for header and subheaders
Goffi <goffi@goffi.org>
parents:
2190
diff
changeset
|
73 # ANSI |
4f389486667d
jp: added constant to handle ANSI code for header and subheaders
Goffi <goffi@goffi.org>
parents:
2190
diff
changeset
|
74 A_HEADER = A.BOLD + A.FG_YELLOW |
4f389486667d
jp: added constant to handle ANSI code for header and subheaders
Goffi <goffi@goffi.org>
parents:
2190
diff
changeset
|
75 A_SUBHEADER = A.BOLD + A.FG_RED |
2485
512c443a58ba
jp (forums): forums handling commands, first draft
Goffi <goffi@goffi.org>
parents:
2483
diff
changeset
|
76 # A_LEVEL_COLORS may be used to cycle on colors according to depth of data |
512c443a58ba
jp (forums): forums handling commands, first draft
Goffi <goffi@goffi.org>
parents:
2483
diff
changeset
|
77 A_LEVEL_COLORS = (A_HEADER, A.BOLD + A.FG_BLUE, A.FG_MAGENTA, A.FG_CYAN) |
2278
489efbda377c
jp (input): input command first draft:
Goffi <goffi@goffi.org>
parents:
2268
diff
changeset
|
78 A_SUCCESS = A.BOLD + A.FG_GREEN |
489efbda377c
jp (input): input command first draft:
Goffi <goffi@goffi.org>
parents:
2268
diff
changeset
|
79 A_FAILURE = A.BOLD + A.FG_RED |
3040 | 80 A_WARNING = A.BOLD + A.FG_RED |
2624
56f94936df1e
code style reformatting using black
Goffi <goffi@goffi.org>
parents:
2601
diff
changeset
|
81 # A_PROMPT_* is for shell |
2355 | 82 A_PROMPT_PATH = A.BOLD + A.FG_CYAN |
2309
c7a72b75232b
jp (shell): shell command (REPL mode), first draft:
Goffi <goffi@goffi.org>
parents:
2295
diff
changeset
|
83 A_PROMPT_SUF = A.BOLD |
2505
8e770ac05b0c
jp (file): file sharing + improvments:
Goffi <goffi@goffi.org>
parents:
2485
diff
changeset
|
84 # Files |
8e770ac05b0c
jp (file): file sharing + improvments:
Goffi <goffi@goffi.org>
parents:
2485
diff
changeset
|
85 A_DIRECTORY = A.BOLD + A.FG_CYAN |
8e770ac05b0c
jp (file): file sharing + improvments:
Goffi <goffi@goffi.org>
parents:
2485
diff
changeset
|
86 A_FILE = A.FG_WHITE |
4129 | 87 |
88 # rich | |
89 THEME_DEFAULT = Theme({ | |
90 "priority_low": "green", | |
91 "priority_medium": "yellow", | |
92 "priority_high": "bold magenta", | |
93 "priority_urgent": "bold red", | |
94 "notif_title": "bold", | |
4143 | 95 "shortcut": "bold underline" |
4129 | 96 }) |