PyDIET 0.9.3__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.
Files changed (177) hide show
  1. pydiet/__init__.py +12 -0
  2. pydiet/api_client/__init__.py +6 -0
  3. pydiet/api_client/client.py +57 -0
  4. pydiet/cmd/__init__.py +9 -0
  5. pydiet/cmd/start.py +107 -0
  6. pydiet/data/data_config.toml +242 -0
  7. pydiet/data/description.txt +1 -0
  8. pydiet/data/instruments/description.txt +1 -0
  9. pydiet/data/instruments/megacam/default +0 -0
  10. pydiet/data/instruments/megacam/description.txt +1 -0
  11. pydiet/data/instruments/megacam/detector/description.txt +1 -0
  12. pydiet/data/instruments/megacam/detector/qe/MegaCam_QE.average.fits +0 -0
  13. pydiet/data/instruments/megacam/detector/qe/description.txt +2 -0
  14. pydiet/data/instruments/megacam/filters/CaHK.MP9303.fits +0 -0
  15. pydiet/data/instruments/megacam/filters/Ha.MP9603.fits +0 -0
  16. pydiet/data/instruments/megacam/filters/HaOFF.MP9604.fits +0 -0
  17. pydiet/data/instruments/megacam/filters/M4112.MP9403.fits +0 -0
  18. pydiet/data/instruments/megacam/filters/M4376.MP9404.fits +0 -0
  19. pydiet/data/instruments/megacam/filters/OIII.MP9501.fits +0 -0
  20. pydiet/data/instruments/megacam/filters/OIIIOFF.MP9502.fits +0 -0
  21. pydiet/data/instruments/megacam/filters/description.txt +1 -0
  22. pydiet/data/instruments/megacam/filters/g.MP9402.fits +0 -0
  23. pydiet/data/instruments/megacam/filters/gri.MP9605.fits +0 -0
  24. pydiet/data/instruments/megacam/filters/i.MP9703.fits +0 -0
  25. pydiet/data/instruments/megacam/filters/r.MP9602.fits +0 -0
  26. pydiet/data/instruments/megacam/filters/u.MP9302.fits +0 -0
  27. pydiet/data/instruments/megacam/filters/z.MP9901.fits +0 -0
  28. pydiet/data/instruments/megacam/optics/description.txt +2 -0
  29. pydiet/data/instruments/megacam/optics/transmission/MegaPrime_transmission.fits +0 -0
  30. pydiet/data/instruments/megacam/optics/transmission/description.txt +2 -0
  31. pydiet/data/instruments/wircam/description.txt +1 -0
  32. pydiet/data/instruments/wircam/detector/description.txt +1 -0
  33. pydiet/data/instruments/wircam/detector/qe/WIRCam_QE.average.fits +0 -0
  34. pydiet/data/instruments/wircam/detector/qe/description.txt +2 -0
  35. pydiet/data/instruments/wircam/filters/BrG.WC8305.fits +0 -0
  36. pydiet/data/instruments/wircam/filters/CH4Off.WC8204.fits +0 -0
  37. pydiet/data/instruments/wircam/filters/CH4On.WC8203.fits +0 -0
  38. pydiet/data/instruments/wircam/filters/CO.WC8306.fits +0 -0
  39. pydiet/data/instruments/wircam/filters/H.WC8201.fits +0 -0
  40. pydiet/data/instruments/wircam/filters/H.WC8202.fits +0 -0
  41. pydiet/data/instruments/wircam/filters/H2.WC8304.fits +0 -0
  42. pydiet/data/instruments/wircam/filters/J.WC8101.fits +0 -0
  43. pydiet/data/instruments/wircam/filters/J.WC8103.fits +0 -0
  44. pydiet/data/instruments/wircam/filters/Kcont.WC8303.fits +0 -0
  45. pydiet/data/instruments/wircam/filters/Ks.WC8301.fits +0 -0
  46. pydiet/data/instruments/wircam/filters/Ks.WC8302.fits +0 -0
  47. pydiet/data/instruments/wircam/filters/LowOH1.WC8104.fits +0 -0
  48. pydiet/data/instruments/wircam/filters/LowOH2.WC8102.fits +0 -0
  49. pydiet/data/instruments/wircam/filters/W.WC8105.fits +0 -0
  50. pydiet/data/instruments/wircam/filters/Y.WC8002.fits +0 -0
  51. pydiet/data/instruments/wircam/filters/description.txt +1 -0
  52. pydiet/data/instruments/wircam/optics/description.txt +2 -0
  53. pydiet/data/instruments/wircam/optics/transmission/WIRCam_transmission.fits +0 -0
  54. pydiet/data/instruments/wircam/optics/transmission/description.txt +2 -0
  55. pydiet/data/sites/description.txt +1 -0
  56. pydiet/data/sites/mko/default +0 -0
  57. pydiet/data/sites/mko/description.txt +2 -0
  58. pydiet/data/sites/mko/emission/MKO_emission.bright.AM1.0.fits +0 -0
  59. pydiet/data/sites/mko/emission/MKO_emission.bright.AM1.1.fits +0 -0
  60. pydiet/data/sites/mko/emission/MKO_emission.bright.AM1.2.fits +0 -0
  61. pydiet/data/sites/mko/emission/MKO_emission.bright.AM1.3.fits +0 -0
  62. pydiet/data/sites/mko/emission/MKO_emission.bright.AM1.4.fits +0 -0
  63. pydiet/data/sites/mko/emission/MKO_emission.bright.AM1.5.fits +0 -0
  64. pydiet/data/sites/mko/emission/MKO_emission.bright.AM1.6.fits +0 -0
  65. pydiet/data/sites/mko/emission/MKO_emission.bright.AM1.7.fits +0 -0
  66. pydiet/data/sites/mko/emission/MKO_emission.bright.AM1.8.fits +0 -0
  67. pydiet/data/sites/mko/emission/MKO_emission.bright.AM1.9.fits +0 -0
  68. pydiet/data/sites/mko/emission/MKO_emission.bright.AM2.0.fits +0 -0
  69. pydiet/data/sites/mko/emission/MKO_emission.bright.AM2.5.fits +0 -0
  70. pydiet/data/sites/mko/emission/MKO_emission.bright.AM3.0.fits +0 -0
  71. pydiet/data/sites/mko/emission/MKO_emission.dark.AM1.0.fits +0 -0
  72. pydiet/data/sites/mko/emission/MKO_emission.dark.AM1.1.fits +0 -0
  73. pydiet/data/sites/mko/emission/MKO_emission.dark.AM1.2.fits +0 -0
  74. pydiet/data/sites/mko/emission/MKO_emission.dark.AM1.3.fits +0 -0
  75. pydiet/data/sites/mko/emission/MKO_emission.dark.AM1.4.fits +0 -0
  76. pydiet/data/sites/mko/emission/MKO_emission.dark.AM1.5.fits +0 -0
  77. pydiet/data/sites/mko/emission/MKO_emission.dark.AM1.6.fits +0 -0
  78. pydiet/data/sites/mko/emission/MKO_emission.dark.AM1.7.fits +0 -0
  79. pydiet/data/sites/mko/emission/MKO_emission.dark.AM1.8.fits +0 -0
  80. pydiet/data/sites/mko/emission/MKO_emission.dark.AM1.9.fits +0 -0
  81. pydiet/data/sites/mko/emission/MKO_emission.dark.AM2.0.fits +0 -0
  82. pydiet/data/sites/mko/emission/MKO_emission.dark.AM2.5.fits +0 -0
  83. pydiet/data/sites/mko/emission/MKO_emission.dark.AM3.0.fits +0 -0
  84. pydiet/data/sites/mko/emission/MKO_emission.grey.AM1.0.fits +0 -0
  85. pydiet/data/sites/mko/emission/MKO_emission.grey.AM1.1.fits +0 -0
  86. pydiet/data/sites/mko/emission/MKO_emission.grey.AM1.2.fits +0 -0
  87. pydiet/data/sites/mko/emission/MKO_emission.grey.AM1.3.fits +0 -0
  88. pydiet/data/sites/mko/emission/MKO_emission.grey.AM1.4.fits +0 -0
  89. pydiet/data/sites/mko/emission/MKO_emission.grey.AM1.5.fits +0 -0
  90. pydiet/data/sites/mko/emission/MKO_emission.grey.AM1.6.fits +0 -0
  91. pydiet/data/sites/mko/emission/MKO_emission.grey.AM1.7.fits +0 -0
  92. pydiet/data/sites/mko/emission/MKO_emission.grey.AM1.8.fits +0 -0
  93. pydiet/data/sites/mko/emission/MKO_emission.grey.AM1.9.fits +0 -0
  94. pydiet/data/sites/mko/emission/MKO_emission.grey.AM2.0.fits +0 -0
  95. pydiet/data/sites/mko/emission/MKO_emission.grey.AM2.5.fits +0 -0
  96. pydiet/data/sites/mko/emission/MKO_emission.grey.AM3.0.fits +0 -0
  97. pydiet/data/sites/mko/emission/description.txt +5 -0
  98. pydiet/data/sites/mko/transmission/MKO_transmission.AM1.0.fits +0 -0
  99. pydiet/data/sites/mko/transmission/MKO_transmission.AM1.1.fits +0 -0
  100. pydiet/data/sites/mko/transmission/MKO_transmission.AM1.2.fits +0 -0
  101. pydiet/data/sites/mko/transmission/MKO_transmission.AM1.3.fits +0 -0
  102. pydiet/data/sites/mko/transmission/MKO_transmission.AM1.4.fits +0 -0
  103. pydiet/data/sites/mko/transmission/MKO_transmission.AM1.5.fits +0 -0
  104. pydiet/data/sites/mko/transmission/MKO_transmission.AM1.6.fits +0 -0
  105. pydiet/data/sites/mko/transmission/MKO_transmission.AM1.7.fits +0 -0
  106. pydiet/data/sites/mko/transmission/MKO_transmission.AM1.8.fits +0 -0
  107. pydiet/data/sites/mko/transmission/MKO_transmission.AM1.9.fits +0 -0
  108. pydiet/data/sites/mko/transmission/MKO_transmission.AM2.0.fits +0 -0
  109. pydiet/data/sites/mko/transmission/MKO_transmission.AM2.5.fits +0 -0
  110. pydiet/data/sites/mko/transmission/MKO_transmission.AM3.0.fits +0 -0
  111. pydiet/data/sites/mko/transmission/MKO_transmission.AM3.5.fits +0 -0
  112. pydiet/data/sites/mko/transmission/MKO_transmission.AM4.0.fits +0 -0
  113. pydiet/data/sites/mko/transmission/MKO_transmission.AM4.5.fits +0 -0
  114. pydiet/data/sites/mko/transmission/MKO_transmission.AM5.0.fits +0 -0
  115. pydiet/data/sites/mko/transmission/description.txt +5 -0
  116. pydiet/data/telescopes/cfht/default +0 -0
  117. pydiet/data/telescopes/cfht/description.txt +1 -0
  118. pydiet/data/telescopes/cfht/emission/description.txt +2 -0
  119. pydiet/data/telescopes/cfht/transmission/CFHT_M1_transmission.fits +0 -0
  120. pydiet/data/telescopes/cfht/transmission/description.txt +1 -0
  121. pydiet/data/telescopes/description.txt +1 -0
  122. pydiet/package.py +55 -0
  123. pydiet/py.typed +0 -0
  124. pydiet/server/__init__.py +9 -0
  125. pydiet/server/app.py +369 -0
  126. pydiet/server/config/__init__.py +51 -0
  127. pydiet/server/config/config.py +330 -0
  128. pydiet/server/config/fields.py +49 -0
  129. pydiet/server/config/settings.py +166 -0
  130. pydiet/server/data.py +31 -0
  131. pydiet/server/datafiles.py +367 -0
  132. pydiet/server/image.py +342 -0
  133. pydiet/server/models/__init__.py +34 -0
  134. pydiet/server/models/dataconfig.py +195 -0
  135. pydiet/server/models/default.py +9 -0
  136. pydiet/server/models/exceptions.py +9 -0
  137. pydiet/server/models/instrument.py +314 -0
  138. pydiet/server/models/query.py +172 -0
  139. pydiet/server/models/response.py +97 -0
  140. pydiet/server/models/types.py +35 -0
  141. pydiet/server/photsys.py +71 -0
  142. pydiet/server/response.py +237 -0
  143. pydiet/server/types/__init__.py +8 -0
  144. pydiet/server/types/quantity.py +532 -0
  145. pydiet/server/types/string.py +318 -0
  146. pydiet/templates/common/base.html +80 -0
  147. pydiet/templates/common/plot_filter.html +17 -0
  148. pydiet/templates/common/privacy.html +132 -0
  149. pydiet/templates/common/settings.html +23 -0
  150. pydiet/templates/common/terms.html +101 -0
  151. pydiet/templates/megacam/etc_form.html +319 -0
  152. pydiet/templates/megacam/etc_results.html +190 -0
  153. pydiet/templates/wircam/etc_form.html +319 -0
  154. pydiet/templates/wircam/etc_results.html +190 -0
  155. pydiet/web_client/css/style.css +221 -0
  156. pydiet/web_client/dist/pydiet.js +31 -0
  157. pydiet/web_client/images/logo.svg +6 -0
  158. pydiet/web_client/images/megacam/background.jpg +0 -0
  159. pydiet/web_client/images/megacam/logo.png +0 -0
  160. pydiet/web_client/images/wircam/background.jpg +0 -0
  161. pydiet/web_client/images/wircam/logo.png +0 -0
  162. pydiet/web_client/js/dom.js +51 -0
  163. pydiet/web_client/js/etc.js +63 -0
  164. pydiet/web_client/js/fetch.js +49 -0
  165. pydiet/web_client/js/instrument.js +62 -0
  166. pydiet/web_client/js/main.js +15 -0
  167. pydiet/web_client/js/plot.js +88 -0
  168. pydiet/web_client/js/settings.js +57 -0
  169. pydiet/web_client/js/theme.js +43 -0
  170. pydiet/web_client/js/url.js +12 -0
  171. pydiet/web_client/jsdoc.json +20 -0
  172. pydiet/web_client/package.json +83 -0
  173. pydiet-0.9.3.dist-info/METADATA +118 -0
  174. pydiet-0.9.3.dist-info/RECORD +177 -0
  175. pydiet-0.9.3.dist-info/WHEEL +4 -0
  176. pydiet-0.9.3.dist-info/entry_points.txt +5 -0
  177. pydiet-0.9.3.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,221 @@
