irie 0.0.53__tar.gz → 0.0.55__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.53 → irie-0.0.55}/PKG-INFO +1 -1
- {irie-0.0.53 → irie-0.0.55}/pyproject.toml +1 -1
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/views.py +1 -1
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/urls.py +1 -1
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/views.py +0 -1
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/models.py +6 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/__init__.py +35 -34
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/ssid.py +1 -1
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/urls.py +2 -2
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/views.py +33 -6
- irie-0.0.55/src/irie/apps/static/assets/content_images/brace/ForceFrame.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/js/brace.js +2 -2
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/includes/paginate.js +1 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/includes/scripts.html +0 -2
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/sensor-upload.html +1 -3
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/prediction/asset-predictors.html +1 -1
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/prediction/create-model.html +27 -0
- irie-0.0.55/src/irie/apps/templates/prediction/veux/navigator.html +121 -0
- irie-0.0.53/src/irie/apps/templates/prediction/viewer/veux-viewer.js → irie-0.0.55/src/irie/apps/templates/prediction/veux/navigator.js +17 -17
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/prediction/xara-profile.html +4 -104
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/index.html +9 -2
- {irie-0.0.53 → irie-0.0.55}/src/irie.egg-info/PKG-INFO +1 -1
- {irie-0.0.53 → irie-0.0.55}/src/irie.egg-info/SOURCES.txt +3 -2
- irie-0.0.53/src/irie/apps/templates/components/json-table.html +0 -1
- {irie-0.0.53 → irie-0.0.55}/README.md +0 -0
- {irie-0.0.53 → irie-0.0.55}/setup.cfg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/__main__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/admin.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/apps.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/forms.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/models.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/templatetags/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/templatetags/admin_material.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/templatetags/replace_value.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/urls.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/utils.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/admin_dash/views.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/authentication/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/authentication/admin.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/authentication/config.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/authentication/forms.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/authentication/migrations/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/authentication/models.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/authentication/tests.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/authentication/urls.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/authentication/views.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/config.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/context_processors.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/documents/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/documents/apps.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/documents/documents.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/documents/migrations/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/documents/tests.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/documents/urls.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/documents/views.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/admin.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/apps.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/daemon.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/identification.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/migrations/0001_initial.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/migrations/0002_evaluation_status.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/migrations/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/models.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/urls.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/evaluation/views.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/admin.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/apps.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/migrations/0001_initial.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/migrations/0002_rename_event_eventrecord.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/migrations/0003_hazardevent.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/migrations/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/models.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/tests.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/tests_events.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/urls.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/events/views_events.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/admin.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/apps.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/archive/CESMD.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/archive/calid.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/fields.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/filters.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/forms.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/migrations/0001_initial.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/migrations/0002_alter_asset_bridge_sensors_and_more.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/migrations/0003_asset_notes.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/migrations/0004_datum_sensorgroup_sensor.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/migrations/0005_alter_sensor_group.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/migrations/0006_datum_asset_datum_locate_x_datum_locate_y_and_more.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/migrations/0007_sensor_name.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/migrations/0008_alter_sensor_dx_alter_sensor_dy_alter_sensor_dz_and_more.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/migrations/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/models.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/services/render.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/sitemaps.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/tables.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/templatetags/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/templatetags/get.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/inventory/templatetags/nbi.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/management/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/management/commands/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/networks/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/networks/apps.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/networks/forms.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/networks/migrations/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/networks/models.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/networks/networks.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/networks/tests.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/networks/urls.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/networks/views.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/admin.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/apps.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/forms.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/metrics.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/migrations/0001_initial.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/migrations/0002_alter_predictormodel_protocol.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/migrations/0003_alter_predictormodel_protocol.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/migrations/0004_sensorassignment.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/migrations/0005_remove_sensorassignment_offset_x_and_more.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/migrations/0006_remove_sensorassignment_show_x_and_more.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/migrations/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/predictor.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/hazus.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/metrics.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/schemas/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/schemas/hwd_analysis.schema.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/schemas/hwd_analysis_default.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/schemas/hwd_conf.schema.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/schemas/hwd_conf_default.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/schemas/hwd_results.schema.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/schemas/hwd_results_default.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/utilities.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/xmlutils.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/runners/opensees/zipped.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/templatetags/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/templatetags/predictor.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/prediction/views_api.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/admin.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/config.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/migrations/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/models.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/templatetags/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/templatetags/indexing.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/tests.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/urls.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/view_sdof.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/view_utils.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/site/views.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/sitemaps.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/content_images/brace/mdof.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/content_images/brace/opensees.jpg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/content_images/brace/sdof.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/content_images/brace/sees.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/css/brace.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/css/brace.css.map +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/css/brace.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/css/uPlot.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/brace2-no_text.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/brand/dark.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/brand/light.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/colStrains.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/colStrains_big.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/colStrains_small.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/colStrains_svg_optimizer.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/colStrains_svg_optimizer.xml +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/drift.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/earthquake-hazard.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/android-chrome-192x192.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/android-chrome-512x512.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/apple-touch-icon.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/browserconfig.xml +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/favicon-16x16.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/favicon-32x32.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/favicon.ico +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/manifest.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/mstile-150x150.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/safari-pinned-tab.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/favicon/site.webmanifest +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/icons/github.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/icons/google-tag-manager.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/icons/google_analytics.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/illustrations/404.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/illustrations/500.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/illustrations/bs5-illustrations.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/illustrations/signin.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/marker.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/metric.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/painter.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/paypal-logo.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/peer-black.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/peer-light.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/predictors.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/profile-cover.jpg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/soga-logo.jpeg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/img/twin.png +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll01336.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll01336_1.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll13705.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll13795.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll14406.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll23631.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll23631_1.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll24694.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll24704.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll24706.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll24775.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll33742.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll47315.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll54730.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58600-2.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58600-3.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58600-4.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58600.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58601-2.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58601-3.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58601-4.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58601.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58632-2.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58632-3.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58632-4.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58632-5.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58632-6.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58632-7.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58632-8.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58632.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58658-2.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58658-3.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58658.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58658_1.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58658_2.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58658_3.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58700-1.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58700-3.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58700-4.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll58700.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68184.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68185-2.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68185-3.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68185-4.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68185-5.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68185-6.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68185-7.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68185-8.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68185.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68682-2.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68682-3.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68682-4.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68682-5.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll68682.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll79421.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll89324.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll89324_2.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll89686.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll89708-2.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll89708.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll89735.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll89736.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/inventory/ll89973.svg +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/js/787.545aecf5.chunk.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/js/d3.v4.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/js/events_api.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/js/events_page.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/js/fmkFunctions.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/js/jsonview.bundle.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/js/login_page.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/js/main.1c459f17.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/js/uPlot.iife.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper-base.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper-base.js.flow +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper-lite.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper-lite.js.flow +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/cjs/popper.js.flow +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/createPopper.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/contains.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getBoundingClientRect.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getClippingRect.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getCompositeRect.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getComputedStyle.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getDocumentElement.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getDocumentRect.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getHTMLElementScroll.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getLayoutRect.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getNodeName.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getNodeScroll.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getOffsetParent.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getParentNode.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getScrollParent.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getViewportRect.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getWindow.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getWindowScroll.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getWindowScrollBarX.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/instanceOf.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/isScrollParent.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/isTableElement.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/dom-utils/listScrollParents.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/enums.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/index.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/applyStyles.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/arrow.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/computeStyles.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/eventListeners.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/flip.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/hide.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/index.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/offset.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/popperOffsets.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/modifiers/preventOverflow.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/popper-base.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/popper-lite.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/popper.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/types.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/computeAutoPlacement.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/computeOffsets.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/debounce.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/detectOverflow.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/expandToHashMap.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/format.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getAltAxis.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getAltLen.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getBasePlacement.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getFreshSideObject.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getMainAxisFromPlacement.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getOppositePlacement.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getOppositeVariationPlacement.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/getVariation.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/math.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/mergeByName.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/mergePaddingObject.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/orderModifiers.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/rectToClientRect.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/uniqueBy.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/validateModifiers.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/esm/utils/within.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper-base.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper-base.min.js.flow +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper-lite.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper-lite.min.js.flow +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/@popperjs/core/dist/umd/popper.min.js.flow +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-grid.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-grid.rtl.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-reboot.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-reboot.rtl.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-utilities.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap-utilities.rtl.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/css/bootstrap.rtl.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/js/bootstrap.bundle.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/js/bootstrap.esm.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/bootstrap/dist/js/bootstrap.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/notyf/notyf.es.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/notyf/notyf.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/notyf/notyf.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/notyf/notyf.umd.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/nouislider/distribute/nouislider.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/nouislider/distribute/nouislider.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/nouislider/distribute/nouislider.min.mjs +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/nouislider/distribute/nouislider.mjs +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/onscreen/dist/index.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/onscreen/dist/on-screen.es6.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/onscreen/dist/on-screen.umd.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/simplebar/dist/simplebar-core.esm.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/simplebar/dist/simplebar.esm.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/simplebar/dist/simplebar.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/simplebar/dist/simplebar.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/simplebar/dist/simplebar.umd.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/smooth-scroll/dist/smooth-scroll.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/smooth-scroll/dist/smooth-scroll.polyfills.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/sweetalert2/dist/sweetalert2.all.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/sweetalert2/dist/sweetalert2.min.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/sweetalert2/dist/sweetalert2.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/waypoints/lib/jquery.waypoints.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/waypoints/lib/noframework.waypoints.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/waypoints/lib/shortcuts/infinite.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/waypoints/lib/shortcuts/inview.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/waypoints/lib/shortcuts/sticky.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/waypoints/lib/waypoints.debug.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/waypoints/lib/zepto.waypoints.min.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/waypoints/licenses.txt +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/assets/vendor/waypoints/testem.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/favicon.ico +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/static/sitemap.xml +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/accounts/login.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/accounts/register.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/admin/base_site.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/admin/color_theme_toggle.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/bridges/InteractiveTwin-CE58658.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/css/admin-extra.css +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/documents/documents.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/events/EarthquakeResponse.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/events/event-table.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/events/events.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/events/login.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/events/react_and_bootstrap.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/home/asset.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/includes/asset-event-table.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/includes/footer.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/includes/modal-report.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/includes/navigation.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/includes/settings-box.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/includes/sidebar.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/asset-evals.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/asset-event-summary.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/asset-on-map.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/asset-profile.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/asset-sensors.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/asset-table.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/bridge-dashboard.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/bridge.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/dashboard.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/map-inventory.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/map-inventory2.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/map-single-asset.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/map-single-asset2.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/map-terrain.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/preamble.tex +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/report.tex +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/inventory/three-maps.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/layouts/base-fullscreen.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/layouts/base.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/layouts/json-form.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/networks/_networks.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/networks/corridor_table.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/networks/networks.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/networks/styled_inputs.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/prediction/create-mdof.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/prediction/hazus/event.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/prediction/hazus/history.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/prediction/hazus/history.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/prediction/new-runner.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/prediction/predictor-profile.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/sensors/render-sensors.js +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/about.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/asset_map.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/components-forms.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/json-form.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-400-sidebar.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-400.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-403.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-404-sidebar.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-404.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-500.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-forgot-password.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-lock.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-reset-password.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-sign-in.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/page-sign-up.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/qr-0001.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/qr-0002.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/qr-0003.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/qr-0004.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/robots.txt +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/settings.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/tables-bootstrap-tables.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/transactions.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/apps/templates/site/unused-dashboard-cards.html +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/core/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/core/asgi.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/core/settings.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/core/urls.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/core/wsgi.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/fhwa/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/fhwa/__main__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/fhwa/fields/nbi001.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/fhwa/fields/nbi001b.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/fhwa/fields/nbi002.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/fhwa/fields.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/__init__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/__main__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/bridges.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/calid.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/data/cgs-stations.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/data/cgs_data.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/data/nbe_data-california.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/data/nbi/04.tar +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/data/nbi_codes-california-filtered.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/data/nbi_codes-california.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/data/nbi_data-california.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/data/nbi_data_cesmd.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/data/nbi_definitions.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/data/networks/soga_corridors.json +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/getBridgeData.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/getCGSData.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/getCGSevents.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/getNBIData.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/hayward.zip +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/management/commands/init_assets.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/management/commands/init_cesmd.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/management/commands/init_corridors.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/management/commands/init_predictors.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/init/management/commands/make_asset.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/pull/nbi.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/rest/__main__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie/usgs/__main__.py +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie.egg-info/dependency_links.txt +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie.egg-info/entry_points.txt +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie.egg-info/requires.txt +0 -0
- {irie-0.0.53 → irie-0.0.55}/src/irie.egg-info/top_level.txt +0 -0
|
@@ -32,7 +32,7 @@ def event_table(request):
|
|
|
32
32
|
events = [i for i in sorted(EventRecord.objects.all(),
|
|
33
33
|
key=lambda x: x.motion_data["event_date"], reverse=True)]
|
|
34
34
|
|
|
35
|
-
paginator = Paginator(events,
|
|
35
|
+
paginator = Paginator(events, 20)
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
# reversed(sorted(Event.objects.all(),
|
|
@@ -21,7 +21,7 @@ urlpatterns = [
|
|
|
21
21
|
path("asset_table/export", views.asset_table_export, name="asset_table_export_csv"),
|
|
22
22
|
re_path(
|
|
23
23
|
"^evaluations/(?P<event>[0-9 A-Z-]*)/(?P<cesmd>[0-9 A-Z-]*)/.*", views.asset_event_summary,
|
|
24
|
-
|
|
24
|
+
name="asset_event_summary"
|
|
25
25
|
),
|
|
26
26
|
re_path("^inventory/(?P<calid>[0-9 A-Z-]*)/evaluations/$", views.asset_evals, name="asset_evals"),
|
|
27
27
|
re_path("^inventory/(?P<calid>[0-9 A-Z-]*)/$", views.asset_profile, name="asset_profile"),
|
|
@@ -500,58 +500,59 @@ class OpenSeesRunner(Runner):
|
|
|
500
500
|
#
|
|
501
501
|
# Viewing methods
|
|
502
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
|
|
506
|
-
|
|
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
|
-
|
|
521
503
|
|
|
504
|
+
@property
|
|
505
|
+
def _csi(self):
|
|
506
|
+
if not hasattr(self, "_csi_data") or self._csi_data is None:
|
|
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
|
+
self._csi_data = load((str(line.decode()).replace("\r\n","\n") for line in csi_file.readlines()))
|
|
512
|
+
except Exception as e:
|
|
513
|
+
import sys
|
|
514
|
+
print(f"Error loading CSiBridge file: {e}", file=sys.stderr)
|
|
515
|
+
self._csi_data = None
|
|
522
516
|
|
|
517
|
+
return self._csi_data
|
|
518
|
+
|
|
519
|
+
|
|
520
|
+
def structural_section(self, name):
|
|
521
|
+
from openbim.csi._frame.section import create_section
|
|
522
|
+
# from openbim.csi._frame.outlines import section_mesh
|
|
523
|
+
if (s:= create_section(self._csi, name)) is not None:
|
|
524
|
+
return {}, s._create_model(mesh_size=0.1)
|
|
525
|
+
|
|
526
|
+
|
|
527
|
+
def structural_sections(self):
|
|
528
|
+
from openbim.csi._frame.section import iter_sections
|
|
529
|
+
yield from iter_sections(self._csi)
|
|
530
|
+
# for s, name in iter_sections(self._csi):
|
|
531
|
+
# yield {
|
|
532
|
+
# "name": name,
|
|
533
|
+
# "type": "Section",
|
|
534
|
+
# "section": name,
|
|
535
|
+
# }
|
|
523
536
|
|
|
524
537
|
def structural_members(self):
|
|
525
538
|
|
|
526
|
-
|
|
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",[]):
|
|
539
|
+
for item in self._csi.get("BRIDGE BENT DEFINITIONS 2 - COLUMN DATA",[]):
|
|
537
540
|
if "ColNum" in item and "Section" in item:
|
|
538
541
|
yield {
|
|
539
542
|
"name": item["ColNum"],
|
|
540
543
|
"type": "Column",
|
|
541
|
-
"section": item["Section"],
|
|
544
|
+
# "section": item["Section"],
|
|
542
545
|
}
|
|
543
546
|
|
|
544
|
-
for item in
|
|
547
|
+
for item in self._csi.get("BRIDGE OBJECT DEFINITIONS 03 - SPANS 1 - GENERAL", []):
|
|
545
548
|
if "SpanName" in item and "BridgeSect" in item:
|
|
546
549
|
yield {
|
|
547
550
|
"name": item["SpanName"],
|
|
548
551
|
"type": "Span",
|
|
549
|
-
"section": None,
|
|
552
|
+
# "section": None,
|
|
550
553
|
}
|
|
551
554
|
|
|
552
555
|
|
|
553
|
-
|
|
554
|
-
|
|
555
556
|
# import subprocess
|
|
556
557
|
# class Event: pass
|
|
557
558
|
|
|
@@ -12,7 +12,6 @@ import json
|
|
|
12
12
|
import io
|
|
13
13
|
import base64
|
|
14
14
|
import numpy as np
|
|
15
|
-
# Ensure Agg backend is set for non-interactive plotting
|
|
16
15
|
|
|
17
16
|
import quakeio
|
|
18
17
|
from scipy.signal import find_peaks
|
|
@@ -433,6 +432,7 @@ def plot_spectral_surface(ax, traces, **options):
|
|
|
433
432
|
|
|
434
433
|
|
|
435
434
|
def _plot_mountains(spectra, accellim=None):
|
|
435
|
+
# Ensure Agg backend is set for non-interactive plotting
|
|
436
436
|
import matplotlib
|
|
437
437
|
matplotlib.use('Agg')
|
|
438
438
|
from matplotlib import pyplot as plt, ticker, cm
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
#----------------------------------------------------------------------------#
|
|
10
10
|
from django.urls import re_path
|
|
11
11
|
from .views import (
|
|
12
|
-
asset_predictors, predictor_profile,
|
|
12
|
+
asset_predictors, predictor_profile, predictor_render,
|
|
13
13
|
create_mdof, create_model, asset_map
|
|
14
14
|
)
|
|
15
15
|
|
|
@@ -17,7 +17,7 @@ _ROOT = "^inventory/(?P<calid>[0-9 A-Z-]*)/predictors"
|
|
|
17
17
|
|
|
18
18
|
urlpatterns = [
|
|
19
19
|
re_path(f"{_ROOT}/(?P<preid>[0-9]{{1,}})/$", predictor_profile),
|
|
20
|
-
re_path(f"{_ROOT}/(?P<preid>[0-9]{{1,}})/
|
|
20
|
+
re_path(f"{_ROOT}/(?P<preid>[0-9]{{1,}})/render/", predictor_render),
|
|
21
21
|
re_path(f"{_ROOT}/create/map/$", asset_map),
|
|
22
22
|
re_path(f"{_ROOT}/create/model/$", create_model),
|
|
23
23
|
re_path(f"{_ROOT}/create/v1/$", create_mdof),
|
|
@@ -14,6 +14,7 @@ import json
|
|
|
14
14
|
import veux
|
|
15
15
|
import uuid
|
|
16
16
|
import base64
|
|
17
|
+
import hashlib
|
|
17
18
|
|
|
18
19
|
from django.shortcuts import HttpResponse
|
|
19
20
|
from django.template import loader, TemplateDoesNotExist
|
|
@@ -30,6 +31,14 @@ from irie.apps.prediction.models import PredictorModel
|
|
|
30
31
|
from .forms import PredictorForm
|
|
31
32
|
|
|
32
33
|
|
|
34
|
+
|
|
35
|
+
def _string_to_id(s: str) -> str:
|
|
36
|
+
# 1. SHA-256 → bytes 2. URL-safe Base64 (no + / =) 3. strip padding
|
|
37
|
+
b64 = base64.urlsafe_b64encode(
|
|
38
|
+
hashlib.sha256(s.encode()).digest()
|
|
39
|
+
).rstrip(b'=').decode('ascii')
|
|
40
|
+
return f"id_{b64}"
|
|
41
|
+
|
|
33
42
|
@login_required(login_url="/login/")
|
|
34
43
|
def asset_predictors(request, calid):
|
|
35
44
|
|
|
@@ -59,8 +68,7 @@ def asset_predictors(request, calid):
|
|
|
59
68
|
|
|
60
69
|
|
|
61
70
|
@login_required(login_url="/login/")
|
|
62
|
-
def
|
|
63
|
-
print(preid)
|
|
71
|
+
def predictor_render(request, calid, preid):
|
|
64
72
|
try:
|
|
65
73
|
predictor = PredictorModel.objects.get(pk=int(preid))
|
|
66
74
|
except ObjectDoesNotExist:
|
|
@@ -71,7 +79,18 @@ def predictor_profile_detail(request, calid, preid):
|
|
|
71
79
|
runner = PREDICTOR_TYPES[predictor.protocol](predictor)
|
|
72
80
|
|
|
73
81
|
try:
|
|
74
|
-
|
|
82
|
+
_, mesh = runner.structural_section(sname)
|
|
83
|
+
|
|
84
|
+
can = veux._create_canvas(name="gltf")
|
|
85
|
+
import numpy as np
|
|
86
|
+
R = np.array([[1, 0],[0, 1], [0, 0]])
|
|
87
|
+
can.plot_lines(mesh.exterior()@R.T)
|
|
88
|
+
if (interior := mesh.interior()) is not None:
|
|
89
|
+
for i in interior:
|
|
90
|
+
can.plot_lines(i@R.T)
|
|
91
|
+
glb = can.to_glb()
|
|
92
|
+
return HttpResponse(glb, content_type="application/binary")
|
|
93
|
+
|
|
75
94
|
except Exception as e:
|
|
76
95
|
raise e
|
|
77
96
|
return HttpResponse(
|
|
@@ -79,6 +98,7 @@ def predictor_profile_detail(request, calid, preid):
|
|
|
79
98
|
content_type="application/json",
|
|
80
99
|
status=404
|
|
81
100
|
)
|
|
101
|
+
|
|
82
102
|
from veux.plane import PlaneModel
|
|
83
103
|
art = veux.create_artist(mesh, ndf=1, canvas="gltf")
|
|
84
104
|
art.draw_surfaces()
|
|
@@ -86,7 +106,7 @@ def predictor_profile_detail(request, calid, preid):
|
|
|
86
106
|
|
|
87
107
|
glb = art.canvas.to_glb()
|
|
88
108
|
return HttpResponse(glb, content_type="application/binary")
|
|
89
|
-
|
|
109
|
+
|
|
90
110
|
# rendering = f"data:application/octet-stream;base64,{glb64}"
|
|
91
111
|
# rendering = art._repr_html_()
|
|
92
112
|
r = dict(
|
|
@@ -120,12 +140,19 @@ def predictor_profile(request, calid, preid):
|
|
|
120
140
|
context["predictor"] = predictor
|
|
121
141
|
context["sensors"] = predictor.sensorassignment_set.all()
|
|
122
142
|
|
|
123
|
-
|
|
124
143
|
try:
|
|
125
144
|
if predictor.protocol == PredictorModel.Protocol.TYPE1:
|
|
126
145
|
html_template = loader.get_template("prediction/xara-profile.html")
|
|
146
|
+
|
|
127
147
|
context["members"] = context["runner"].structural_members()
|
|
128
148
|
|
|
149
|
+
context["sections"] = [
|
|
150
|
+
{
|
|
151
|
+
"id": _string_to_id(name),
|
|
152
|
+
"name": name,
|
|
153
|
+
} for _, name in context["runner"].structural_sections()
|
|
154
|
+
]
|
|
155
|
+
|
|
129
156
|
else:
|
|
130
157
|
html_template = loader.get_template("prediction/predictor-profile.html")
|
|
131
158
|
|
|
@@ -243,7 +270,7 @@ def create_model(request, calid):
|
|
|
243
270
|
)
|
|
244
271
|
artist.draw_surfaces()
|
|
245
272
|
|
|
246
|
-
# Generate the .glb
|
|
273
|
+
# Generate the .glb data
|
|
247
274
|
glb = artist.canvas.to_glb()
|
|
248
275
|
|
|
249
276
|
if request.POST.get("action") == "commit":
|
|
@@ -183,7 +183,7 @@ document.addEventListener("DOMContentLoaded", function(event) {
|
|
|
183
183
|
});
|
|
184
184
|
|
|
185
185
|
if (document.querySelector('.current-year')){
|
|
186
|
-
|
|
186
|
+
document.querySelector('.current-year').textContent = new Date().getFullYear();
|
|
187
187
|
}
|
|
188
188
|
// Glide JS
|
|
189
189
|
});
|
|
@@ -302,7 +302,7 @@ if (document.querySelector('.fixed-plugin')) {
|
|
|
302
302
|
|
|
303
303
|
}
|
|
304
304
|
|
|
305
|
-
//Set Sidebar Color
|
|
305
|
+
// Set Sidebar Color
|
|
306
306
|
function sidebarColor(a) {
|
|
307
307
|
var parent = document.querySelector(".nav-link.active");
|
|
308
308
|
var color = a.getAttribute("data-color");
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
//===----------------------------------------------------------------------===#
|
|
6
6
|
//
|
|
7
7
|
class TablePagination {
|
|
8
|
+
|
|
8
9
|
constructor(tableId, paginationId, searchInputId, rowsPerPage = 9) {
|
|
9
10
|
this.table = document.getElementById(tableId);
|
|
10
11
|
this.pagination = document.getElementById(paginationId);
|
|
@@ -243,12 +243,10 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
|
243
243
|
|
|
244
244
|
const scene = createSensorRenderer(container, modelPath);
|
|
245
245
|
|
|
246
|
-
|
|
247
|
-
const arrowObjects = [];
|
|
248
|
-
|
|
249
246
|
//
|
|
250
247
|
// Plot Button
|
|
251
248
|
//
|
|
249
|
+
const arrowObjects = [];
|
|
252
250
|
const plotButton = document.getElementById('plot-btn');
|
|
253
251
|
plotButton.addEventListener('click', function () {
|
|
254
252
|
arrowObjects.forEach(arrow => {
|
|
@@ -62,7 +62,7 @@ Claudio Perez, Summer 2023
|
|
|
62
62
|
<h6 class="accordion-header" style="display:inline" id="{{forloop.counter}}">
|
|
63
63
|
<a href="./{{predictor.id}}" >
|
|
64
64
|
{{predictor.name}}
|
|
65
|
-
</a> (<code>{{ predictor.platform }}</code>)
|
|
65
|
+
</a> <!-- (<code>{{ predictor.platform }}</code>) -->
|
|
66
66
|
</h6>
|
|
67
67
|
</div>
|
|
68
68
|
|
|
@@ -36,6 +36,7 @@
|
|
|
36
36
|
</a>
|
|
37
37
|
</div>
|
|
38
38
|
</div>
|
|
39
|
+
|
|
39
40
|
<div class="row">
|
|
40
41
|
<div class="col">
|
|
41
42
|
<form method="POST" enctype="multipart/form-data">
|
|
@@ -46,6 +47,13 @@
|
|
|
46
47
|
</form>
|
|
47
48
|
</div>
|
|
48
49
|
</div>
|
|
50
|
+
|
|
51
|
+
{% if navigator %}
|
|
52
|
+
{% include "prediction/veux/navigator.html" with members=navigator.members sections=navigator.sections %}
|
|
53
|
+
{% endif %}
|
|
54
|
+
|
|
55
|
+
{% if error %}
|
|
56
|
+
{% endif %}
|
|
49
57
|
<div class="row">
|
|
50
58
|
<iframe
|
|
51
59
|
id="map"
|
|
@@ -58,6 +66,25 @@
|
|
|
58
66
|
{% endblock content %}
|
|
59
67
|
|
|
60
68
|
{% block javascripts %}
|
|
69
|
+
{% if navigator %}
|
|
70
|
+
<script>
|
|
71
|
+
|
|
72
|
+
{% include "prediction/veux/navigator.js" %}
|
|
73
|
+
|
|
74
|
+
const VIEWER = new VeuxNavigator(`/inventory/{{asset.calid}}/predictors/{{predictor.id}}/render/?section=`,
|
|
75
|
+
document.querySelector('#tab-link-container'),
|
|
76
|
+
document.getElementById('tab-content-container'));
|
|
77
|
+
|
|
78
|
+
function handleMemberSelection(elem) {
|
|
79
|
+
VIEWER.select(elem);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
document.addEventListener('DOMContentLoaded', function () {
|
|
83
|
+
VIEWER.initTabs('tab1', '.tab-link');
|
|
84
|
+
});
|
|
85
|
+
</script>
|
|
86
|
+
{% endif %}
|
|
87
|
+
|
|
61
88
|
<script>
|
|
62
89
|
const button = document.getElementById('render');
|
|
63
90
|
const form = document.querySelector('form');
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
<div class="">
|
|
2
|
+
<div class="row align-right">
|
|
3
|
+
<!-- Left Side: Sensor Form -->
|
|
4
|
+
<div class="col-md-4" >
|
|
5
|
+
<div class="card bg-white-100 border-1 rounded-0 shadow">
|
|
6
|
+
<div class="card-header d-sm-flex flex-row align-items-center flex-0">
|
|
7
|
+
<select id="table-switcher"
|
|
8
|
+
class="form-select form-select-sm me-2">
|
|
9
|
+
<option value="members" >Members</option>
|
|
10
|
+
<option value="sections">Sections</option>
|
|
11
|
+
<option value="sensors" >Sensors</option>
|
|
12
|
+
</select>
|
|
13
|
+
</div>
|
|
14
|
+
<div class="card-body">
|
|
15
|
+
<div class="table-response">
|
|
16
|
+
<table id="members"
|
|
17
|
+
class="table align-items-center table-flush">
|
|
18
|
+
<thead class="thead-light">
|
|
19
|
+
<tr>
|
|
20
|
+
<th class="border-bottom" scope="col">#</th>
|
|
21
|
+
<th class="border-bottom" scope="col">Type</th>
|
|
22
|
+
</tr>
|
|
23
|
+
</thead>
|
|
24
|
+
<tbody>
|
|
25
|
+
{% for member in members %}
|
|
26
|
+
<tr id="veux-member-{{member.id}}"
|
|
27
|
+
data-section="{{ member.section }}"
|
|
28
|
+
style="cursor: pointer;"
|
|
29
|
+
onClick="handleMemberSelection(this)">
|
|
30
|
+
<td><code>{{ member.name }}</code></td>
|
|
31
|
+
<td>{{ member.type }}</td>
|
|
32
|
+
</tr>
|
|
33
|
+
{% endfor %}
|
|
34
|
+
</tbody>
|
|
35
|
+
</table>
|
|
36
|
+
|
|
37
|
+
<table id="sections" hidden
|
|
38
|
+
class="table align-items-center table-flush">
|
|
39
|
+
<thead class="thead-light">
|
|
40
|
+
<tr>
|
|
41
|
+
<th class="border-bottom" scope="col">#</th>
|
|
42
|
+
<th class="border-bottom" scope="col">Type</th>
|
|
43
|
+
</tr>
|
|
44
|
+
</thead>
|
|
45
|
+
<tbody>
|
|
46
|
+
{% for member in sections %}
|
|
47
|
+
<tr id="veux-member-{{member.id}}"
|
|
48
|
+
data-query="{{ member.name }}"
|
|
49
|
+
data-name="{{ member.name }}"
|
|
50
|
+
style="cursor: pointer;"
|
|
51
|
+
onClick="handleMemberSelection(this)">
|
|
52
|
+
<td><code>{{ member.name }}</code></td>
|
|
53
|
+
<td>{{ member.type }}</td>
|
|
54
|
+
</tr>
|
|
55
|
+
{% endfor %}
|
|
56
|
+
</tbody>
|
|
57
|
+
</table>
|
|
58
|
+
|
|
59
|
+
<table id="sensors"
|
|
60
|
+
class="table align-items-center table-flush" hidden>
|
|
61
|
+
<thead class="thead-light">
|
|
62
|
+
<tr>
|
|
63
|
+
<th class="border-bottom" scope="col">#</th>
|
|
64
|
+
<th class="border-bottom" scope="col">Node</th>
|
|
65
|
+
<th class="border-bottom" scope="col">Type</th>
|
|
66
|
+
</tr>
|
|
67
|
+
</thead>
|
|
68
|
+
<tbody>
|
|
69
|
+
{% for sensor in sensors %}
|
|
70
|
+
<tr id="sensor-{{sensor.id}}"
|
|
71
|
+
data-sensor-x="{{ sensor.sensor.x }}"
|
|
72
|
+
data-sensor-y="{{ sensor.sensor.y }}"
|
|
73
|
+
data-sensor-z="{{ sensor.sensor.z }}"
|
|
74
|
+
data-sensor-dx="{{ sensor.sensor.dx }}"
|
|
75
|
+
data-sensor-dy="{{ sensor.sensor.dy }}"
|
|
76
|
+
data-sensor-dz="{{ sensor.sensor.dy }}">
|
|
77
|
+
<td><code>{{ sensor.id }}</code></td>
|
|
78
|
+
<td>{{ sensor.node }}</td>
|
|
79
|
+
<td>{{ sensor.role }}</td>
|
|
80
|
+
</tr>
|
|
81
|
+
{% endfor %}
|
|
82
|
+
</tbody>
|
|
83
|
+
</table>
|
|
84
|
+
<nav>
|
|
85
|
+
<ul class="pagination" id="pagination"></ul>
|
|
86
|
+
</nav>
|
|
87
|
+
</div>
|
|
88
|
+
</div>
|
|
89
|
+
</div>
|
|
90
|
+
</div>
|
|
91
|
+
|
|
92
|
+
<!-- Right Side: Predictor Rendering -->
|
|
93
|
+
<div class="col-md-8">
|
|
94
|
+
<div id="rendering" class="card bg-white-100 border-1 rounded-0 shadow">
|
|
95
|
+
<div class="card-header">
|
|
96
|
+
<ul id="tab-link-container" class="nav nav-tabs" id="myTab" role="tablist">
|
|
97
|
+
<li class="nav-item" role="presentation">
|
|
98
|
+
<a class="nav-link tab-link active"
|
|
99
|
+
id="tab1-tab"
|
|
100
|
+
data-bs-toggle="tab" href="#"
|
|
101
|
+
data-tab="tab1"
|
|
102
|
+
role="tab">Model</a>
|
|
103
|
+
</li>
|
|
104
|
+
</ul>
|
|
105
|
+
</div>
|
|
106
|
+
<div class="card-body text-center" style="background-color: #f0f0f0;">
|
|
107
|
+
<div id="tab-content-container">
|
|
108
|
+
<div id="tab1-content" class="tab-content">
|
|
109
|
+
<div id="main-viewer"
|
|
110
|
+
style="width: 100%; height: 300px; background-color: #f0f0f0; margin: 0 auto;">
|
|
111
|
+
</div>
|
|
112
|
+
</div>
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
<div class="card-footer text-center">
|
|
116
|
+
Powered by <a href="https://veux.io/">veux</a>
|
|
117
|
+
</div>
|
|
118
|
+
</div>
|
|
119
|
+
</div>
|
|
120
|
+
</div>
|
|
121
|
+
</div>
|
|
@@ -4,15 +4,15 @@
|
|
|
4
4
|
//
|
|
5
5
|
//===----------------------------------------------------------------------===//
|
|
6
6
|
//
|
|
7
|
-
class
|
|
7
|
+
class VeuxNavigator {
|
|
8
8
|
#initializedTabs;
|
|
9
9
|
#table;
|
|
10
10
|
#url;
|
|
11
11
|
#tabLinkContainer;
|
|
12
12
|
#tabContentContainer;
|
|
13
13
|
|
|
14
|
-
constructor(
|
|
15
|
-
this.#url =
|
|
14
|
+
constructor(baseUrl, tabLinkContainer, tabContentContainer) {
|
|
15
|
+
this.#url = baseUrl;
|
|
16
16
|
this.#initializedTabs = [];
|
|
17
17
|
this.#tabLinkContainer = tabLinkContainer;
|
|
18
18
|
this.#tabContentContainer = tabContentContainer;
|
|
@@ -32,7 +32,8 @@ class VeuxViewer {
|
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
select(elem) {
|
|
35
|
-
const sname = elem.dataset.
|
|
35
|
+
const sname = `${elem.id}`; //dataset.name;
|
|
36
|
+
// const hash = elem.dataset.hash;
|
|
36
37
|
|
|
37
38
|
if (this.#initializedTabs.includes(sname)) {
|
|
38
39
|
const tabLink = this.#tabLinkContainer.querySelector(`#${sname}-tab`);
|
|
@@ -40,11 +41,11 @@ class VeuxViewer {
|
|
|
40
41
|
return;
|
|
41
42
|
}
|
|
42
43
|
|
|
43
|
-
this.addTab(
|
|
44
|
+
this.addTab(elem);
|
|
44
45
|
}
|
|
45
46
|
|
|
46
|
-
addTab(
|
|
47
|
-
const tab = `${
|
|
47
|
+
addTab(elem) {
|
|
48
|
+
const tab = `${elem.id}`;
|
|
48
49
|
|
|
49
50
|
//
|
|
50
51
|
//
|
|
@@ -54,10 +55,10 @@ class VeuxViewer {
|
|
|
54
55
|
tabLink.classList.add("tab-link", "nav-link", "active");
|
|
55
56
|
tabLink.href = "#";
|
|
56
57
|
tabLink.setAttribute('data-tab', tab);
|
|
57
|
-
tabLink.setAttribute('data-
|
|
58
|
+
tabLink.setAttribute('data-query', elem.dataset.query);
|
|
58
59
|
tabLink.setAttribute('data-bs-toggle', 'tab');
|
|
59
60
|
tabLink.setAttribute('role', 'tab');
|
|
60
|
-
tabLink.innerHTML = `${
|
|
61
|
+
tabLink.innerHTML = `${elem.dataset.name} <button class="btn-close" type="button" aria-label="Close"></button>`;
|
|
61
62
|
const closeButton = tabLink.querySelector('.btn-close');
|
|
62
63
|
closeButton.addEventListener('click', (e) => {
|
|
63
64
|
this.delTab(tabLink);
|
|
@@ -83,14 +84,10 @@ class VeuxViewer {
|
|
|
83
84
|
tabContent.style.display = 'block';
|
|
84
85
|
this.#tabContentContainer.appendChild(tabContent);
|
|
85
86
|
|
|
86
|
-
|
|
87
|
-
const selectedTab = tabLink.getAttribute('data-tab');
|
|
88
|
-
|
|
87
|
+
|
|
89
88
|
this.#initializedTabs.push(tab);
|
|
90
|
-
|
|
91
89
|
this.clickTab(tabLink);
|
|
92
|
-
|
|
93
|
-
this.fetchAndUpdateTab(selectedTab, corr);
|
|
90
|
+
this.fetchAndUpdateTab(tab, elem.dataset.query);
|
|
94
91
|
return tabLink;
|
|
95
92
|
}
|
|
96
93
|
|
|
@@ -133,7 +130,7 @@ class VeuxViewer {
|
|
|
133
130
|
this.clickTab(document.getElementById('tab1-tab'));
|
|
134
131
|
}
|
|
135
132
|
|
|
136
|
-
fetchAndUpdateTab(tab) {
|
|
133
|
+
fetchAndUpdateTab(tab, query) {
|
|
137
134
|
const contentDiv = this.#tabContentContainer.querySelector(`#${tab}-content`);
|
|
138
135
|
|
|
139
136
|
// Show loading message while content is being fetched
|
|
@@ -145,7 +142,7 @@ class VeuxViewer {
|
|
|
145
142
|
</div>
|
|
146
143
|
`;
|
|
147
144
|
|
|
148
|
-
let apiUrl = `${this.#url}${
|
|
145
|
+
let apiUrl = `${this.#url}${query}`;
|
|
149
146
|
console.log(`Fetching content from: ${apiUrl}`);
|
|
150
147
|
|
|
151
148
|
if (true) {
|
|
@@ -162,6 +159,9 @@ class VeuxViewer {
|
|
|
162
159
|
contentDiv.appendChild(mv);
|
|
163
160
|
return;
|
|
164
161
|
}
|
|
162
|
+
|
|
163
|
+
//
|
|
164
|
+
//
|
|
165
165
|
fetch(apiUrl)
|
|
166
166
|
.then(response => response.json())
|
|
167
167
|
.then(data => {
|