irie 0.0.50__tar.gz → 0.0.51__tar.gz
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.
Potentially problematic release.
This version of irie might be problematic. Click here for more details.
- {irie-0.0.50 → irie-0.0.51}/PKG-INFO +2 -3
- {irie-0.0.50 → irie-0.0.51}/pyproject.toml +2 -2
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/filters.py +11 -29
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/models.py +3 -3
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/views.py +9 -2
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/admin.py +2 -1
- irie-0.0.51/src/irie/apps/prediction/migrations/0004_sensorassignment.py +31 -0
- irie-0.0.51/src/irie/apps/prediction/migrations/0005_remove_sensorassignment_offset_x_and_more.py +53 -0
- irie-0.0.51/src/irie/apps/prediction/migrations/0006_remove_sensorassignment_show_x_and_more.py +25 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/models.py +22 -3
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/__init__.py +11 -2
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/__init__.py +114 -62
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/ssid.py +9 -10
- irie-0.0.51/src/irie/apps/prediction/urls.py +25 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/views.py +81 -24
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/css/brace.css +5 -31
- irie-0.0.51/src/irie/apps/static/assets/css/brace.css.map +1 -0
- irie-0.0.51/src/irie/apps/static/assets/css/brace.min.css +32 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/includes/paginate.js +6 -0
- irie-0.0.51/src/irie/apps/templates/includes/scripts.html +22 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/asset-on-map.html +5 -5
- irie-0.0.51/src/irie/apps/templates/inventory/bridge.html +1 -0
- irie-0.0.51/src/irie/apps/templates/inventory/sensor-upload.html +292 -0
- irie-0.0.50/src/irie/apps/templates/networks/networks.html → irie-0.0.51/src/irie/apps/templates/networks/_networks.html +0 -1
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/networks/networks.js +6 -4
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/prediction/asset-predictors.html +41 -47
- irie-0.0.50/src/irie/apps/templates/prediction/form-submission.html → irie-0.0.51/src/irie/apps/templates/prediction/create-mdof.html +0 -21
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/prediction/new-runner.html +0 -20
- irie-0.0.51/src/irie/apps/templates/prediction/predictor-profile.html +40 -0
- irie-0.0.51/src/irie/apps/templates/prediction/viewer/veux-viewer.js +186 -0
- irie-0.0.51/src/irie/apps/templates/prediction/xara-profile.html +221 -0
- irie-0.0.51/src/irie/apps/templates/sensors/render-sensors.js +152 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie.egg-info/PKG-INFO +2 -3
- {irie-0.0.50 → irie-0.0.51}/src/irie.egg-info/SOURCES.txt +10 -3
- irie-0.0.50/src/irie/apps/prediction/urls.py +0 -20
- irie-0.0.50/src/irie/apps/static/assets/css/brace.css.map +0 -1
- irie-0.0.50/src/irie/apps/static/assets/css/brace.min.css +0 -32
- irie-0.0.50/src/irie/apps/templates/includes/scripts.html +0 -35
- irie-0.0.50/src/irie/apps/templates/inventory/sensor-upload.html +0 -457
- irie-0.0.50/src/irie/apps/templates/prediction/predictor-profile.html +0 -166
- {irie-0.0.50 → irie-0.0.51}/README.md +0 -0
- {irie-0.0.50 → irie-0.0.51}/setup.cfg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/__main__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/admin.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/apps.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/forms.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/models.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/templatetags/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/templatetags/admin_material.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/templatetags/replace_value.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/urls.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/utils.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/admin_dash/views.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/authentication/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/authentication/admin.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/authentication/config.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/authentication/forms.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/authentication/migrations/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/authentication/models.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/authentication/tests.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/authentication/urls.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/authentication/views.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/config.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/context_processors.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/documents/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/documents/apps.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/documents/documents.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/documents/migrations/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/documents/tests.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/documents/urls.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/documents/views.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/admin.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/apps.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/daemon.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/identification.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/migrations/0001_initial.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/migrations/0002_evaluation_status.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/migrations/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/models.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/urls.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/evaluation/views.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/admin.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/apps.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/migrations/0001_initial.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/migrations/0002_rename_event_eventrecord.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/migrations/0003_hazardevent.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/migrations/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/models.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/tests.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/tests_events.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/urls.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/views.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/events/views_events.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/admin.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/apps.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/archive/CESMD.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/archive/calid.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/fields.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/forms.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/migrations/0001_initial.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/migrations/0002_alter_asset_bridge_sensors_and_more.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/migrations/0003_asset_notes.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/migrations/0004_datum_sensorgroup_sensor.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/migrations/0005_alter_sensor_group.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/migrations/0006_datum_asset_datum_locate_x_datum_locate_y_and_more.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/migrations/0007_sensor_name.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/migrations/0008_alter_sensor_dx_alter_sensor_dy_alter_sensor_dz_and_more.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/migrations/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/services/render.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/sitemaps.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/tables.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/templatetags/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/templatetags/get.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/templatetags/nbi.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/inventory/urls.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/management/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/management/commands/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/networks/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/networks/apps.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/networks/forms.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/networks/migrations/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/networks/models.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/networks/networks.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/networks/tests.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/networks/urls.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/networks/views.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/apps.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/forms.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/metrics.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/migrations/0001_initial.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/migrations/0002_alter_predictormodel_protocol.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/migrations/0003_alter_predictormodel_protocol.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/migrations/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/predictor.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/hazus.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/metrics.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/schemas/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/schemas/hwd_analysis.schema.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/schemas/hwd_analysis_default.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/schemas/hwd_conf.schema.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/schemas/hwd_conf_default.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/schemas/hwd_results.schema.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/schemas/hwd_results_default.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/utilities.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/xmlutils.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/runners/opensees/zipped.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/templatetags/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/templatetags/predictor.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/prediction/views_api.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/admin.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/config.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/migrations/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/models.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/templatetags/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/templatetags/indexing.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/tests.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/urls.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/view_sdof.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/view_utils.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/site/views.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/sitemaps.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/content_images/brace/mdof.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/content_images/brace/opensees.jpg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/content_images/brace/sdof.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/content_images/brace/sees.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/css/uPlot.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/brace2-no_text.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/brand/dark.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/brand/light.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/colStrains.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/colStrains_big.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/colStrains_small.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/colStrains_svg_optimizer.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/colStrains_svg_optimizer.xml +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/drift.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/earthquake-hazard.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/android-chrome-192x192.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/android-chrome-512x512.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/apple-touch-icon.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/browserconfig.xml +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/favicon-16x16.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/favicon-32x32.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/favicon.ico +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/manifest.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/mstile-150x150.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/safari-pinned-tab.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/favicon/site.webmanifest +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/icons/github.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/icons/google-tag-manager.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/icons/google_analytics.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/illustrations/404.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/illustrations/500.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/illustrations/bs5-illustrations.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/illustrations/signin.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/marker.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/metric.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/painter.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/paypal-logo.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/peer-black.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/peer-light.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/predictors.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/profile-cover.jpg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/soga-logo.jpeg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/img/twin.png +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll01336.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll01336_1.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll13705.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll13795.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll14406.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll23631.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll23631_1.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll24694.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll24704.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll24706.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll24775.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll33742.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll47315.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll54730.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58600-2.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58600-3.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58600-4.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58600.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58601-2.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58601-3.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58601-4.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58601.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58632-2.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58632-3.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58632-4.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58632-5.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58632-6.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58632-7.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58632-8.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58632.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58658-2.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58658-3.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58658.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58658_1.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58658_2.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58658_3.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58700-1.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58700-3.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58700-4.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll58700.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68184.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68185-2.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68185-3.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68185-4.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68185-5.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68185-6.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68185-7.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68185-8.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68185.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68682-2.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68682-3.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68682-4.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68682-5.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll68682.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll79421.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll89324.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll89324_2.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll89686.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll89708-2.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll89708.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll89735.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll89736.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/inventory/ll89973.svg +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/js/787.545aecf5.chunk.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/js/brace.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/js/d3.v4.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/js/events_api.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/js/events_page.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/js/fmkFunctions.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/js/jsonview.bundle.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/js/login_page.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/js/main.1c459f17.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/js/uPlot.iife.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper-base.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper-base.js.flow +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper-lite.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper-lite.js.flow +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper.js.flow +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/createPopper.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/contains.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getBoundingClientRect.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getClippingRect.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getCompositeRect.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getComputedStyle.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getDocumentElement.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getDocumentRect.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getHTMLElementScroll.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getLayoutRect.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getNodeName.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getNodeScroll.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getOffsetParent.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getParentNode.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getScrollParent.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getViewportRect.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getWindow.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getWindowScroll.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getWindowScrollBarX.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/instanceOf.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/isScrollParent.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/isTableElement.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/listScrollParents.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/enums.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/index.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/applyStyles.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/arrow.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/computeStyles.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/eventListeners.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/flip.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/hide.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/index.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/offset.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/popperOffsets.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/preventOverflow.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/popper-base.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/popper-lite.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/popper.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/types.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/computeAutoPlacement.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/computeOffsets.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/debounce.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/detectOverflow.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/expandToHashMap.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/format.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getAltAxis.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getAltLen.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getBasePlacement.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getFreshSideObject.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getMainAxisFromPlacement.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getOppositePlacement.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getOppositeVariationPlacement.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getVariation.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/math.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/mergeByName.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/mergePaddingObject.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/orderModifiers.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/rectToClientRect.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/uniqueBy.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/validateModifiers.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/within.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper-base.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper-base.min.js.flow +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper-lite.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper-lite.min.js.flow +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper.min.js.flow +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-grid.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-grid.rtl.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-reboot.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-reboot.rtl.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-utilities.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-utilities.rtl.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap.rtl.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/js/bootstrap.bundle.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/js/bootstrap.esm.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/bootstrap/dist/js/bootstrap.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/notyf/notyf.es.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/notyf/notyf.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/notyf/notyf.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/notyf/notyf.umd.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/nouislider/distribute/nouislider.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/nouislider/distribute/nouislider.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/nouislider/distribute/nouislider.min.mjs +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/nouislider/distribute/nouislider.mjs +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/onscreen/dist/index.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/onscreen/dist/on-screen.es6.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/onscreen/dist/on-screen.umd.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/simplebar/dist/simplebar-core.esm.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/simplebar/dist/simplebar.esm.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/simplebar/dist/simplebar.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/simplebar/dist/simplebar.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/simplebar/dist/simplebar.umd.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/smooth-scroll/dist/smooth-scroll.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/smooth-scroll/dist/smooth-scroll.polyfills.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/sweetalert2/dist/sweetalert2.all.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/sweetalert2/dist/sweetalert2.min.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/sweetalert2/dist/sweetalert2.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/waypoints/lib/jquery.waypoints.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/waypoints/lib/noframework.waypoints.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/waypoints/lib/shortcuts/infinite.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/waypoints/lib/shortcuts/inview.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/waypoints/lib/shortcuts/sticky.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/waypoints/lib/waypoints.debug.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/waypoints/lib/zepto.waypoints.min.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/waypoints/licenses.txt +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/assets/vendor/waypoints/testem.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/favicon.ico +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/static/sitemap.xml +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/accounts/login.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/accounts/register.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/admin/base_site.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/admin/color_theme_toggle.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/bridges/InteractiveTwin-CE58658.html +0 -0
- /irie-0.0.50/src/irie/apps/templates/inventory/bridge.html → /irie-0.0.51/src/irie/apps/templates/components/json-table.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/css/admin-extra.css +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/documents/documents.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/events/EarthquakeResponse.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/events/event-table.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/events/events.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/events/login.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/events/react_and_bootstrap.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/home/asset.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/includes/asset-event-table.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/includes/footer.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/includes/modal-report.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/includes/navigation.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/includes/settings-box.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/includes/sidebar.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/asset-evals.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/asset-event-summary.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/asset-profile.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/asset-sensors.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/asset-table.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/bridge-dashboard.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/dashboard.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/map-inventory.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/map-inventory2.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/map-single-asset.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/map-single-asset2.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/map-terrain.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/preamble.tex +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/report.tex +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/inventory/three-maps.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/layouts/base-fullscreen.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/layouts/base.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/layouts/json-form.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/networks/corridor_table.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/networks/styled_inputs.html +0 -0
- /irie-0.0.50/src/irie/apps/templates/prediction/predictor-upload.html → /irie-0.0.51/src/irie/apps/templates/prediction/create-model.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/prediction/hazus/event.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/prediction/hazus/history.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/prediction/hazus/history.js +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/about.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/asset_map.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/components-forms.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/index.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/json-form.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-400-sidebar.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-400.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-403.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-404-sidebar.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-404.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-500.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-forgot-password.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-lock.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-reset-password.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-sign-in.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/page-sign-up.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/qr-0001.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/qr-0002.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/qr-0003.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/qr-0004.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/robots.txt +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/settings.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/tables-bootstrap-tables.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/transactions.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/apps/templates/site/unused-dashboard-cards.html +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/core/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/core/asgi.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/core/settings.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/core/urls.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/core/wsgi.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/fhwa/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/fhwa/__main__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/fhwa/fields/nbi001.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/fhwa/fields/nbi001b.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/fhwa/fields/nbi002.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/fhwa/fields.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/__init__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/__main__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/bridges.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/calid.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/data/cgs-stations.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/data/cgs_data.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/data/nbe_data-california.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/data/nbi/04.tar +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/data/nbi_codes-california-filtered.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/data/nbi_codes-california.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/data/nbi_data-california.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/data/nbi_data_cesmd.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/data/nbi_definitions.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/data/networks/soga_corridors.json +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/getBridgeData.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/getCGSData.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/getCGSevents.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/getNBIData.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/hayward.zip +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/management/commands/init_assets.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/management/commands/init_cesmd.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/management/commands/init_corridors.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/management/commands/init_predictors.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/init/management/commands/make_asset.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/pull/nbi.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/rest/__main__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie/usgs/__main__.py +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie.egg-info/dependency_links.txt +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie.egg-info/entry_points.txt +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie.egg-info/requires.txt +0 -0
- {irie-0.0.50 → irie-0.0.51}/src/irie.egg-info/top_level.txt +0 -0
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: irie
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.51
|
|
4
4
|
Summary: An infrastructure resilience engine
|
|
5
5
|
Author-email: "Claudio M. Perez" <50180406+claudioperez@users.noreply.github.com>
|
|
6
6
|
Project-URL: Repository, https://github.com/STAIRLab
|
|
7
7
|
Project-URL: Documentation, https://stairlab.berkeley.edu/software/irie/
|
|
8
|
-
Keywords: visualization,seismic,opensees,resilience,post-processing,finite-element-analysis,glTF
|
|
8
|
+
Keywords: visualization,seismic,opensees,resilience,post-processing,structural-health-monitoring,finite-element-analysis,glTF
|
|
9
9
|
Classifier: Development Status :: 4 - Beta
|
|
10
10
|
Classifier: Intended Audience :: Science/Research
|
|
11
11
|
Classifier: Intended Audience :: Developers
|
|
12
|
-
Classifier: License :: OSI Approved :: BSD License
|
|
13
12
|
Classifier: Programming Language :: C
|
|
14
13
|
Classifier: Programming Language :: Python
|
|
15
14
|
Classifier: Programming Language :: Python :: 3
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "irie"
|
|
3
|
-
version = "0.0.
|
|
3
|
+
version = "0.0.51"
|
|
4
4
|
authors = [
|
|
5
5
|
{name="Claudio M. Perez", email="50180406+claudioperez@users.noreply.github.com"}
|
|
6
6
|
]
|
|
@@ -14,6 +14,7 @@ keywords = [
|
|
|
14
14
|
"opensees",
|
|
15
15
|
"resilience",
|
|
16
16
|
"post-processing",
|
|
17
|
+
"structural-health-monitoring",
|
|
17
18
|
"finite-element-analysis",
|
|
18
19
|
"glTF"
|
|
19
20
|
]
|
|
@@ -55,7 +56,6 @@ classifiers = [
|
|
|
55
56
|
'Development Status :: 4 - Beta',
|
|
56
57
|
'Intended Audience :: Science/Research',
|
|
57
58
|
'Intended Audience :: Developers',
|
|
58
|
-
'License :: OSI Approved :: BSD License',
|
|
59
59
|
'Programming Language :: C',
|
|
60
60
|
'Programming Language :: Python',
|
|
61
61
|
'Programming Language :: Python :: 3',
|
|
@@ -5,37 +5,32 @@ class AssetFilter(django_filters.FilterSet):
|
|
|
5
5
|
search = django_filters.CharFilter(
|
|
6
6
|
lookup_expr="icontains",
|
|
7
7
|
field_name="calid",
|
|
8
|
-
label=
|
|
8
|
+
label="Search"
|
|
9
9
|
)
|
|
10
10
|
|
|
11
11
|
cesmd_not_null = django_filters.BooleanFilter(
|
|
12
|
-
label=
|
|
12
|
+
label="Instrumented",
|
|
13
13
|
widget=CheckboxInput(),
|
|
14
|
-
method=
|
|
14
|
+
method="filter_cesmd_exists"
|
|
15
15
|
)
|
|
16
16
|
|
|
17
17
|
is_streaming = django_filters.BooleanFilter(
|
|
18
|
-
# field_name=
|
|
19
|
-
label=
|
|
18
|
+
# field_name="is_complete",
|
|
19
|
+
label="Streaming",
|
|
20
20
|
widget=CheckboxInput(),
|
|
21
|
-
method=
|
|
21
|
+
method="filter_is_streaming"
|
|
22
22
|
)
|
|
23
23
|
|
|
24
24
|
district = django_filters.CharFilter(
|
|
25
|
-
label=
|
|
26
|
-
method=
|
|
25
|
+
label="District",
|
|
26
|
+
method="filter_district"
|
|
27
27
|
)
|
|
28
28
|
|
|
29
29
|
max_year = django_filters.NumberFilter(
|
|
30
|
-
label=
|
|
31
|
-
method=
|
|
32
|
-
# widget=django_filters.widgets.DateInput(attrs={'type': 'date'})
|
|
30
|
+
label="Max Year",
|
|
31
|
+
method="filter_year"
|
|
33
32
|
)
|
|
34
|
-
|
|
35
|
-
# label='Max Year',
|
|
36
|
-
# field_name='nbi_data__NBI_BRIDGE__Year Built',
|
|
37
|
-
# lookup_expr='lte'
|
|
38
|
-
# )
|
|
33
|
+
|
|
39
34
|
def filter_year(self, queryset, name, value):
|
|
40
35
|
ids = {
|
|
41
36
|
asset.id for asset in queryset if (
|
|
@@ -43,19 +38,6 @@ class AssetFilter(django_filters.FilterSet):
|
|
|
43
38
|
)
|
|
44
39
|
}
|
|
45
40
|
return queryset.filter(id__in=ids)
|
|
46
|
-
if value:
|
|
47
|
-
return queryset.filter(
|
|
48
|
-
nbi_data__NBI_BRIDGE__Year_Built__lte=int(value) #.year
|
|
49
|
-
)
|
|
50
|
-
return
|
|
51
|
-
|
|
52
|
-
if value:
|
|
53
|
-
filtered_ids = [
|
|
54
|
-
asset.id for asset in queryset if (
|
|
55
|
-
asset.nbi_data and asset.nbi_data["NBI_BRIDGE"]["Year Built"] <= value.year
|
|
56
|
-
)
|
|
57
|
-
]
|
|
58
|
-
return queryset.filter(id__in=filtered_ids)
|
|
59
41
|
|
|
60
42
|
|
|
61
43
|
def filter_cesmd_exists(self, queryset, name, value):
|
|
@@ -63,7 +63,7 @@ class Asset(models.Model):
|
|
|
63
63
|
from irie.apps.prediction.models import PredictorModel
|
|
64
64
|
return {
|
|
65
65
|
p.name: PREDICTOR_TYPES[p.protocol](p)
|
|
66
|
-
for p in PredictorModel.objects.filter(asset=self)
|
|
66
|
+
for p in reversed(PredictorModel.objects.filter(asset=self))
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
@property
|
|
@@ -123,7 +123,7 @@ class SensorGroup(models.Model):
|
|
|
123
123
|
# network = models.CharField(max_length=100)
|
|
124
124
|
# events = None
|
|
125
125
|
def __str__(self):
|
|
126
|
-
return f"{self.
|
|
126
|
+
return f"{self.asset.calid} - {self.name} ({self.datum})"
|
|
127
127
|
|
|
128
128
|
class Sensor(models.Model):
|
|
129
129
|
# class Status:
|
|
@@ -141,7 +141,7 @@ class Sensor(models.Model):
|
|
|
141
141
|
group = models.ForeignKey(SensorGroup, related_name="sensors", on_delete=models.RESTRICT)
|
|
142
142
|
|
|
143
143
|
def __str__(self):
|
|
144
|
-
return f"{self.name} ({self.group.name})"
|
|
144
|
+
return f"{self.group.asset.calid} - {self.name} ({self.group.name})"
|
|
145
145
|
|
|
146
146
|
|
|
147
147
|
|
|
@@ -24,6 +24,7 @@ from irie.apps.events.models import EventRecord
|
|
|
24
24
|
from irie.apps.site.view_utils import raise404
|
|
25
25
|
from irie.apps.inventory.models import Asset, SensorGroup, Sensor, Datum
|
|
26
26
|
from irie.apps.inventory.forms import SensorGroupForm, SensorForm, SensorFormSet
|
|
27
|
+
from irie.apps.prediction.models import PredictorModel
|
|
27
28
|
from .filters import AssetFilter
|
|
28
29
|
# Predictors
|
|
29
30
|
from irie.apps.prediction.runners.hazus import hazus_fragility
|
|
@@ -439,12 +440,18 @@ def sensor_upload(request, calid):
|
|
|
439
440
|
group_form = SensorGroupForm(asset=asset)
|
|
440
441
|
formset = SensorFormSet()
|
|
441
442
|
|
|
442
|
-
|
|
443
|
+
context = {
|
|
443
444
|
"group_form": group_form,
|
|
444
445
|
"formset": formset,
|
|
446
|
+
"renderings": [
|
|
447
|
+
{"name": predictor.name, "glb": predictor.render_file.url}
|
|
448
|
+
for predictor in PredictorModel.objects.filter(asset=asset, protocol="IRIE_PREDICTOR_V1")
|
|
449
|
+
if predictor.render_file and predictor.render_file.url
|
|
450
|
+
],
|
|
445
451
|
"asset": asset,
|
|
446
452
|
"datums": list(datums)
|
|
447
|
-
}
|
|
453
|
+
}
|
|
454
|
+
return render(request, "inventory/sensor-upload.html", context)
|
|
448
455
|
|
|
449
456
|
|
|
450
457
|
def _filter_asset_table(request):
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
#
|
|
5
5
|
#===----------------------------------------------------------------------===#
|
|
6
6
|
from django.contrib import admin
|
|
7
|
-
from .models import PredictorModel
|
|
7
|
+
from .models import PredictorModel, SensorAssignment
|
|
8
8
|
|
|
9
9
|
admin.site.register(PredictorModel)
|
|
10
|
+
admin.site.register(SensorAssignment)
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Generated by Django 5.1.2 on 2025-04-28 01:52
|
|
2
|
+
|
|
3
|
+
import django.db.models.deletion
|
|
4
|
+
from django.db import migrations, models
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class Migration(migrations.Migration):
|
|
8
|
+
|
|
9
|
+
dependencies = [
|
|
10
|
+
('apps_prediction', '0003_alter_predictormodel_protocol'),
|
|
11
|
+
('irie_apps_inventory', '0008_alter_sensor_dx_alter_sensor_dy_alter_sensor_dz_and_more'),
|
|
12
|
+
]
|
|
13
|
+
|
|
14
|
+
operations = [
|
|
15
|
+
migrations.CreateModel(
|
|
16
|
+
name='SensorAssignment',
|
|
17
|
+
fields=[
|
|
18
|
+
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
19
|
+
('node', models.IntegerField()),
|
|
20
|
+
('role', models.CharField(choices=[('input', 'Input'), ('output', 'Output')], max_length=16)),
|
|
21
|
+
('orient_z', models.FloatField()),
|
|
22
|
+
('orient_x', models.FloatField(default=0.0)),
|
|
23
|
+
('orient_y', models.FloatField(default=0.0)),
|
|
24
|
+
('offset_x', models.FloatField(default=0.0)),
|
|
25
|
+
('offset_y', models.FloatField(default=0.0)),
|
|
26
|
+
('offset_z', models.FloatField(default=0.0)),
|
|
27
|
+
('predictor', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='apps_prediction.predictormodel')),
|
|
28
|
+
('sensor', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='irie_apps_inventory.sensor')),
|
|
29
|
+
],
|
|
30
|
+
),
|
|
31
|
+
]
|
irie-0.0.51/src/irie/apps/prediction/migrations/0005_remove_sensorassignment_offset_x_and_more.py
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Generated by Django 5.1.2 on 2025-04-28 02:12
|
|
2
|
+
|
|
3
|
+
from django.db import migrations, models
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class Migration(migrations.Migration):
|
|
7
|
+
|
|
8
|
+
dependencies = [
|
|
9
|
+
('apps_prediction', '0004_sensorassignment'),
|
|
10
|
+
]
|
|
11
|
+
|
|
12
|
+
operations = [
|
|
13
|
+
migrations.RemoveField(
|
|
14
|
+
model_name='sensorassignment',
|
|
15
|
+
name='offset_x',
|
|
16
|
+
),
|
|
17
|
+
migrations.RemoveField(
|
|
18
|
+
model_name='sensorassignment',
|
|
19
|
+
name='offset_y',
|
|
20
|
+
),
|
|
21
|
+
migrations.RemoveField(
|
|
22
|
+
model_name='sensorassignment',
|
|
23
|
+
name='offset_z',
|
|
24
|
+
),
|
|
25
|
+
migrations.AddField(
|
|
26
|
+
model_name='sensorassignment',
|
|
27
|
+
name='show_x',
|
|
28
|
+
field=models.FloatField(default=0),
|
|
29
|
+
preserve_default=False,
|
|
30
|
+
),
|
|
31
|
+
migrations.AddField(
|
|
32
|
+
model_name='sensorassignment',
|
|
33
|
+
name='show_y',
|
|
34
|
+
field=models.FloatField(default=0),
|
|
35
|
+
preserve_default=False,
|
|
36
|
+
),
|
|
37
|
+
migrations.AddField(
|
|
38
|
+
model_name='sensorassignment',
|
|
39
|
+
name='show_z',
|
|
40
|
+
field=models.FloatField(default=0),
|
|
41
|
+
preserve_default=False,
|
|
42
|
+
),
|
|
43
|
+
migrations.AlterField(
|
|
44
|
+
model_name='sensorassignment',
|
|
45
|
+
name='orient_x',
|
|
46
|
+
field=models.FloatField(),
|
|
47
|
+
),
|
|
48
|
+
migrations.AlterField(
|
|
49
|
+
model_name='sensorassignment',
|
|
50
|
+
name='orient_y',
|
|
51
|
+
field=models.FloatField(),
|
|
52
|
+
),
|
|
53
|
+
]
|
irie-0.0.51/src/irie/apps/prediction/migrations/0006_remove_sensorassignment_show_x_and_more.py
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Generated by Django 5.1.2 on 2025-04-28 02:26
|
|
2
|
+
|
|
3
|
+
from django.db import migrations
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class Migration(migrations.Migration):
|
|
7
|
+
|
|
8
|
+
dependencies = [
|
|
9
|
+
('apps_prediction', '0005_remove_sensorassignment_offset_x_and_more'),
|
|
10
|
+
]
|
|
11
|
+
|
|
12
|
+
operations = [
|
|
13
|
+
migrations.RemoveField(
|
|
14
|
+
model_name='sensorassignment',
|
|
15
|
+
name='show_x',
|
|
16
|
+
),
|
|
17
|
+
migrations.RemoveField(
|
|
18
|
+
model_name='sensorassignment',
|
|
19
|
+
name='show_y',
|
|
20
|
+
),
|
|
21
|
+
migrations.RemoveField(
|
|
22
|
+
model_name='sensorassignment',
|
|
23
|
+
name='show_z',
|
|
24
|
+
),
|
|
25
|
+
]
|
|
@@ -5,15 +5,14 @@
|
|
|
5
5
|
#===----------------------------------------------------------------------===#
|
|
6
6
|
from django.db import models
|
|
7
7
|
|
|
8
|
-
from irie.apps.inventory.models import Asset
|
|
8
|
+
from irie.apps.inventory.models import Asset, Sensor
|
|
9
|
+
|
|
9
10
|
|
|
10
11
|
class PredictorModel(models.Model):
|
|
11
12
|
# https://docs.djangoproject.com/en/4.2/ref/models/fields/
|
|
12
13
|
class Protocol(models.TextChoices):
|
|
13
14
|
TYPE1 = "IRIE_PREDICTOR_V1"
|
|
14
15
|
TYPE2 = "IRIE_PREDICTOR_T2"
|
|
15
|
-
# TYPE3 = "IRIE_PREDICTOR_T3"
|
|
16
|
-
# TYPE4 = "IRIE_PREDICTOR_T4"
|
|
17
16
|
|
|
18
17
|
id = models.BigAutoField(primary_key=True)
|
|
19
18
|
name = models.CharField(max_length=35)
|
|
@@ -36,6 +35,26 @@ class PredictorModel(models.Model):
|
|
|
36
35
|
return f"{self.asset.calid} - {self.name} : {self.description}"
|
|
37
36
|
|
|
38
37
|
|
|
38
|
+
class SensorAssignment(models.Model):
|
|
39
|
+
predictor = models.ForeignKey(PredictorModel, on_delete=models.CASCADE)
|
|
40
|
+
sensor = models.ForeignKey(Sensor, on_delete=models.CASCADE)
|
|
41
|
+
node = models.IntegerField()
|
|
42
|
+
role = models.CharField(
|
|
43
|
+
max_length=16,
|
|
44
|
+
choices=[
|
|
45
|
+
('input', 'Input'),
|
|
46
|
+
('output', 'Output'),
|
|
47
|
+
]
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
orient_z = models.FloatField()
|
|
51
|
+
orient_x = models.FloatField()
|
|
52
|
+
orient_y = models.FloatField()
|
|
53
|
+
# show_x = models.FloatField()
|
|
54
|
+
# show_y = models.FloatField()
|
|
55
|
+
# show_z = models.FloatField()
|
|
56
|
+
|
|
57
|
+
|
|
39
58
|
# class PhysicsPredictor(models.Model):
|
|
40
59
|
# class Units(models.TextChoices):
|
|
41
60
|
# iks = "IKS"
|
|
@@ -20,7 +20,8 @@ class Runner:
|
|
|
20
20
|
|
|
21
21
|
if isinstance(pred, dict):
|
|
22
22
|
# Create from dict when posted from API; this
|
|
23
|
-
# is used to create a new PredictorModel
|
|
23
|
+
# is used to create a new PredictorModel.
|
|
24
|
+
# In the future this may be removed.
|
|
24
25
|
self.name: str = pred["name"]
|
|
25
26
|
self.description = pred.get("description", "")
|
|
26
27
|
self.conf = pred["config"]
|
|
@@ -28,7 +29,7 @@ class Runner:
|
|
|
28
29
|
self.entry_point = pred["entry_point"]
|
|
29
30
|
self.active = pred.get("active", True)
|
|
30
31
|
else:
|
|
31
|
-
# Create from PredictorModel when loaded from database.
|
|
32
|
+
# Create from existing PredictorModel when loaded from database.
|
|
32
33
|
# This is done when running analysis
|
|
33
34
|
self.id = pred.id
|
|
34
35
|
self.asset = pred.asset
|
|
@@ -38,9 +39,17 @@ class Runner:
|
|
|
38
39
|
self.entry_point = pred.entry_point
|
|
39
40
|
self.metrics = pred.metrics
|
|
40
41
|
self.active = pred.active
|
|
42
|
+
|
|
43
|
+
# NEW:
|
|
44
|
+
self.predictor = pred
|
|
45
|
+
|
|
46
|
+
self.runs = {}
|
|
41
47
|
if pred.config_file:
|
|
42
48
|
self.model_file = Path(pred.config_file.path).resolve()
|
|
43
49
|
self.out_dir = Path(__file__).parents[0]/"Predictions"
|
|
50
|
+
else:
|
|
51
|
+
self.model_file = None
|
|
52
|
+
self.out_dir = None
|
|
44
53
|
self.runs = {}
|
|
45
54
|
|
|
46
55
|
@abstractmethod
|
|
@@ -47,7 +47,7 @@ def new_cd(x):
|
|
|
47
47
|
class OpenSeesRunner(Runner):
|
|
48
48
|
@property
|
|
49
49
|
def platform(self):
|
|
50
|
-
return self.conf.get("platform", "")
|
|
50
|
+
return self.conf.get("platform", "xara")
|
|
51
51
|
|
|
52
52
|
|
|
53
53
|
@classmethod
|
|
@@ -58,9 +58,7 @@ class OpenSeesRunner(Runner):
|
|
|
58
58
|
# TODO
|
|
59
59
|
data.pop("file")
|
|
60
60
|
uploaded_file = request.FILES.get('config_file', None)
|
|
61
|
-
print(uploaded_file)
|
|
62
61
|
if uploaded_file:
|
|
63
|
-
|
|
64
62
|
with open(uploaded_file.name, 'wb+') as destination:
|
|
65
63
|
for chunk in uploaded_file.chunks():
|
|
66
64
|
destination.write(chunk)
|
|
@@ -499,72 +497,126 @@ class OpenSeesRunner(Runner):
|
|
|
499
497
|
return {}
|
|
500
498
|
return {}
|
|
501
499
|
|
|
500
|
+
#
|
|
501
|
+
# Viewing methods
|
|
502
|
+
#
|
|
503
|
+
def structural_section(self, name):
|
|
504
|
+
from shps.shapes import from_aisc
|
|
505
|
+
from openbim.csi._frame.section import section_geometry, section_mesh
|
|
502
506
|
|
|
503
|
-
import
|
|
504
|
-
|
|
507
|
+
from openbim.csi import load, create_model, collect_outlines
|
|
508
|
+
# 1) Parse the CSI file
|
|
509
|
+
try:
|
|
510
|
+
csi_file = self.predictor.config_file
|
|
511
|
+
csi = load((str(line.decode()).replace("\r\n","\n") for line in csi_file.readlines()))
|
|
512
|
+
except:
|
|
513
|
+
return None
|
|
514
|
+
|
|
515
|
+
mesh = section_mesh(csi, name)
|
|
516
|
+
return {}, mesh
|
|
517
|
+
mesh = from_aisc("W12x14").create_mesh(mesh_kwds={"engine": "meshpy"})
|
|
518
|
+
mesh = (mesh.nodes, mesh.cells())
|
|
519
|
+
# return {}, mesh
|
|
520
|
+
|
|
505
521
|
|
|
506
|
-
class PredictorType1(Runner):
|
|
507
|
-
@property
|
|
508
|
-
def platform(self):
|
|
509
|
-
return self.conf.get("platform", "")
|
|
510
522
|
|
|
511
|
-
@classmethod
|
|
512
|
-
def create(cls, asset, request):
|
|
513
|
-
from irie.apps.prediction.models import PredictorModel
|
|
514
|
-
predictor = PredictorModel()
|
|
515
|
-
data = json.loads(request.data.get("json"))
|
|
516
|
-
predictor.entry_point = [
|
|
517
|
-
sys.executable, "-m", "opensees"
|
|
518
|
-
]
|
|
519
|
-
data["metrics"] = []
|
|
520
|
-
|
|
521
|
-
predictor.name = data.pop("name")
|
|
522
|
-
predictor.config = data
|
|
523
|
-
predictor.asset = asset
|
|
524
|
-
predictor.protocol = "IRIE_PREDICTOR_T1"
|
|
525
|
-
predictor.active = False
|
|
526
|
-
return predictor
|
|
527
523
|
|
|
524
|
+
def structural_members(self):
|
|
528
525
|
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
"
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
"
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
}
|
|
526
|
+
from openbim.csi import load, create_model, collect_outlines
|
|
527
|
+
# 1) Parse the CSI file
|
|
528
|
+
csi_file = self.predictor.config_file
|
|
529
|
+
try:
|
|
530
|
+
csi = load((str(line.decode()).replace("\r\n","\n") for line in csi_file.readlines()))
|
|
531
|
+
except Exception as e:
|
|
532
|
+
import sys
|
|
533
|
+
print(f"Error loading CSiBridge file: {e}", file=sys.stderr)
|
|
534
|
+
csi = {}
|
|
535
|
+
|
|
536
|
+
for item in csi.get("BRIDGE BENT DEFINITIONS 2 - COLUMN DATA",[]):
|
|
537
|
+
if "ColNum" in item and "Section" in item:
|
|
538
|
+
yield {
|
|
539
|
+
"name": item["ColNum"],
|
|
540
|
+
"type": "Column",
|
|
541
|
+
"section": item["Section"],
|
|
542
|
+
}
|
|
547
543
|
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
544
|
+
for item in csi.get("BRIDGE OBJECT DEFINITIONS 03 - SPANS 1 - GENERAL", []):
|
|
545
|
+
if "SpanName" in item and "BridgeSect" in item:
|
|
546
|
+
yield {
|
|
547
|
+
"name": item["SpanName"],
|
|
548
|
+
"type": "Span",
|
|
549
|
+
"section": None,
|
|
550
|
+
}
|
|
554
551
|
|
|
555
|
-
def runPrediction(self, run_id: RunID):
|
|
556
|
-
command = [*self.entry_point, "run", str(run_id)]
|
|
557
552
|
|
|
558
|
-
if "scale" in self.event.upload_data:
|
|
559
|
-
command.extend(["--scale", str(float(self.event.upload_data["scale"]))])
|
|
560
|
-
print(":: Running ", command, file=sys.stderr)
|
|
561
|
-
subprocess.check_output(command)
|
|
562
553
|
|
|
563
|
-
print(f":: Model {self.name} returned", file=sys.stderr)
|
|
564
|
-
return
|
|
565
554
|
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
555
|
+
# import subprocess
|
|
556
|
+
# class Event: pass
|
|
557
|
+
|
|
558
|
+
# class PredictorType1(Runner):
|
|
559
|
+
# @property
|
|
560
|
+
# def platform(self):
|
|
561
|
+
# return self.conf.get("platform", "")
|
|
562
|
+
|
|
563
|
+
# @classmethod
|
|
564
|
+
# def create(cls, asset, request):
|
|
565
|
+
# from irie.apps.prediction.models import PredictorModel
|
|
566
|
+
# predictor = PredictorModel()
|
|
567
|
+
# data = json.loads(request.data.get("json"))
|
|
568
|
+
# predictor.entry_point = [
|
|
569
|
+
# sys.executable, "-m", "opensees"
|
|
570
|
+
# ]
|
|
571
|
+
# data["metrics"] = []
|
|
572
|
+
|
|
573
|
+
# predictor.name = data.pop("name")
|
|
574
|
+
# predictor.config = data
|
|
575
|
+
# predictor.asset = asset
|
|
576
|
+
# predictor.protocol = "IRIE_PREDICTOR_T1"
|
|
577
|
+
# predictor.active = False
|
|
578
|
+
# return predictor
|
|
579
|
+
|
|
580
|
+
|
|
581
|
+
# @classproperty
|
|
582
|
+
# def schema(cls):
|
|
583
|
+
# from irie.apps.prediction.runners.opensees import schemas
|
|
584
|
+
# return {
|
|
585
|
+
# "title": "Structural Model",
|
|
586
|
+
# "options": {"disable_collaps": True},
|
|
587
|
+
# "schema": "http://json-schema.org/draft-04/schema#",
|
|
588
|
+
# "type": "object",
|
|
589
|
+
# "properties": {
|
|
590
|
+
# "platform": {
|
|
591
|
+
# "type": "string",
|
|
592
|
+
# "title": "Platform",
|
|
593
|
+
# "enum": ["OpenSees","CSiBridge"]
|
|
594
|
+
# },
|
|
595
|
+
# "model": schemas.load("hwd_conf.schema.json"),
|
|
596
|
+
# "analysis": schemas.load("hwd_analysis.schema.json"),
|
|
597
|
+
# }
|
|
598
|
+
# }
|
|
599
|
+
|
|
600
|
+
# def newPrediction(self, event: Event) -> RunID:
|
|
601
|
+
# self.event = event
|
|
602
|
+
# event_file = Path(event.event_file.path).resolve()
|
|
603
|
+
# command = [*self.entry_point, "new", event_file]
|
|
604
|
+
# run_id = subprocess.check_output(command).decode().strip()
|
|
605
|
+
# return RunID(int(run_id))
|
|
606
|
+
|
|
607
|
+
# def runPrediction(self, run_id: RunID):
|
|
608
|
+
# command = [*self.entry_point, "run", str(run_id)]
|
|
609
|
+
|
|
610
|
+
# if "scale" in self.event.upload_data:
|
|
611
|
+
# command.extend(["--scale", str(float(self.event.upload_data["scale"]))])
|
|
612
|
+
# print(":: Running ", command, file=sys.stderr)
|
|
613
|
+
# subprocess.check_output(command)
|
|
614
|
+
|
|
615
|
+
# print(f":: Model {self.name} returned", file=sys.stderr)
|
|
616
|
+
# return
|
|
617
|
+
|
|
618
|
+
# def getMetricData(self, run, metric):
|
|
619
|
+
# try:
|
|
620
|
+
# return json.loads(subprocess.check_output([*self.entry_point, "get", str(run), metric]).decode())
|
|
621
|
+
# except json.decoder.JSONDecodeError:
|
|
622
|
+
# return {}
|
|
@@ -13,20 +13,13 @@ import io
|
|
|
13
13
|
import base64
|
|
14
14
|
import numpy as np
|
|
15
15
|
# Ensure Agg backend is set for non-interactive plotting
|
|
16
|
-
|
|
17
|
-
matplotlib.use('Agg')
|
|
18
|
-
from matplotlib import pyplot as plt, ticker, cm
|
|
16
|
+
|
|
19
17
|
import quakeio
|
|
20
18
|
from mdof import transform
|
|
21
19
|
from scipy.signal import find_peaks
|
|
22
20
|
from mdof.utilities import Config, extract_channels
|
|
23
|
-
from matplotlib import colormaps
|
|
24
21
|
import subprocess
|
|
25
|
-
|
|
26
|
-
# import scienceplots
|
|
27
|
-
# plt.style.use(["science"])
|
|
28
|
-
# except ImportError:
|
|
29
|
-
# pass
|
|
22
|
+
|
|
30
23
|
|
|
31
24
|
N_PEAKS = 5 # number of "significant" peaks per record
|
|
32
25
|
MISSING_CHANNEL_LIMIT = 3 # number of missing output channels allowed before skipping event
|
|
@@ -439,6 +432,10 @@ def plot_spectral_surface(ax, traces, **options):
|
|
|
439
432
|
|
|
440
433
|
|
|
441
434
|
def _plot_mountains(spectra, accellim=None):
|
|
435
|
+
import matplotlib
|
|
436
|
+
matplotlib.use('Agg')
|
|
437
|
+
from matplotlib import pyplot as plt, ticker, cm
|
|
438
|
+
from matplotlib import colormaps
|
|
442
439
|
fig = plt.figure(figsize=(13,13))
|
|
443
440
|
ax = fig.add_subplot(projection='3d')
|
|
444
441
|
|
|
@@ -512,7 +509,6 @@ def make_mountains(asset, conf=None, output_channels=None):
|
|
|
512
509
|
buffer = io.BytesIO()
|
|
513
510
|
fig.savefig(buffer, format="png")
|
|
514
511
|
buffer.seek(0)
|
|
515
|
-
# plt.show()
|
|
516
512
|
|
|
517
513
|
# Encode the image as Base64
|
|
518
514
|
return base64.b64encode(buffer.read()).decode("utf-8")
|
|
@@ -549,6 +545,9 @@ def parse_args(args):
|
|
|
549
545
|
if __name__ == '__main__':
|
|
550
546
|
|
|
551
547
|
import sys
|
|
548
|
+
from matplotlib import pyplot as plt, ticker, cm
|
|
549
|
+
from matplotlib import colormaps
|
|
550
|
+
|
|
552
551
|
procedure = parse_args(sys.argv)
|
|
553
552
|
STATION_TYPE = procedure['STATION_TYPE']
|
|
554
553
|
outdir = Path(procedure['outdir'])
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
#===----------------------------------------------------------------------===#
|
|
2
|
+
#
|
|
3
|
+
# STAIRLab -- STructural Artificial Intelligence Laboratory
|
|
4
|
+
#
|
|
5
|
+
#===----------------------------------------------------------------------===#
|
|
6
|
+
#
|
|
7
|
+
# Author: Claudio Perez
|
|
8
|
+
#
|
|
9
|
+
#----------------------------------------------------------------------------#
|
|
10
|
+
from django.urls import re_path
|
|
11
|
+
from .views import (
|
|
12
|
+
asset_predictors, predictor_profile, predictor_profile_detail,
|
|
13
|
+
create_mdof, create_model, asset_map
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
_ROOT = "^inventory/(?P<calid>[0-9 A-Z-]*)/predictors"
|
|
17
|
+
|
|
18
|
+
urlpatterns = [
|
|
19
|
+
re_path(f"{_ROOT}/(?P<preid>[0-9]{{1,}})/$", predictor_profile),
|
|
20
|
+
re_path(f"{_ROOT}/(?P<preid>[0-9]{{1,}})/detail/", predictor_profile_detail),
|
|
21
|
+
re_path(f"{_ROOT}/create/map/$", asset_map),
|
|
22
|
+
re_path(f"{_ROOT}/create/model/$", create_model),
|
|
23
|
+
re_path(f"{_ROOT}/create/v1/$", create_mdof),
|
|
24
|
+
re_path(f"{_ROOT}/$", asset_predictors, name="asset_predictors")
|
|
25
|
+
]
|