1
+ /* Custom CSS for the PyDIET webapp
2
+ * Copyright CEA/CFHT/CNRS/UParisSaclay
3
+ * Licensed under MIT
4
+ */
5
+
6
+ /*
7
+ * Prevent flashing for large latencies
8
+ * ------------------------------------
9
+ */
10
+
11
+ ion-app:not(:defined),
12
+ ion-page:not(:defined),
13
+ ion-content:not(:defined),
14
+ ion-header:not(:defined),
15
+ ion-toolbar:not(:defined),
16
+ ion-title:not(:defined) {
17
+ visibility: hidden;
18
+ }
19
+
20
+ /*
21
+ * Light Colors
22
+ * -------------------------------------------
23
+ */
24
+
25
+ body {
26
+ --ion-color-secondary-contrast: #000000;
27
+ }
28
+
29
+ /*
30
+ * Dark Colors
31
+ * -------------------------------------------
32
+ */
33
+
34
+ body.dark {
35
+ --ion-color-primary: #428cff;
36
+ --ion-color-primary-rgb: 66, 140, 255;
37
+ --ion-color-primary-contrast: #ffffff;
38
+ --ion-color-primary-contrast-rgb: 255, 255, 255;
39
+ --ion-color-primary-shade: #3a7be0;
40
+ --ion-color-primary-tint: #5598ff;
41
+
42
+ --ion-color-secondary: #50c8ff;
43
+ --ion-color-secondary-rgb: 80, 200, 255;
44
+ --ion-color-secondary-contrast: #ffffff;
45
+ --ion-color-secondary-contrast-rgb: 255, 255, 255;
46
+ --ion-color-secondary-shade: #46b0e0;
47
+ --ion-color-secondary-tint: #62ceff;
48
+
49
+ --ion-color-tertiary: #6a64ff;
50
+ --ion-color-tertiary-rgb: 106, 100, 255;
51
+ --ion-color-tertiary-contrast: #ffffff;
52
+ --ion-color-tertiary-contrast-rgb: 255, 255, 255;
53
+ --ion-color-tertiary-shade: #5d58e0;
54
+ --ion-color-tertiary-tint: #7974ff;
55
+
56
+ --ion-color-success: #2fdf75;
57
+ --ion-color-success-rgb: 47, 223, 117;
58
+ --ion-color-success-contrast: #000000;
59
+ --ion-color-success-contrast-rgb: 0, 0, 0;
60
+ --ion-color-success-shade: #29c467;
61
+ --ion-color-success-tint: #44e283;
62
+
63
+ --ion-color-warning: #ffd534;
64
+ --ion-color-warning-rgb: 255, 213, 52;
65
+ --ion-color-warning-contrast: #000000;
66
+ --ion-color-warning-contrast-rgb: 0, 0, 0;
67
+ --ion-color-warning-shade: #e0bb2e;
68
+ --ion-color-warning-tint: #ffd948;
69
+
70
+ --ion-color-danger: #ff4961;
71
+ --ion-color-danger-rgb: 255, 73, 97;
72
+ --ion-color-danger-contrast: #ffffff;
73
+ --ion-color-danger-contrast-rgb: 255, 255, 255;
74
+ --ion-color-danger-shade: #e04055;
75
+ --ion-color-danger-tint: #ff5b71;
76
+
77
+ --ion-color-dark: #f4f5f8;
78
+ --ion-color-dark-rgb: 244, 245, 248;
79
+ --ion-color-dark-contrast: #000000;
80
+ --ion-color-dark-contrast-rgb: 0, 0, 0;
81
+ --ion-color-dark-shade: #d7d8da;
82
+ --ion-color-dark-tint: #f5f6f9;
83
+
84
+ --ion-color-medium: #989aa2;
85
+ --ion-color-medium-rgb: 152, 154, 162;
86
+ --ion-color-medium-contrast: #000000;
87
+ --ion-color-medium-contrast-rgb: 0, 0, 0;
88
+ --ion-color-medium-shade: #86888f;
89
+ --ion-color-medium-tint: #a2a4ab;
90
+
91
+ --ion-color-light: #222428;
92
+ --ion-color-light-rgb: 34, 36, 40;
93
+ --ion-color-light-contrast: #ffffff;
94
+ --ion-color-light-contrast-rgb: 255, 255, 255;
95
+ --ion-color-light-shade: #1e2023;
96
+ --ion-color-light-tint: #383a3e;
97
+ }
98
+
99
+ /*
100
+ * iOS Dark Theme
101
+ * -------------------------------------------
102
+ */
103
+
104
+ .ios body.dark {
105
+ --ion-background-color: #000000;
106
+ --ion-background-color-rgb: 0, 0, 0;
107
+
108
+ --ion-text-color: #ffffff;
109
+ --ion-text-color-rgb: 255, 255, 255;
110
+
111
+ --ion-color-step-50: #0d0d0d;
112
+ --ion-color-step-100: #1a1a1a;
113
+ --ion-color-step-150: #262626;
114
+ --ion-color-step-200: #333333;
115
+ --ion-color-step-250: #404040;
116
+ --ion-color-step-300: #4d4d4d;
117
+ --ion-color-step-350: #595959;
118
+ --ion-color-step-400: #666666;
119
+ --ion-color-step-450: #737373;
120
+ --ion-color-step-500: #808080;
121
+ --ion-color-step-550: #8c8c8c;
122
+ --ion-color-step-600: #999999;
123
+ --ion-color-step-650: #a6a6a6;
124
+ --ion-color-step-700: #b3b3b3;
125
+ --ion-color-step-750: #bfbfbf;
126
+ --ion-color-step-800: #cccccc;
127
+ --ion-color-step-850: #d9d9d9;
128
+ --ion-color-step-900: #e6e6e6;
129
+ --ion-color-step-950: #f2f2f2;
130
+
131
+ --ion-item-background: #000000;
132
+
133
+ --ion-card-background: #1c1c1d;
134
+ }
135
+
136
+ .ios body.dark ion-modal {
137
+ --ion-background-color: var(--ion-color-step-100);
138
+ --ion-toolbar-background: var(--ion-color-step-150);
139
+ --ion-toolbar-border-color: var(--ion-color-step-250);
140
+ --ion-item-background: var(--ion-color-step-150);
141
+ }
142
+
143
+ /*
144
+ * Material Design Dark Theme
145
+ * -------------------------------------------
146
+ */
147
+
148
+ .md body.dark {
149
+ --ion-background-color: #121212;
150
+ --ion-background-color-rgb: 18, 18, 18;
151
+
152
+ --ion-text-color: #ffffff;
153
+ --ion-text-color-rgb: 255, 255, 255;
154
+
155
+ --ion-border-color: #222222;
156
+
157
+ --ion-color-step-50: #1e1e1e;
158
+ --ion-color-step-100: #2a2a2a;
159
+ --ion-color-step-150: #363636;
160
+ --ion-color-step-200: #414141;
161
+ --ion-color-step-250: #4d4d4d;
162
+ --ion-color-step-300: #595959;
163
+ --ion-color-step-350: #656565;
164
+ --ion-color-step-400: #717171;
165
+ --ion-color-step-450: #7d7d7d;
166
+ --ion-color-step-500: #898989;
167
+ --ion-color-step-550: #949494;
168
+ --ion-color-step-600: #a0a0a0;
169
+ --ion-color-step-650: #acacac;
170
+ --ion-color-step-700: #b8b8b8;
171
+ --ion-color-step-750: #c4c4c4;
172
+ --ion-color-step-800: #d0d0d0;
173
+ --ion-color-step-850: #dbdbdb;
174
+ --ion-color-step-900: #e7e7e7;
175
+ --ion-color-step-950: #f3f3f3;
176
+
177
+ --ion-item-background: #1e1e1e;
178
+
179
+ --ion-toolbar-background: #1f1f1f;
180
+
181
+ --ion-tab-bar-background: #1f1f1f;
182
+
183
+ --ion-card-background: #1e1e1e;
184
+ }
185
+
186
+ body.dark ion-toolbar ion-item.md {
187
+ --ion-item-background: #1f1f1f;
188
+ }
189
+
190
+ /*
191
+ ion-content {
192
+ --offset-top: -64px!important;
193
+ }
194
+ ion-picker-column {
195
+ height: 100px;
196
+ }
197
+ */
198
+
199
+ /*
200
+ * Legal stuff
201
+ * -----------
202
+ */
203
+
204
+ .privacy-policy,.terms-of-service {
205
+ margin: 1em;
206
+ text-align: justify;
207
+ font-size: 0.8rem;
208
+ }
209
+
210
+ .privacy-policy h2,.terms-of-service h2 {
211
+ font-size: 1.2rem;
212
+ }
213
+
214
+ .privacy-policy h3,.terms-of-service h3 {
215
+ font-size: 1.0rem;
216
+ }
217
+
218
+ .privacy-policy h4,.terms-of-service h4 {
219
+ font-size: 0.9rem;
220
+ }
221
+