diff --git a/frontend/openapi-ts.config.ts b/frontend/openapi-ts.config.ts new file mode 100644 index 000000000..5ee178fed --- /dev/null +++ b/frontend/openapi-ts.config.ts @@ -0,0 +1,15 @@ +import { defineConfig } from "@hey-api/openapi-ts"; + +export default defineConfig({ + client: "@hey-api/client-axios", + input: "http://localhost:5000/openapi.json", + output: "./src/api", + /* + services: { + methodNameBuilder: (operation) => { + return `${operation.name}_api`; + }, + }, + */ + // plugins: ["@tanstack/react-query"], +}); diff --git a/frontend/package-lock.json b/frontend/package-lock.json index e50e50853..89ee289a8 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -10,6 +10,7 @@ "dependencies": { "@equinor/esv-intersection": "^3.0.10", "@headlessui/react": "^1.7.8", + "@hey-api/client-axios": "^0.2.9", "@mui/base": "^5.0.0-beta.3", "@mui/icons-material": "^5.14.9", "@tanstack/query-core": "^5.17.19", @@ -37,6 +38,7 @@ "wonka": "^6.3.4" }, "devDependencies": { + "@hey-api/openapi-ts": "^0.53.11", "@playwright/experimental-ct-react": "^1.39.0", "@playwright/test": "^1.39.0", "@trivago/prettier-plugin-sort-imports": "^4.0.0", @@ -60,7 +62,6 @@ "eslint-plugin-react": "^7.32.2", "eslint-plugin-react-hooks": "^4.6.0", "glob": "^10.3.3", - "openapi-typescript-codegen": "^0.26.0", "postcss": "^8.4.21", "prettier": "2.8.3", "sass": "^1.62.0", @@ -106,16 +107,14 @@ } }, "node_modules/@apidevtools/json-schema-ref-parser": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.1.0.tgz", - "integrity": "sha512-g/VW9ZQEFJAOwAyUb8JFf7MLiLy2uEB4rU270rGzDwICxnxMlPy0O11KVePSgS36K1NI29gSlK84n5INGhd4Ag==", + "version": "11.7.0", + "resolved": "https://registry.npmjs.org/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.7.0.tgz", + "integrity": "sha512-pRrmXMCwnmrkS3MLgAIW5dXRzeTv6GLjkjb4HmxNnvAKXN1Nfzp4KmGADBQvlVUcqi+a5D+hfGDLLnd5NnYxog==", "dev": true, "dependencies": { "@jsdevtools/ono": "^7.1.3", - "@types/json-schema": "^7.0.13", - "@types/lodash.clonedeep": "^4.5.7", - "js-yaml": "^4.1.0", - "lodash.clonedeep": "^4.5.0" + "@types/json-schema": "^7.0.15", + "js-yaml": "^4.1.0" }, "engines": { "node": ">= 16" @@ -310,17 +309,17 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.23.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", - "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", "engines": { "node": ">=6.9.0" } @@ -362,10 +361,13 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", - "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.9.tgz", + "integrity": "sha512-aI3jjAAO1fh7vY/pBGsn1i9LDbRP43+asrRlkPuTXW5yHXtd1NgTEMudbBoDDxrf1daEEfPJqR+JBMakzrR4Dg==", "dev": true, + "dependencies": { + "@babel/types": "^7.25.9" + }, "bin": { "parser": "bin/babel-parser.js" }, @@ -450,13 +452,12 @@ } }, "node_modules/@babel/types": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", - "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.9.tgz", + "integrity": "sha512-OwS2CM5KocvQ/k7dFJa8i5bNGJP0hXWfVCfDkqRFP1IreH1JDC7wG6eCYCi0+McbfT8OR/kNqsI0UU0xP9H6PQ==", "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -1426,6 +1427,80 @@ "react-dom": "^16 || ^17 || ^18" } }, + "node_modules/@hey-api/client-axios": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/@hey-api/client-axios/-/client-axios-0.2.9.tgz", + "integrity": "sha512-K4T0KdBKl4LKbAVtfL1E9y9l2Q79NskptPBQcV1+RayjADCJctOtwdjwJitkpxj31UfQ79TSKHH96mMs9HrSsQ==", + "funding": { + "url": "https://github.com/sponsors/mrlubos" + }, + "peerDependencies": { + "axios": ">= 1.0.0 < 2" + } + }, + "node_modules/@hey-api/openapi-ts": { + "version": "0.53.11", + "resolved": "https://registry.npmjs.org/@hey-api/openapi-ts/-/openapi-ts-0.53.11.tgz", + "integrity": "sha512-PaO+o0jDhfHVS5SjtonP5CzP/NYoW8dVZUn8WthSgzpgPts8AiWYXplOyk5uEnM4ZxbkZbeTiREwaNLnJmXlTQ==", + "dev": true, + "dependencies": { + "@apidevtools/json-schema-ref-parser": "11.7.0", + "c12": "2.0.1", + "commander": "12.1.0", + "handlebars": "4.7.8" + }, + "bin": { + "openapi-ts": "bin/index.cjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mrlubos" + }, + "peerDependencies": { + "typescript": "^5.x" + } + }, + "node_modules/@hey-api/openapi-ts/node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "dev": true, + "engines": { + "node": ">=18" + } + }, + "node_modules/@hey-api/openapi-ts/node_modules/handlebars": { + "version": "4.7.8", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", + "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5", + "neo-async": "^2.6.2", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" + }, + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" + } + }, + "node_modules/@hey-api/openapi-ts/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/@humanwhocodes/config-array": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", @@ -4352,15 +4427,6 @@ "@types/lodash": "*" } }, - "node_modules/@types/lodash.clonedeep": { - "version": "4.5.9", - "resolved": "https://registry.npmjs.org/@types/lodash.clonedeep/-/lodash.clonedeep-4.5.9.tgz", - "integrity": "sha512-19429mWC+FyaAhOLzsS8kZUsI+/GmBAQ0HFiCPsKGU+7pBXOQWhyrY6xNNDwUSX8SMZMJvuFVMF9O5dQOlQK9Q==", - "dev": true, - "dependencies": { - "@types/lodash": "*" - } - }, "node_modules/@types/node": { "version": "18.17.1", "resolved": "https://registry.npmjs.org/@types/node/-/node-18.17.1.tgz", @@ -5582,6 +5648,71 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "peer": true }, + "node_modules/c12": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/c12/-/c12-2.0.1.tgz", + "integrity": "sha512-Z4JgsKXHG37C6PYUtIxCfLJZvo6FyhHJoClwwb9ftUkLpPSkuYqn6Tr+vnaN8hymm0kIbcg6Ey3kv/Q71k5w/A==", + "dev": true, + "dependencies": { + "chokidar": "^4.0.1", + "confbox": "^0.1.7", + "defu": "^6.1.4", + "dotenv": "^16.4.5", + "giget": "^1.2.3", + "jiti": "^2.3.0", + "mlly": "^1.7.1", + "ohash": "^1.1.4", + "pathe": "^1.1.2", + "perfect-debounce": "^1.0.0", + "pkg-types": "^1.2.0", + "rc9": "^2.1.2" + }, + "peerDependencies": { + "magicast": "^0.3.5" + }, + "peerDependenciesMeta": { + "magicast": { + "optional": true + } + } + }, + "node_modules/c12/node_modules/chokidar": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", + "dev": true, + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/c12/node_modules/jiti": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.3.3.tgz", + "integrity": "sha512-EX4oNDwcXSivPrw2qKH2LB5PoFxEvgtv2JgwW0bU858HoLQ+kutSvjLMUqBd0PeJYEinLWhoI9Ol0eYMqj/wNQ==", + "dev": true, + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/c12/node_modules/readdirp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", + "dev": true, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/cac": { "version": "6.7.14", "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", @@ -5748,6 +5879,24 @@ "node": ">= 6" } }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/citty": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.6.tgz", + "integrity": "sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==", + "dev": true, + "dependencies": { + "consola": "^3.2.3" + } + }, "node_modules/clamp": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/clamp/-/clamp-1.0.1.tgz", @@ -5901,6 +6050,21 @@ "typedarray": "^0.0.6" } }, + "node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", + "dev": true + }, + "node_modules/consola": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-3.2.3.tgz", + "integrity": "sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==", + "dev": true, + "engines": { + "node": "^14.18.0 || >=16.10.0" + } + }, "node_modules/convert-source-map": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", @@ -6640,6 +6804,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/defu": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", + "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==", + "dev": true + }, "node_modules/delaunator": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", @@ -6772,6 +6942,12 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, + "node_modules/destr": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/destr/-/destr-2.0.3.tgz", + "integrity": "sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==", + "dev": true + }, "node_modules/detect-kerning": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/detect-kerning/-/detect-kerning-2.1.2.tgz", @@ -6838,6 +7014,18 @@ "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" }, + "node_modules/dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/downshift": { "version": "8.3.3", "resolved": "https://registry.npmjs.org/downshift/-/downshift-8.3.3.tgz", @@ -8184,6 +8372,36 @@ "node": ">=6 <7 || >=8" } }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs-minipass/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -8338,6 +8556,25 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/giget": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/giget/-/giget-1.2.3.tgz", + "integrity": "sha512-8EHPljDvs7qKykr6uw8b+lqLiUc/vUg+KVTI0uND4s63TdsZM2Xus3mflvF0DDG9SiM4RlCkFGL+7aAjRmV7KA==", + "dev": true, + "dependencies": { + "citty": "^0.1.6", + "consola": "^3.2.3", + "defu": "^6.1.4", + "node-fetch-native": "^1.6.3", + "nypm": "^0.3.8", + "ohash": "^1.1.3", + "pathe": "^1.1.2", + "tar": "^6.2.0" + }, + "bin": { + "giget": "dist/cli.mjs" + } + }, "node_modules/gl-mat4": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/gl-mat4/-/gl-mat4-1.2.0.tgz", @@ -9705,12 +9942,6 @@ "node": ">=6" } }, - "node_modules/jsonc-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", - "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", - "dev": true - }, "node_modules/jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", @@ -9921,12 +10152,6 @@ "lodash._slice": "~2.3.0" } }, - "node_modules/lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", - "dev": true - }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -10059,14 +10284,14 @@ } }, "node_modules/magicast": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.2.tgz", - "integrity": "sha512-Fjwkl6a0syt9TFN0JSYpOybxiMCkYNEeOTnOTNRbjphirLakznZXAqrXgj/7GG3D1dvETONNwrBfinvAbpunDg==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.5.tgz", + "integrity": "sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.3", - "@babel/types": "^7.23.3", - "source-map-js": "^1.0.2" + "@babel/parser": "^7.25.4", + "@babel/types": "^7.25.4", + "source-map-js": "^1.2.0" } }, "node_modules/make-dir": { @@ -10331,6 +10556,37 @@ "node": ">=16 || 14 >=14.17" } }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, "node_modules/mjolnir.js": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/mjolnir.js/-/mjolnir.js-2.7.1.tgz", @@ -10344,16 +10600,40 @@ "npm": ">= 3" } }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/mlly": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.4.2.tgz", - "integrity": "sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==", + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.2.tgz", + "integrity": "sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==", "dev": true, "dependencies": { - "acorn": "^8.10.0", - "pathe": "^1.1.1", - "pkg-types": "^1.0.3", - "ufo": "^1.3.0" + "acorn": "^8.12.1", + "pathe": "^1.1.2", + "pkg-types": "^1.2.0", + "ufo": "^1.5.4" + } + }, + "node_modules/mlly/node_modules/acorn": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz", + "integrity": "sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" } }, "node_modules/mouse-change": { @@ -10487,6 +10767,12 @@ "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", "peer": true }, + "node_modules/node-fetch-native": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.4.tgz", + "integrity": "sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==", + "dev": true + }, "node_modules/node-releases": { "version": "2.0.14", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", @@ -10541,6 +10827,26 @@ "node": ">=0.10.0" } }, + "node_modules/nypm": { + "version": "0.3.12", + "resolved": "https://registry.npmjs.org/nypm/-/nypm-0.3.12.tgz", + "integrity": "sha512-D3pzNDWIvgA+7IORhD/IuWzEk4uXv6GsgOxiid4UU3h9oq5IqV1KtPDi63n4sZJ/xcWlr88c0QM2RgN5VbOhFA==", + "dev": true, + "dependencies": { + "citty": "^0.1.6", + "consola": "^3.2.3", + "execa": "^8.0.1", + "pathe": "^1.1.2", + "pkg-types": "^1.2.0", + "ufo": "^1.5.4" + }, + "bin": { + "nypm": "dist/cli.mjs" + }, + "engines": { + "node": "^14.16.0 || >=16.10.0" + } + }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -10666,6 +10972,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/ohash": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/ohash/-/ohash-1.1.4.tgz", + "integrity": "sha512-FlDryZAahJmEF3VR3w1KogSEdWX3WhA5GPakFx4J81kEAiHyLMpdLLElS8n8dfNadMgAne/MywcvmogzscVt4g==", + "dev": true + }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -10689,108 +11001,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/openapi-typescript-codegen": { - "version": "0.26.0", - "resolved": "https://registry.npmjs.org/openapi-typescript-codegen/-/openapi-typescript-codegen-0.26.0.tgz", - "integrity": "sha512-5D45xawBHu9efxaDdioeZAfAQGxE0v12aNk24dTymNHRA75A6bFP8tKUAIzx8+AKWN7d/S9RWD87yVWhlFLhDA==", - "dev": true, - "dependencies": { - "@apidevtools/json-schema-ref-parser": "^11.1.0", - "camelcase": "^6.3.0", - "commander": "^11.1.0", - "fs-extra": "^11.2.0", - "handlebars": "^4.7.8" - }, - "bin": { - "openapi": "bin/index.js" - } - }, - "node_modules/openapi-typescript-codegen/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/openapi-typescript-codegen/node_modules/commander": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", - "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", - "dev": true, - "engines": { - "node": ">=16" - } - }, - "node_modules/openapi-typescript-codegen/node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, - "node_modules/openapi-typescript-codegen/node_modules/handlebars": { - "version": "4.7.8", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", - "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", - "dev": true, - "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.2", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" - }, - "engines": { - "node": ">=0.4.7" - }, - "optionalDependencies": { - "uglify-js": "^3.1.4" - } - }, - "node_modules/openapi-typescript-codegen/node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/openapi-typescript-codegen/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/openapi-typescript-codegen/node_modules/universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true, - "engines": { - "node": ">= 10.0.0" - } - }, "node_modules/optionator": { "version": "0.9.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", @@ -10964,9 +11174,9 @@ } }, "node_modules/pathe": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.1.tgz", - "integrity": "sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", "dev": true }, "node_modules/pathval": { @@ -10990,6 +11200,12 @@ "pbf": "bin/pbf" } }, + "node_modules/perfect-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", + "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==", + "dev": true + }, "node_modules/performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -11079,14 +11295,14 @@ } }, "node_modules/pkg-types": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.0.3.tgz", - "integrity": "sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.2.1.tgz", + "integrity": "sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==", "dev": true, "dependencies": { - "jsonc-parser": "^3.2.0", - "mlly": "^1.2.0", - "pathe": "^1.1.0" + "confbox": "^0.1.8", + "mlly": "^1.7.2", + "pathe": "^1.1.2" } }, "node_modules/playwright": { @@ -11596,6 +11812,16 @@ "quickselect": "^2.0.0" } }, + "node_modules/rc9": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/rc9/-/rc9-2.1.2.tgz", + "integrity": "sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==", + "dev": true, + "dependencies": { + "defu": "^6.1.4", + "destr": "^2.0.3" + } + }, "node_modules/react": { "version": "18.2.0", "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", @@ -12351,9 +12577,9 @@ } }, "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "engines": { "node": ">=0.10.0" } @@ -12911,6 +13137,38 @@ "node": ">=6" } }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, "node_modules/teamcity-service-messages": { "version": "0.1.14", "resolved": "https://registry.npmjs.org/teamcity-service-messages/-/teamcity-service-messages-0.1.14.tgz", @@ -13058,6 +13316,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, "engines": { "node": ">=4" } @@ -13413,9 +13672,9 @@ } }, "node_modules/ufo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.3.2.tgz", - "integrity": "sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.5.4.tgz", + "integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==", "dev": true }, "node_modules/uglify-js": { diff --git a/frontend/package.json b/frontend/package.json index 552408a48..ef0b030a3 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -7,7 +7,7 @@ "dev": "vite --host", "build": "tsc && NODE_OPTIONS='--max-old-space-size=8192' vite build", "preview": "vite preview", - "generate-api": "openapi --input http://localhost:5000/openapi.json --output ./src/api --client axios --name ApiService --postfixModels _api", + "generate-api": "openapi-ts --name ApiService", "typecheck": "tsc --noEmit", "lint": "eslint 'src/**/*.+(ts|tsx|js|jsx|json)' 'tests/**/*.+(ts|tsx|js|jsx|json)' --max-warnings=0", "depscheck": "dependency-cruise src", @@ -21,6 +21,7 @@ "dependencies": { "@equinor/esv-intersection": "^3.0.10", "@headlessui/react": "^1.7.8", + "@hey-api/client-axios": "^0.2.9", "@mui/base": "^5.0.0-beta.3", "@mui/icons-material": "^5.14.9", "@tanstack/query-core": "^5.17.19", @@ -48,6 +49,7 @@ "wonka": "^6.3.4" }, "devDependencies": { + "@hey-api/openapi-ts": "^0.53.11", "@playwright/experimental-ct-react": "^1.39.0", "@playwright/test": "^1.39.0", "@trivago/prettier-plugin-sort-imports": "^4.0.0", @@ -71,7 +73,6 @@ "eslint-plugin-react": "^7.32.2", "eslint-plugin-react-hooks": "^4.6.0", "glob": "^10.3.3", - "openapi-typescript-codegen": "^0.26.0", "postcss": "^8.4.21", "prettier": "2.8.3", "sass": "^1.62.0", diff --git a/frontend/src/api/ApiService.ts b/frontend/src/api/ApiService.ts index bfce0c929..72b3cf04c 100644 --- a/frontend/src/api/ApiService.ts +++ b/frontend/src/api/ApiService.ts @@ -1,76 +1,83 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ import type { BaseHttpRequest } from './core/BaseHttpRequest'; import type { OpenAPIConfig } from './core/OpenAPI'; -import { AxiosHttpRequest } from './core/AxiosHttpRequest'; -import { DefaultService } from './services/DefaultService'; -import { ExploreService } from './services/ExploreService'; -import { GraphService } from './services/GraphService'; -import { Grid3DService } from './services/Grid3DService'; -import { GroupTreeService } from './services/GroupTreeService'; -import { InplaceVolumetricsService } from './services/InplaceVolumetricsService'; -import { ObservationsService } from './services/ObservationsService'; -import { ParametersService } from './services/ParametersService'; -import { PolygonsService } from './services/PolygonsService'; -import { PvtService } from './services/PvtService'; -import { RftService } from './services/RftService'; -import { SeismicService } from './services/SeismicService'; -import { SurfaceService } from './services/SurfaceService'; -import { TimeseriesService } from './services/TimeseriesService'; -import { VfpService } from './services/VfpService'; -import { WellService } from './services/WellService'; -import { WellCompletionsService } from './services/WellCompletionsService'; +import { Interceptors } from './core/OpenAPI'; +import { } from './core/'; + +import { DefaultService } from './services.gen'; +import { ExploreService } from './services.gen'; +import { GraphService } from './services.gen'; +import { Grid3DService } from './services.gen'; +import { GroupTreeService } from './services.gen'; +import { InplaceVolumetricsService } from './services.gen'; +import { ObservationsService } from './services.gen'; +import { ParametersService } from './services.gen'; +import { PolygonsService } from './services.gen'; +import { PvtService } from './services.gen'; +import { RftService } from './services.gen'; +import { SeismicService } from './services.gen'; +import { SurfaceService } from './services.gen'; +import { TimeseriesService } from './services.gen'; +import { VfpService } from './services.gen'; +import { WellService } from './services.gen'; +import { WellCompletionsService } from './services.gen'; + type HttpRequestConstructor = new (config: OpenAPIConfig) => BaseHttpRequest; + export class ApiService { - public readonly default: DefaultService; - public readonly explore: ExploreService; - public readonly graph: GraphService; - public readonly grid3D: Grid3DService; - public readonly groupTree: GroupTreeService; - public readonly inplaceVolumetrics: InplaceVolumetricsService; - public readonly observations: ObservationsService; - public readonly parameters: ParametersService; - public readonly polygons: PolygonsService; - public readonly pvt: PvtService; - public readonly rft: RftService; - public readonly seismic: SeismicService; - public readonly surface: SurfaceService; - public readonly timeseries: TimeseriesService; - public readonly vfp: VfpService; - public readonly well: WellService; - public readonly wellCompletions: WellCompletionsService; - public readonly request: BaseHttpRequest; - constructor(config?: Partial, HttpRequest: HttpRequestConstructor = AxiosHttpRequest) { - this.request = new HttpRequest({ - BASE: config?.BASE ?? '/api', - VERSION: config?.VERSION ?? '0.1.0', - WITH_CREDENTIALS: config?.WITH_CREDENTIALS ?? false, - CREDENTIALS: config?.CREDENTIALS ?? 'include', - TOKEN: config?.TOKEN, - USERNAME: config?.USERNAME, - PASSWORD: config?.PASSWORD, - HEADERS: config?.HEADERS, - ENCODE_PATH: config?.ENCODE_PATH, - }); - this.default = new DefaultService(this.request); - this.explore = new ExploreService(this.request); - this.graph = new GraphService(this.request); - this.grid3D = new Grid3DService(this.request); - this.groupTree = new GroupTreeService(this.request); - this.inplaceVolumetrics = new InplaceVolumetricsService(this.request); - this.observations = new ObservationsService(this.request); - this.parameters = new ParametersService(this.request); - this.polygons = new PolygonsService(this.request); - this.pvt = new PvtService(this.request); - this.rft = new RftService(this.request); - this.seismic = new SeismicService(this.request); - this.surface = new SurfaceService(this.request); - this.timeseries = new TimeseriesService(this.request); - this.vfp = new VfpService(this.request); - this.well = new WellService(this.request); - this.wellCompletions = new WellCompletionsService(this.request); - } -} + public readonly default: DefaultService; + public readonly explore: ExploreService; + public readonly graph: GraphService; + public readonly grid3D: Grid3DService; + public readonly groupTree: GroupTreeService; + public readonly inplaceVolumetrics: InplaceVolumetricsService; + public readonly observations: ObservationsService; + public readonly parameters: ParametersService; + public readonly polygons: PolygonsService; + public readonly pvt: PvtService; + public readonly rft: RftService; + public readonly seismic: SeismicService; + public readonly surface: SurfaceService; + public readonly timeseries: TimeseriesService; + public readonly vfp: VfpService; + public readonly well: WellService; + public readonly wellCompletions: WellCompletionsService; + + public readonly request: BaseHttpRequest; + + constructor(config?: Partial, HttpRequest: HttpRequestConstructor = ) { + this.request = new HttpRequest({ + BASE: config?.BASE ?? '/api', + VERSION: config?.VERSION ?? '0.1.0', + WITH_CREDENTIALS: config?.WITH_CREDENTIALS ?? false, + CREDENTIALS: config?.CREDENTIALS ?? 'include', + TOKEN: config?.TOKEN, + USERNAME: config?.USERNAME, + PASSWORD: config?.PASSWORD, + HEADERS: config?.HEADERS, + ENCODE_PATH: config?.ENCODE_PATH, + interceptors: { + request: config?.interceptors?.request ?? new Interceptors(), + response: config?.interceptors?.response ?? new Interceptors(), + }, + }); + + this.default = new DefaultService(this.request); + this.explore = new ExploreService(this.request); + this.graph = new GraphService(this.request); + this.grid3D = new Grid3DService(this.request); + this.groupTree = new GroupTreeService(this.request); + this.inplaceVolumetrics = new InplaceVolumetricsService(this.request); + this.observations = new ObservationsService(this.request); + this.parameters = new ParametersService(this.request); + this.polygons = new PolygonsService(this.request); + this.pvt = new PvtService(this.request); + this.rft = new RftService(this.request); + this.seismic = new SeismicService(this.request); + this.surface = new SurfaceService(this.request); + this.timeseries = new TimeseriesService(this.request); + this.vfp = new VfpService(this.request); + this.well = new WellService(this.request); + this.wellCompletions = new WellCompletionsService(this.request); + } +} diff --git a/frontend/src/api/core/ApiError.ts b/frontend/src/api/core/ApiError.ts deleted file mode 100644 index d6b8fcc3a..000000000 --- a/frontend/src/api/core/ApiError.ts +++ /dev/null @@ -1,25 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { ApiRequestOptions } from './ApiRequestOptions'; -import type { ApiResult } from './ApiResult'; - -export class ApiError extends Error { - public readonly url: string; - public readonly status: number; - public readonly statusText: string; - public readonly body: any; - public readonly request: ApiRequestOptions; - - constructor(request: ApiRequestOptions, response: ApiResult, message: string) { - super(message); - - this.name = 'ApiError'; - this.url = response.url; - this.status = response.status; - this.statusText = response.statusText; - this.body = response.body; - this.request = request; - } -} diff --git a/frontend/src/api/core/ApiRequestOptions.ts b/frontend/src/api/core/ApiRequestOptions.ts deleted file mode 100644 index c19adcc94..000000000 --- a/frontend/src/api/core/ApiRequestOptions.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type ApiRequestOptions = { - readonly method: 'GET' | 'PUT' | 'POST' | 'DELETE' | 'OPTIONS' | 'HEAD' | 'PATCH'; - readonly url: string; - readonly path?: Record; - readonly cookies?: Record; - readonly headers?: Record; - readonly query?: Record; - readonly formData?: Record; - readonly body?: any; - readonly mediaType?: string; - readonly responseHeader?: string; - readonly errors?: Record; -}; diff --git a/frontend/src/api/core/ApiResult.ts b/frontend/src/api/core/ApiResult.ts deleted file mode 100644 index ad8fef2bc..000000000 --- a/frontend/src/api/core/ApiResult.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type ApiResult = { - readonly url: string; - readonly ok: boolean; - readonly status: number; - readonly statusText: string; - readonly body: any; -}; diff --git a/frontend/src/api/core/AxiosHttpRequest.ts b/frontend/src/api/core/AxiosHttpRequest.ts deleted file mode 100644 index 402a5faef..000000000 --- a/frontend/src/api/core/AxiosHttpRequest.ts +++ /dev/null @@ -1,26 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { ApiRequestOptions } from './ApiRequestOptions'; -import { BaseHttpRequest } from './BaseHttpRequest'; -import type { CancelablePromise } from './CancelablePromise'; -import type { OpenAPIConfig } from './OpenAPI'; -import { request as __request } from './request'; - -export class AxiosHttpRequest extends BaseHttpRequest { - - constructor(config: OpenAPIConfig) { - super(config); - } - - /** - * Request method - * @param options The request options from the service - * @returns CancelablePromise - * @throws ApiError - */ - public override request(options: ApiRequestOptions): CancelablePromise { - return __request(this.config, options); - } -} diff --git a/frontend/src/api/core/BaseHttpRequest.ts b/frontend/src/api/core/BaseHttpRequest.ts deleted file mode 100644 index 8da3f4df7..000000000 --- a/frontend/src/api/core/BaseHttpRequest.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { ApiRequestOptions } from './ApiRequestOptions'; -import type { CancelablePromise } from './CancelablePromise'; -import type { OpenAPIConfig } from './OpenAPI'; - -export abstract class BaseHttpRequest { - - constructor(public readonly config: OpenAPIConfig) {} - - public abstract request(options: ApiRequestOptions): CancelablePromise; -} diff --git a/frontend/src/api/core/CancelablePromise.ts b/frontend/src/api/core/CancelablePromise.ts deleted file mode 100644 index eb02246c3..000000000 --- a/frontend/src/api/core/CancelablePromise.ts +++ /dev/null @@ -1,131 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export class CancelError extends Error { - - constructor(message: string) { - super(message); - this.name = 'CancelError'; - } - - public get isCancelled(): boolean { - return true; - } -} - -export interface OnCancel { - readonly isResolved: boolean; - readonly isRejected: boolean; - readonly isCancelled: boolean; - - (cancelHandler: () => void): void; -} - -export class CancelablePromise implements Promise { - #isResolved: boolean; - #isRejected: boolean; - #isCancelled: boolean; - readonly #cancelHandlers: (() => void)[]; - readonly #promise: Promise; - #resolve?: (value: T | PromiseLike) => void; - #reject?: (reason?: any) => void; - - constructor( - executor: ( - resolve: (value: T | PromiseLike) => void, - reject: (reason?: any) => void, - onCancel: OnCancel - ) => void - ) { - this.#isResolved = false; - this.#isRejected = false; - this.#isCancelled = false; - this.#cancelHandlers = []; - this.#promise = new Promise((resolve, reject) => { - this.#resolve = resolve; - this.#reject = reject; - - const onResolve = (value: T | PromiseLike): void => { - if (this.#isResolved || this.#isRejected || this.#isCancelled) { - return; - } - this.#isResolved = true; - if (this.#resolve) this.#resolve(value); - }; - - const onReject = (reason?: any): void => { - if (this.#isResolved || this.#isRejected || this.#isCancelled) { - return; - } - this.#isRejected = true; - if (this.#reject) this.#reject(reason); - }; - - const onCancel = (cancelHandler: () => void): void => { - if (this.#isResolved || this.#isRejected || this.#isCancelled) { - return; - } - this.#cancelHandlers.push(cancelHandler); - }; - - Object.defineProperty(onCancel, 'isResolved', { - get: (): boolean => this.#isResolved, - }); - - Object.defineProperty(onCancel, 'isRejected', { - get: (): boolean => this.#isRejected, - }); - - Object.defineProperty(onCancel, 'isCancelled', { - get: (): boolean => this.#isCancelled, - }); - - return executor(onResolve, onReject, onCancel as OnCancel); - }); - } - - get [Symbol.toStringTag]() { - return "Cancellable Promise"; - } - - public then( - onFulfilled?: ((value: T) => TResult1 | PromiseLike) | null, - onRejected?: ((reason: any) => TResult2 | PromiseLike) | null - ): Promise { - return this.#promise.then(onFulfilled, onRejected); - } - - public catch( - onRejected?: ((reason: any) => TResult | PromiseLike) | null - ): Promise { - return this.#promise.catch(onRejected); - } - - public finally(onFinally?: (() => void) | null): Promise { - return this.#promise.finally(onFinally); - } - - public cancel(): void { - if (this.#isResolved || this.#isRejected || this.#isCancelled) { - return; - } - this.#isCancelled = true; - if (this.#cancelHandlers.length) { - try { - for (const cancelHandler of this.#cancelHandlers) { - cancelHandler(); - } - } catch (error) { - console.warn('Cancellation threw an error', error); - return; - } - } - this.#cancelHandlers.length = 0; - if (this.#reject) this.#reject(new CancelError('Request aborted')); - } - - public get isCancelled(): boolean { - return this.#isCancelled; - } -} diff --git a/frontend/src/api/core/OpenAPI.ts b/frontend/src/api/core/OpenAPI.ts deleted file mode 100644 index d37e3008c..000000000 --- a/frontend/src/api/core/OpenAPI.ts +++ /dev/null @@ -1,32 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { ApiRequestOptions } from './ApiRequestOptions'; - -type Resolver = (options: ApiRequestOptions) => Promise; -type Headers = Record; - -export type OpenAPIConfig = { - BASE: string; - VERSION: string; - WITH_CREDENTIALS: boolean; - CREDENTIALS: 'include' | 'omit' | 'same-origin'; - TOKEN?: string | Resolver | undefined; - USERNAME?: string | Resolver | undefined; - PASSWORD?: string | Resolver | undefined; - HEADERS?: Headers | Resolver | undefined; - ENCODE_PATH?: ((path: string) => string) | undefined; -}; - -export const OpenAPI: OpenAPIConfig = { - BASE: '/api', - VERSION: '0.1.0', - WITH_CREDENTIALS: false, - CREDENTIALS: 'include', - TOKEN: undefined, - USERNAME: undefined, - PASSWORD: undefined, - HEADERS: undefined, - ENCODE_PATH: undefined, -}; diff --git a/frontend/src/api/core/request.ts b/frontend/src/api/core/request.ts deleted file mode 100644 index c6a0602a0..000000000 --- a/frontend/src/api/core/request.ts +++ /dev/null @@ -1,322 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import axios from 'axios'; -import type { AxiosError, AxiosRequestConfig, AxiosResponse, AxiosInstance } from 'axios'; -import FormData from 'form-data'; - -import { ApiError } from './ApiError'; -import type { ApiRequestOptions } from './ApiRequestOptions'; -import type { ApiResult } from './ApiResult'; -import { CancelablePromise } from './CancelablePromise'; -import type { OnCancel } from './CancelablePromise'; -import type { OpenAPIConfig } from './OpenAPI'; - -export const isDefined = (value: T | null | undefined): value is Exclude => { - return value !== undefined && value !== null; -}; - -export const isString = (value: any): value is string => { - return typeof value === 'string'; -}; - -export const isStringWithValue = (value: any): value is string => { - return isString(value) && value !== ''; -}; - -export const isBlob = (value: any): value is Blob => { - return ( - typeof value === 'object' && - typeof value.type === 'string' && - typeof value.stream === 'function' && - typeof value.arrayBuffer === 'function' && - typeof value.constructor === 'function' && - typeof value.constructor.name === 'string' && - /^(Blob|File)$/.test(value.constructor.name) && - /^(Blob|File)$/.test(value[Symbol.toStringTag]) - ); -}; - -export const isFormData = (value: any): value is FormData => { - return value instanceof FormData; -}; - -export const isSuccess = (status: number): boolean => { - return status >= 200 && status < 300; -}; - -export const base64 = (str: string): string => { - try { - return btoa(str); - } catch (err) { - // @ts-ignore - return Buffer.from(str).toString('base64'); - } -}; - -export const getQueryString = (params: Record): string => { - const qs: string[] = []; - - const append = (key: string, value: any) => { - qs.push(`${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`); - }; - - const process = (key: string, value: any) => { - if (isDefined(value)) { - if (Array.isArray(value)) { - value.forEach(v => { - process(key, v); - }); - } else if (typeof value === 'object') { - Object.entries(value).forEach(([k, v]) => { - process(`${key}[${k}]`, v); - }); - } else { - append(key, value); - } - } - }; - - Object.entries(params).forEach(([key, value]) => { - process(key, value); - }); - - if (qs.length > 0) { - return `?${qs.join('&')}`; - } - - return ''; -}; - -const getUrl = (config: OpenAPIConfig, options: ApiRequestOptions): string => { - const encoder = config.ENCODE_PATH || encodeURI; - - const path = options.url - .replace('{api-version}', config.VERSION) - .replace(/{(.*?)}/g, (substring: string, group: string) => { - if (options.path?.hasOwnProperty(group)) { - return encoder(String(options.path[group])); - } - return substring; - }); - - const url = `${config.BASE}${path}`; - if (options.query) { - return `${url}${getQueryString(options.query)}`; - } - return url; -}; - -export const getFormData = (options: ApiRequestOptions): FormData | undefined => { - if (options.formData) { - const formData = new FormData(); - - const process = (key: string, value: any) => { - if (isString(value) || isBlob(value)) { - formData.append(key, value); - } else { - formData.append(key, JSON.stringify(value)); - } - }; - - Object.entries(options.formData) - .filter(([_, value]) => isDefined(value)) - .forEach(([key, value]) => { - if (Array.isArray(value)) { - value.forEach(v => process(key, v)); - } else { - process(key, value); - } - }); - - return formData; - } - return undefined; -}; - -type Resolver = (options: ApiRequestOptions) => Promise; - -export const resolve = async (options: ApiRequestOptions, resolver?: T | Resolver): Promise => { - if (typeof resolver === 'function') { - return (resolver as Resolver)(options); - } - return resolver; -}; - -export const getHeaders = async (config: OpenAPIConfig, options: ApiRequestOptions, formData?: FormData): Promise> => { - const [token, username, password, additionalHeaders] = await Promise.all([ - resolve(options, config.TOKEN), - resolve(options, config.USERNAME), - resolve(options, config.PASSWORD), - resolve(options, config.HEADERS), - ]); - - const formHeaders = typeof formData?.getHeaders === 'function' && formData?.getHeaders() || {} - - const headers = Object.entries({ - Accept: 'application/json', - ...additionalHeaders, - ...options.headers, - ...formHeaders, - }) - .filter(([_, value]) => isDefined(value)) - .reduce((headers, [key, value]) => ({ - ...headers, - [key]: String(value), - }), {} as Record); - - if (isStringWithValue(token)) { - headers['Authorization'] = `Bearer ${token}`; - } - - if (isStringWithValue(username) && isStringWithValue(password)) { - const credentials = base64(`${username}:${password}`); - headers['Authorization'] = `Basic ${credentials}`; - } - - if (options.body) { - if (options.mediaType) { - headers['Content-Type'] = options.mediaType; - } else if (isBlob(options.body)) { - headers['Content-Type'] = options.body.type || 'application/octet-stream'; - } else if (isString(options.body)) { - headers['Content-Type'] = 'text/plain'; - } else if (!isFormData(options.body)) { - headers['Content-Type'] = 'application/json'; - } - } - - return headers; -}; - -export const getRequestBody = (options: ApiRequestOptions): any => { - if (options.body) { - return options.body; - } - return undefined; -}; - -export const sendRequest = async ( - config: OpenAPIConfig, - options: ApiRequestOptions, - url: string, - body: any, - formData: FormData | undefined, - headers: Record, - onCancel: OnCancel, - axiosClient: AxiosInstance -): Promise> => { - const source = axios.CancelToken.source(); - - const requestConfig: AxiosRequestConfig = { - url, - headers, - data: body ?? formData, - method: options.method, - withCredentials: config.WITH_CREDENTIALS, - cancelToken: source.token, - }; - - onCancel(() => source.cancel('The user aborted a request.')); - - try { - return await axiosClient.request(requestConfig); - } catch (error) { - const axiosError = error as AxiosError; - if (axiosError.response) { - return axiosError.response; - } - throw error; - } -}; - -export const getResponseHeader = (response: AxiosResponse, responseHeader?: string): string | undefined => { - if (responseHeader) { - const content = response.headers[responseHeader]; - if (isString(content)) { - return content; - } - } - return undefined; -}; - -export const getResponseBody = (response: AxiosResponse): any => { - if (response.status !== 204) { - return response.data; - } - return undefined; -}; - -export const catchErrorCodes = (options: ApiRequestOptions, result: ApiResult): void => { - const errors: Record = { - 400: 'Bad Request', - 401: 'Unauthorized', - 403: 'Forbidden', - 404: 'Not Found', - 500: 'Internal Server Error', - 502: 'Bad Gateway', - 503: 'Service Unavailable', - ...options.errors, - } - - const error = errors[result.status]; - if (error) { - throw new ApiError(options, result, error); - } - - if (!result.ok) { - const errorStatus = result.status ?? 'unknown'; - const errorStatusText = result.statusText ?? 'unknown'; - const errorBody = (() => { - try { - return JSON.stringify(result.body, null, 2); - } catch (e) { - return undefined; - } - })(); - - throw new ApiError(options, result, - `Generic Error: status: ${errorStatus}; status text: ${errorStatusText}; body: ${errorBody}` - ); - } -}; - -/** - * Request method - * @param config The OpenAPI configuration object - * @param options The request options from the service - * @param axiosClient The axios client instance to use - * @returns CancelablePromise - * @throws ApiError - */ -export const request = (config: OpenAPIConfig, options: ApiRequestOptions, axiosClient: AxiosInstance = axios): CancelablePromise => { - return new CancelablePromise(async (resolve, reject, onCancel) => { - try { - const url = getUrl(config, options); - const formData = getFormData(options); - const body = getRequestBody(options); - const headers = await getHeaders(config, options, formData); - - if (!onCancel.isCancelled) { - const response = await sendRequest(config, options, url, body, formData, headers, onCancel, axiosClient); - const responseBody = getResponseBody(response); - const responseHeader = getResponseHeader(response, options.responseHeader); - - const result: ApiResult = { - url, - ok: isSuccess(response.status), - status: response.status, - statusText: response.statusText, - body: responseHeader ?? responseBody, - }; - - catchErrorCodes(options, result); - - resolve(result.body); - } - } catch (error) { - reject(error); - } - }); -}; diff --git a/frontend/src/api/index.ts b/frontend/src/api/index.ts index 717b644be..abdbb6c75 100644 --- a/frontend/src/api/index.ts +++ b/frontend/src/api/index.ts @@ -1,140 +1,5 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ +// This file is auto-generated by @hey-api/openapi-ts export { ApiService } from './ApiService'; - -export { ApiError } from './core/ApiError'; -export { BaseHttpRequest } from './core/BaseHttpRequest'; -export { CancelablePromise, CancelError } from './core/CancelablePromise'; -export { OpenAPI } from './core/OpenAPI'; -export type { OpenAPIConfig } from './core/OpenAPI'; - -export { ALQ as ALQ_api } from './models/ALQ'; -export { B64FloatArray as B64FloatArray_api } from './models/B64FloatArray'; -export { B64UintArray as B64UintArray_api } from './models/B64UintArray'; -export type { Body_post_get_aggregated_per_realization_table_data as Body_post_get_aggregated_per_realization_table_data_api } from './models/Body_post_get_aggregated_per_realization_table_data'; -export type { Body_post_get_aggregated_statistical_table_data as Body_post_get_aggregated_statistical_table_data_api } from './models/Body_post_get_aggregated_statistical_table_data'; -export type { Body_post_get_polyline_intersection as Body_post_get_polyline_intersection_api } from './models/Body_post_get_polyline_intersection'; -export type { Body_post_get_seismic_fence as Body_post_get_seismic_fence_api } from './models/Body_post_get_seismic_fence'; -export type { Body_post_get_surface_intersection as Body_post_get_surface_intersection_api } from './models/Body_post_get_surface_intersection'; -export type { Body_post_sample_surface_in_points as Body_post_sample_surface_in_points_api } from './models/Body_post_sample_surface_in_points'; -export type { BoundingBox2d as BoundingBox2d_api } from './models/BoundingBox2d'; -export type { BoundingBox3d as BoundingBox3d_api } from './models/BoundingBox3d'; -export type { CaseInfo as CaseInfo_api } from './models/CaseInfo'; -export type { Completions as Completions_api } from './models/Completions'; -export type { DatedTree as DatedTree_api } from './models/DatedTree'; -export type { EnsembleDetails as EnsembleDetails_api } from './models/EnsembleDetails'; -export type { EnsembleInfo as EnsembleInfo_api } from './models/EnsembleInfo'; -export type { EnsembleParameter as EnsembleParameter_api } from './models/EnsembleParameter'; -export type { EnsembleParameterDescription as EnsembleParameterDescription_api } from './models/EnsembleParameterDescription'; -export type { EnsembleScalarResponse as EnsembleScalarResponse_api } from './models/EnsembleScalarResponse'; -export type { EnsembleSensitivity as EnsembleSensitivity_api } from './models/EnsembleSensitivity'; -export type { EnsembleSensitivityCase as EnsembleSensitivityCase_api } from './models/EnsembleSensitivityCase'; -export type { FenceMeshSection as FenceMeshSection_api } from './models/FenceMeshSection'; -export type { FieldInfo as FieldInfo_api } from './models/FieldInfo'; -export { FlowRateType as FlowRateType_api } from './models/FlowRateType'; -export { FluidZone as FluidZone_api } from './models/FluidZone'; -export { Frequency as Frequency_api } from './models/Frequency'; -export { GFR as GFR_api } from './models/GFR'; -export type { GraphUserPhoto as GraphUserPhoto_api } from './models/GraphUserPhoto'; -export type { Grid3dDimensions as Grid3dDimensions_api } from './models/Grid3dDimensions'; -export type { Grid3dGeometry as Grid3dGeometry_api } from './models/Grid3dGeometry'; -export type { Grid3dInfo as Grid3dInfo_api } from './models/Grid3dInfo'; -export type { Grid3dMappedProperty as Grid3dMappedProperty_api } from './models/Grid3dMappedProperty'; -export type { Grid3dPropertyInfo as Grid3dPropertyInfo_api } from './models/Grid3dPropertyInfo'; -export type { Grid3dZone as Grid3dZone_api } from './models/Grid3dZone'; -export type { GridDimensions as GridDimensions_api } from './models/GridDimensions'; -export type { GroupTreeData as GroupTreeData_api } from './models/GroupTreeData'; -export type { GroupTreeMetadata as GroupTreeMetadata_api } from './models/GroupTreeMetadata'; -export type { HTTPValidationError as HTTPValidationError_api } from './models/HTTPValidationError'; -export type { InplaceStatisticalVolumetricTableData as InplaceStatisticalVolumetricTableData_api } from './models/InplaceStatisticalVolumetricTableData'; -export type { InplaceStatisticalVolumetricTableDataPerFluidSelection as InplaceStatisticalVolumetricTableDataPerFluidSelection_api } from './models/InplaceStatisticalVolumetricTableDataPerFluidSelection'; -export { InplaceVolumetricResultName as InplaceVolumetricResultName_api } from './models/InplaceVolumetricResultName'; -export { InplaceVolumetricsIdentifier as InplaceVolumetricsIdentifier_api } from './models/InplaceVolumetricsIdentifier'; -export type { InplaceVolumetricsIdentifierWithValues as InplaceVolumetricsIdentifierWithValues_api } from './models/InplaceVolumetricsIdentifierWithValues'; -export type { InplaceVolumetricsTableDefinition as InplaceVolumetricsTableDefinition_api } from './models/InplaceVolumetricsTableDefinition'; -export { InplaceVolumetricStatistic as InplaceVolumetricStatistic_api } from './models/InplaceVolumetricStatistic'; -export type { InplaceVolumetricTableData as InplaceVolumetricTableData_api } from './models/InplaceVolumetricTableData'; -export type { InplaceVolumetricTableDataPerFluidSelection as InplaceVolumetricTableDataPerFluidSelection_api } from './models/InplaceVolumetricTableDataPerFluidSelection'; -export { NodeType as NodeType_api } from './models/NodeType'; -export type { Observations as Observations_api } from './models/Observations'; -export type { PointSetXY as PointSetXY_api } from './models/PointSetXY'; -export type { PolygonData as PolygonData_api } from './models/PolygonData'; -export { PolygonsAttributeType as PolygonsAttributeType_api } from './models/PolygonsAttributeType'; -export type { PolygonsMeta as PolygonsMeta_api } from './models/PolygonsMeta'; -export type { PolylineIntersection as PolylineIntersection_api } from './models/PolylineIntersection'; -export type { PvtData as PvtData_api } from './models/PvtData'; -export type { RepeatedTableColumnData as RepeatedTableColumnData_api } from './models/RepeatedTableColumnData'; -export type { RftInfo as RftInfo_api } from './models/RftInfo'; -export type { RftObservation as RftObservation_api } from './models/RftObservation'; -export type { RftObservations as RftObservations_api } from './models/RftObservations'; -export type { RftRealizationData as RftRealizationData_api } from './models/RftRealizationData'; -export type { SeismicCubeMeta as SeismicCubeMeta_api } from './models/SeismicCubeMeta'; -export type { SeismicFenceData as SeismicFenceData_api } from './models/SeismicFenceData'; -export type { SeismicFencePolyline as SeismicFencePolyline_api } from './models/SeismicFencePolyline'; -export { SensitivityType as SensitivityType_api } from './models/SensitivityType'; -export { StatisticFunction as StatisticFunction_api } from './models/StatisticFunction'; -export type { StatisticValueObject as StatisticValueObject_api } from './models/StatisticValueObject'; -export type { StratigraphicUnit as StratigraphicUnit_api } from './models/StratigraphicUnit'; -export type { SummaryVectorDateObservation as SummaryVectorDateObservation_api } from './models/SummaryVectorDateObservation'; -export type { SummaryVectorObservations as SummaryVectorObservations_api } from './models/SummaryVectorObservations'; -export { SurfaceAttributeType as SurfaceAttributeType_api } from './models/SurfaceAttributeType'; -export type { SurfaceDataFloat as SurfaceDataFloat_api } from './models/SurfaceDataFloat'; -export type { SurfaceDataPng as SurfaceDataPng_api } from './models/SurfaceDataPng'; -export type { SurfaceDef as SurfaceDef_api } from './models/SurfaceDef'; -export type { SurfaceIntersectionCumulativeLengthPolyline as SurfaceIntersectionCumulativeLengthPolyline_api } from './models/SurfaceIntersectionCumulativeLengthPolyline'; -export type { SurfaceIntersectionData as SurfaceIntersectionData_api } from './models/SurfaceIntersectionData'; -export type { SurfaceMeta as SurfaceMeta_api } from './models/SurfaceMeta'; -export type { SurfaceMetaSet as SurfaceMetaSet_api } from './models/SurfaceMetaSet'; -export type { SurfaceRealizationSampleValues as SurfaceRealizationSampleValues_api } from './models/SurfaceRealizationSampleValues'; -export { SurfaceStatisticFunction as SurfaceStatisticFunction_api } from './models/SurfaceStatisticFunction'; -export { SurfaceTimeType as SurfaceTimeType_api } from './models/SurfaceTimeType'; -export type { TableColumnData as TableColumnData_api } from './models/TableColumnData'; -export type { TableColumnStatisticalData as TableColumnStatisticalData_api } from './models/TableColumnStatisticalData'; -export { TabType as TabType_api } from './models/TabType'; -export type { THP as THP_api } from './models/THP'; -export { TreeNode as TreeNode_api } from './models/TreeNode'; -export { UnitType as UnitType_api } from './models/UnitType'; -export type { UserInfo as UserInfo_api } from './models/UserInfo'; -export type { ValidationError as ValidationError_api } from './models/ValidationError'; -export type { VectorDescription as VectorDescription_api } from './models/VectorDescription'; -export type { VectorHistoricalData as VectorHistoricalData_api } from './models/VectorHistoricalData'; -export type { VectorRealizationData as VectorRealizationData_api } from './models/VectorRealizationData'; -export type { VectorStatisticData as VectorStatisticData_api } from './models/VectorStatisticData'; -export type { VectorStatisticSensitivityData as VectorStatisticSensitivityData_api } from './models/VectorStatisticSensitivityData'; -export type { VfpInjTable as VfpInjTable_api } from './models/VfpInjTable'; -export type { VfpProdTable as VfpProdTable_api } from './models/VfpProdTable'; -export type { WellboreCasing as WellboreCasing_api } from './models/WellboreCasing'; -export type { WellboreCompletion as WellboreCompletion_api } from './models/WellboreCompletion'; -export type { WellboreHeader as WellboreHeader_api } from './models/WellboreHeader'; -export type { WellboreLogCurveData as WellboreLogCurveData_api } from './models/WellboreLogCurveData'; -export type { WellboreLogCurveHeader as WellboreLogCurveHeader_api } from './models/WellboreLogCurveHeader'; -export type { WellborePerforation as WellborePerforation_api } from './models/WellborePerforation'; -export type { WellborePick as WellborePick_api } from './models/WellborePick'; -export type { WellborePicksAndStratigraphicUnits as WellborePicksAndStratigraphicUnits_api } from './models/WellborePicksAndStratigraphicUnits'; -export type { WellboreTrajectory as WellboreTrajectory_api } from './models/WellboreTrajectory'; -export type { WellCompletionsData as WellCompletionsData_api } from './models/WellCompletionsData'; -export type { WellCompletionsUnitInfo as WellCompletionsUnitInfo_api } from './models/WellCompletionsUnitInfo'; -export type { WellCompletionsUnits as WellCompletionsUnits_api } from './models/WellCompletionsUnits'; -export type { WellCompletionsWell as WellCompletionsWell_api } from './models/WellCompletionsWell'; -export type { WellCompletionsZone as WellCompletionsZone_api } from './models/WellCompletionsZone'; -export { WFR as WFR_api } from './models/WFR'; - -export { DefaultService } from './services/DefaultService'; -export { ExploreService } from './services/ExploreService'; -export { GraphService } from './services/GraphService'; -export { Grid3DService } from './services/Grid3DService'; -export { GroupTreeService } from './services/GroupTreeService'; -export { InplaceVolumetricsService } from './services/InplaceVolumetricsService'; -export { ObservationsService } from './services/ObservationsService'; -export { ParametersService } from './services/ParametersService'; -export { PolygonsService } from './services/PolygonsService'; -export { PvtService } from './services/PvtService'; -export { RftService } from './services/RftService'; -export { SeismicService } from './services/SeismicService'; -export { SurfaceService } from './services/SurfaceService'; -export { TimeseriesService } from './services/TimeseriesService'; -export { VfpService } from './services/VfpService'; -export { WellService } from './services/WellService'; -export { WellCompletionsService } from './services/WellCompletionsService'; +export * from './schemas.gen'; +export * from './services.gen'; +export * from './types.gen'; \ No newline at end of file diff --git a/frontend/src/api/models/ALQ.ts b/frontend/src/api/models/ALQ.ts deleted file mode 100644 index aeee0450d..000000000 --- a/frontend/src/api/models/ALQ.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum ALQ { - GRAT = 'GRAT', - IGLR = 'IGLR', - TGLR = 'TGLR', - PUMP = 'PUMP', - COMP = 'COMP', - DENO = 'DENO', - DENG = 'DENG', - BEAN = 'BEAN', - _ = '\'\'', -} diff --git a/frontend/src/api/models/B64FloatArray.ts b/frontend/src/api/models/B64FloatArray.ts deleted file mode 100644 index 43a101d42..000000000 --- a/frontend/src/api/models/B64FloatArray.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type B64FloatArray = { - element_type: B64FloatArray.element_type; - data_b64str: string; -}; -export namespace B64FloatArray { - export enum element_type { - FLOAT32 = 'float32', - FLOAT64 = 'float64', - } -} - diff --git a/frontend/src/api/models/B64UintArray.ts b/frontend/src/api/models/B64UintArray.ts deleted file mode 100644 index c56981655..000000000 --- a/frontend/src/api/models/B64UintArray.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type B64UintArray = { - element_type: B64UintArray.element_type; - data_b64str: string; -}; -export namespace B64UintArray { - export enum element_type { - UINT8 = 'uint8', - UINT16 = 'uint16', - UINT32 = 'uint32', - UINT64 = 'uint64', - } -} - diff --git a/frontend/src/api/models/Body_post_get_aggregated_per_realization_table_data.ts b/frontend/src/api/models/Body_post_get_aggregated_per_realization_table_data.ts deleted file mode 100644 index 51062bab4..000000000 --- a/frontend/src/api/models/Body_post_get_aggregated_per_realization_table_data.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { InplaceVolumetricsIdentifierWithValues } from './InplaceVolumetricsIdentifierWithValues'; -export type Body_post_get_aggregated_per_realization_table_data = { - /** - * Selected identifiers and wanted values - */ - identifiers_with_values: Array; -}; - diff --git a/frontend/src/api/models/Body_post_get_aggregated_statistical_table_data.ts b/frontend/src/api/models/Body_post_get_aggregated_statistical_table_data.ts deleted file mode 100644 index abda19e85..000000000 --- a/frontend/src/api/models/Body_post_get_aggregated_statistical_table_data.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { InplaceVolumetricsIdentifierWithValues } from './InplaceVolumetricsIdentifierWithValues'; -export type Body_post_get_aggregated_statistical_table_data = { - /** - * Selected identifiers and wanted values - */ - identifiers_with_values: Array; -}; - diff --git a/frontend/src/api/models/Body_post_get_polyline_intersection.ts b/frontend/src/api/models/Body_post_get_polyline_intersection.ts deleted file mode 100644 index c144cf1a3..000000000 --- a/frontend/src/api/models/Body_post_get_polyline_intersection.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type Body_post_get_polyline_intersection = { - polyline_utm_xy: Array; -}; - diff --git a/frontend/src/api/models/Body_post_get_seismic_fence.ts b/frontend/src/api/models/Body_post_get_seismic_fence.ts deleted file mode 100644 index cd82169e0..000000000 --- a/frontend/src/api/models/Body_post_get_seismic_fence.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { SeismicFencePolyline } from './SeismicFencePolyline'; -export type Body_post_get_seismic_fence = { - polyline: SeismicFencePolyline; -}; - diff --git a/frontend/src/api/models/Body_post_get_surface_intersection.ts b/frontend/src/api/models/Body_post_get_surface_intersection.ts deleted file mode 100644 index 22e2d6217..000000000 --- a/frontend/src/api/models/Body_post_get_surface_intersection.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { SurfaceIntersectionCumulativeLengthPolyline } from './SurfaceIntersectionCumulativeLengthPolyline'; -export type Body_post_get_surface_intersection = { - cumulative_length_polyline: SurfaceIntersectionCumulativeLengthPolyline; -}; - diff --git a/frontend/src/api/models/Body_post_sample_surface_in_points.ts b/frontend/src/api/models/Body_post_sample_surface_in_points.ts deleted file mode 100644 index 93ad94a6d..000000000 --- a/frontend/src/api/models/Body_post_sample_surface_in_points.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { PointSetXY } from './PointSetXY'; -export type Body_post_sample_surface_in_points = { - sample_points: PointSetXY; -}; - diff --git a/frontend/src/api/models/BoundingBox2d.ts b/frontend/src/api/models/BoundingBox2d.ts deleted file mode 100644 index 417c9c21e..000000000 --- a/frontend/src/api/models/BoundingBox2d.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type BoundingBox2d = { - min_x: number; - min_y: number; - max_x: number; - max_y: number; -}; - diff --git a/frontend/src/api/models/BoundingBox3d.ts b/frontend/src/api/models/BoundingBox3d.ts deleted file mode 100644 index 025e2b0bc..000000000 --- a/frontend/src/api/models/BoundingBox3d.ts +++ /dev/null @@ -1,16 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Bounding box for a 3D grid geometry - */ -export type BoundingBox3d = { - xmin: number; - ymin: number; - zmin: number; - xmax: number; - ymax: number; - zmax: number; -}; - diff --git a/frontend/src/api/models/CaseInfo.ts b/frontend/src/api/models/CaseInfo.ts deleted file mode 100644 index 0e191110c..000000000 --- a/frontend/src/api/models/CaseInfo.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type CaseInfo = { - uuid: string; - name: string; - status: string; - user: string; -}; - diff --git a/frontend/src/api/models/Completions.ts b/frontend/src/api/models/Completions.ts deleted file mode 100644 index 3dbf09b8b..000000000 --- a/frontend/src/api/models/Completions.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type Completions = { - sortedCompletionDateIndices: Array; - open: Array; - shut: Array; - khMean: Array; - khMin: Array; - khMax: Array; -}; - diff --git a/frontend/src/api/models/DatedTree.ts b/frontend/src/api/models/DatedTree.ts deleted file mode 100644 index f7ca2b7d6..000000000 --- a/frontend/src/api/models/DatedTree.ts +++ /dev/null @@ -1,10 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { TreeNode } from './TreeNode'; -export type DatedTree = { - dates: Array; - tree: TreeNode; -}; - diff --git a/frontend/src/api/models/EnsembleDetails.ts b/frontend/src/api/models/EnsembleDetails.ts deleted file mode 100644 index 43f2c4103..000000000 --- a/frontend/src/api/models/EnsembleDetails.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type EnsembleDetails = { - name: string; - field_identifier: string; - case_name: string; - case_uuid: string; - realizations: Array; -}; - diff --git a/frontend/src/api/models/EnsembleInfo.ts b/frontend/src/api/models/EnsembleInfo.ts deleted file mode 100644 index c14ee3f6e..000000000 --- a/frontend/src/api/models/EnsembleInfo.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type EnsembleInfo = { - name: string; - realization_count: number; -}; - diff --git a/frontend/src/api/models/EnsembleParameter.ts b/frontend/src/api/models/EnsembleParameter.ts deleted file mode 100644 index 684b518a5..000000000 --- a/frontend/src/api/models/EnsembleParameter.ts +++ /dev/null @@ -1,18 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Description/data for a single parameter in an ensemble - */ -export type EnsembleParameter = { - name: string; - is_logarithmic: boolean; - is_numerical: boolean; - is_constant: boolean; - group_name: (string | null); - descriptive_name: (string | null); - realizations: Array; - values: (Array | Array); -}; - diff --git a/frontend/src/api/models/EnsembleParameterDescription.ts b/frontend/src/api/models/EnsembleParameterDescription.ts deleted file mode 100644 index eae024cc4..000000000 --- a/frontend/src/api/models/EnsembleParameterDescription.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type EnsembleParameterDescription = { - name: string; - group_name: (string | null); - descriptive_name: (string | null); - is_numerical: boolean; -}; - diff --git a/frontend/src/api/models/EnsembleScalarResponse.ts b/frontend/src/api/models/EnsembleScalarResponse.ts deleted file mode 100644 index 10d7766ab..000000000 --- a/frontend/src/api/models/EnsembleScalarResponse.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * A generic type for a scalar response from each of the members of the ensemble. - */ -export type EnsembleScalarResponse = { - realizations: Array; - values: Array; - name: (string | null); - unit: (string | null); -}; - diff --git a/frontend/src/api/models/EnsembleSensitivity.ts b/frontend/src/api/models/EnsembleSensitivity.ts deleted file mode 100644 index 62de94aff..000000000 --- a/frontend/src/api/models/EnsembleSensitivity.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { EnsembleSensitivityCase } from './EnsembleSensitivityCase'; -import type { SensitivityType } from './SensitivityType'; -/** - * Description/data for a single sensitivity in an ensemble - */ -export type EnsembleSensitivity = { - name: string; - type: SensitivityType; - cases: Array; -}; - diff --git a/frontend/src/api/models/EnsembleSensitivityCase.ts b/frontend/src/api/models/EnsembleSensitivityCase.ts deleted file mode 100644 index a427b9b41..000000000 --- a/frontend/src/api/models/EnsembleSensitivityCase.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Description/data for a single sensitivity case in an ensemble - */ -export type EnsembleSensitivityCase = { - name: string; - realizations: Array; -}; - diff --git a/frontend/src/api/models/FenceMeshSection.ts b/frontend/src/api/models/FenceMeshSection.ts deleted file mode 100644 index b98f7d5c6..000000000 --- a/frontend/src/api/models/FenceMeshSection.ts +++ /dev/null @@ -1,18 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { B64FloatArray } from './B64FloatArray'; -import type { B64UintArray } from './B64UintArray'; -export type FenceMeshSection = { - vertices_uz_b64arr: B64FloatArray; - poly_indices_b64arr: B64UintArray; - vertices_per_poly_b64arr: B64UintArray; - poly_source_cell_indices_b64arr: B64UintArray; - poly_props_b64arr: B64FloatArray; - start_utm_x: number; - start_utm_y: number; - end_utm_x: number; - end_utm_y: number; -}; - diff --git a/frontend/src/api/models/FieldInfo.ts b/frontend/src/api/models/FieldInfo.ts deleted file mode 100644 index fc9f0012a..000000000 --- a/frontend/src/api/models/FieldInfo.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type FieldInfo = { - field_identifier: string; -}; - diff --git a/frontend/src/api/models/FlowRateType.ts b/frontend/src/api/models/FlowRateType.ts deleted file mode 100644 index 24d747904..000000000 --- a/frontend/src/api/models/FlowRateType.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum FlowRateType { - OIL = 'OIL', - LIQ = 'LIQ', - GAS = 'GAS', - WG = 'WG', - TM = 'TM', - WAT = 'WAT', -} diff --git a/frontend/src/api/models/FluidZone.ts b/frontend/src/api/models/FluidZone.ts deleted file mode 100644 index 85fcb7717..000000000 --- a/frontend/src/api/models/FluidZone.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum FluidZone { - OIL = 'Oil', - GAS = 'Gas', - WATER = 'Water', -} diff --git a/frontend/src/api/models/Frequency.ts b/frontend/src/api/models/Frequency.ts deleted file mode 100644 index 33018a02a..000000000 --- a/frontend/src/api/models/Frequency.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum Frequency { - DAILY = 'DAILY', - WEEKLY = 'WEEKLY', - MONTHLY = 'MONTHLY', - QUARTERLY = 'QUARTERLY', - YEARLY = 'YEARLY', -} diff --git a/frontend/src/api/models/GFR.ts b/frontend/src/api/models/GFR.ts deleted file mode 100644 index 4df9cf0f5..000000000 --- a/frontend/src/api/models/GFR.ts +++ /dev/null @@ -1,10 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum GFR { - GOR = 'GOR', - GLR = 'GLR', - OGR = 'OGR', - MMW = 'MMW', -} diff --git a/frontend/src/api/models/GraphUserPhoto.ts b/frontend/src/api/models/GraphUserPhoto.ts deleted file mode 100644 index bd7d316d0..000000000 --- a/frontend/src/api/models/GraphUserPhoto.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type GraphUserPhoto = { - avatar_b64str: (string | null); -}; - diff --git a/frontend/src/api/models/Grid3dDimensions.ts b/frontend/src/api/models/Grid3dDimensions.ts deleted file mode 100644 index 44452d744..000000000 --- a/frontend/src/api/models/Grid3dDimensions.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { Grid3dZone } from './Grid3dZone'; -/** - * Specification of a 3D grid dimensions - */ -export type Grid3dDimensions = { - i_count: number; - j_count: number; - k_count: number; - subgrids: Array; -}; - diff --git a/frontend/src/api/models/Grid3dGeometry.ts b/frontend/src/api/models/Grid3dGeometry.ts deleted file mode 100644 index 1a3cf9572..000000000 --- a/frontend/src/api/models/Grid3dGeometry.ts +++ /dev/null @@ -1,20 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { B64FloatArray } from './B64FloatArray'; -import type { B64UintArray } from './B64UintArray'; -export type Grid3dGeometry = { - polys_b64arr: B64UintArray; - points_b64arr: B64FloatArray; - poly_source_cell_indices_b64arr: B64UintArray; - origin_utm_x: number; - origin_utm_y: number; - xmin: number; - xmax: number; - ymin: number; - ymax: number; - zmin: number; - zmax: number; -}; - diff --git a/frontend/src/api/models/Grid3dInfo.ts b/frontend/src/api/models/Grid3dInfo.ts deleted file mode 100644 index fce6a69cd..000000000 --- a/frontend/src/api/models/Grid3dInfo.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { BoundingBox3d } from './BoundingBox3d'; -import type { Grid3dDimensions } from './Grid3dDimensions'; -import type { Grid3dPropertyInfo } from './Grid3dPropertyInfo'; -/** - * Metadata for a 3D grid model, including its properties and geometry - */ -export type Grid3dInfo = { - grid_name: string; - bbox: BoundingBox3d; - dimensions: Grid3dDimensions; - property_info_arr: Array; -}; - diff --git a/frontend/src/api/models/Grid3dMappedProperty.ts b/frontend/src/api/models/Grid3dMappedProperty.ts deleted file mode 100644 index 7d0d26c58..000000000 --- a/frontend/src/api/models/Grid3dMappedProperty.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { B64FloatArray } from './B64FloatArray'; -export type Grid3dMappedProperty = { - poly_props_b64arr: B64FloatArray; - min_grid_prop_value: number; - max_grid_prop_value: number; -}; - diff --git a/frontend/src/api/models/Grid3dPropertyInfo.ts b/frontend/src/api/models/Grid3dPropertyInfo.ts deleted file mode 100644 index dd54a78a2..000000000 --- a/frontend/src/api/models/Grid3dPropertyInfo.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Metadata for a 3D grid property - */ -export type Grid3dPropertyInfo = { - property_name: string; - iso_date_or_interval: (string | null); -}; - diff --git a/frontend/src/api/models/Grid3dZone.ts b/frontend/src/api/models/Grid3dZone.ts deleted file mode 100644 index 9b80296d5..000000000 --- a/frontend/src/api/models/Grid3dZone.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Named subset of 3D grid layers (Zone) - */ -export type Grid3dZone = { - name: string; - start_layer: number; - end_layer: number; -}; - diff --git a/frontend/src/api/models/GridDimensions.ts b/frontend/src/api/models/GridDimensions.ts deleted file mode 100644 index 1b819ae5b..000000000 --- a/frontend/src/api/models/GridDimensions.ts +++ /dev/null @@ -1,10 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type GridDimensions = { - i_count: number; - j_count: number; - k_count: number; -}; - diff --git a/frontend/src/api/models/GroupTreeData.ts b/frontend/src/api/models/GroupTreeData.ts deleted file mode 100644 index ba8941905..000000000 --- a/frontend/src/api/models/GroupTreeData.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { DatedTree } from './DatedTree'; -import type { GroupTreeMetadata } from './GroupTreeMetadata'; -export type GroupTreeData = { - edge_metadata_list: Array; - node_metadata_list: Array; - dated_trees: Array; -}; - diff --git a/frontend/src/api/models/GroupTreeMetadata.ts b/frontend/src/api/models/GroupTreeMetadata.ts deleted file mode 100644 index 449561747..000000000 --- a/frontend/src/api/models/GroupTreeMetadata.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type GroupTreeMetadata = { - key: string; - label: string; -}; - diff --git a/frontend/src/api/models/HTTPValidationError.ts b/frontend/src/api/models/HTTPValidationError.ts deleted file mode 100644 index 892e4257c..000000000 --- a/frontend/src/api/models/HTTPValidationError.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { ValidationError } from './ValidationError'; -export type HTTPValidationError = { - detail?: Array; -}; - diff --git a/frontend/src/api/models/InplaceStatisticalVolumetricTableData.ts b/frontend/src/api/models/InplaceStatisticalVolumetricTableData.ts deleted file mode 100644 index 7d2fa5b22..000000000 --- a/frontend/src/api/models/InplaceStatisticalVolumetricTableData.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { RepeatedTableColumnData } from './RepeatedTableColumnData'; -import type { TableColumnStatisticalData } from './TableColumnStatisticalData'; -/** - * Statistical volumetric data for single volume table - * - * Contains data for a single fluid zone, e.g. Oil, Gas, Water, or sum of fluid zones - */ -export type InplaceStatisticalVolumetricTableData = { - fluidSelectionName: string; - selectorColumns: Array; - resultColumnStatistics: Array; -}; - diff --git a/frontend/src/api/models/InplaceStatisticalVolumetricTableDataPerFluidSelection.ts b/frontend/src/api/models/InplaceStatisticalVolumetricTableDataPerFluidSelection.ts deleted file mode 100644 index 804768290..000000000 --- a/frontend/src/api/models/InplaceStatisticalVolumetricTableDataPerFluidSelection.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { InplaceStatisticalVolumetricTableData } from './InplaceStatisticalVolumetricTableData'; -/** - * Statistical volumetric data for a single table per fluid selection - * - * Fluid selection can be single fluid zones, e.g. Oil, Gas, Water, or sum of fluid zones - Oil + Gas + Water - */ -export type InplaceStatisticalVolumetricTableDataPerFluidSelection = { - tableDataPerFluidSelection: Array; -}; - diff --git a/frontend/src/api/models/InplaceVolumetricResultName.ts b/frontend/src/api/models/InplaceVolumetricResultName.ts deleted file mode 100644 index d9e2db9c2..000000000 --- a/frontend/src/api/models/InplaceVolumetricResultName.ts +++ /dev/null @@ -1,25 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Allowed volumetric response names - */ -export enum InplaceVolumetricResultName { - BULK = 'BULK', - NET = 'NET', - PORO = 'PORO', - PORO_NET = 'PORO_NET', - PORV = 'PORV', - HCPV = 'HCPV', - STOIIP = 'STOIIP', - GIIP = 'GIIP', - NTG = 'NTG', - ASSOCIATEDGAS = 'ASSOCIATEDGAS', - ASSOCIATEDOIL = 'ASSOCIATEDOIL', - BO = 'BO', - BG = 'BG', - SW = 'SW', - STOIIP_TOTAL = 'STOIIP_TOTAL', - GIIP_TOTAL = 'GIIP_TOTAL', -} diff --git a/frontend/src/api/models/InplaceVolumetricStatistic.ts b/frontend/src/api/models/InplaceVolumetricStatistic.ts deleted file mode 100644 index 70258c068..000000000 --- a/frontend/src/api/models/InplaceVolumetricStatistic.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Definition of possible statistics for a result column in an inplace volumetrics table - */ -export enum InplaceVolumetricStatistic { - MEAN = 'mean', - STDDEV = 'stddev', - MAX = 'max', - MIN = 'min', - P10 = 'p10', - P90 = 'p90', -} diff --git a/frontend/src/api/models/InplaceVolumetricTableData.ts b/frontend/src/api/models/InplaceVolumetricTableData.ts deleted file mode 100644 index df54d1a37..000000000 --- a/frontend/src/api/models/InplaceVolumetricTableData.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { RepeatedTableColumnData } from './RepeatedTableColumnData'; -import type { TableColumnData } from './TableColumnData'; -/** - * Volumetric data for a single table - * - * Contains data for a single fluid zone, e.g. Oil, Gas, Water, or sum of fluid zones - */ -export type InplaceVolumetricTableData = { - fluidSelectionName: string; - selectorColumns: Array; - resultColumns: Array; -}; - diff --git a/frontend/src/api/models/InplaceVolumetricTableDataPerFluidSelection.ts b/frontend/src/api/models/InplaceVolumetricTableDataPerFluidSelection.ts deleted file mode 100644 index 9d3c796da..000000000 --- a/frontend/src/api/models/InplaceVolumetricTableDataPerFluidSelection.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { InplaceVolumetricTableData } from './InplaceVolumetricTableData'; -/** - * Volumetric data for a single table per fluid selection - * - * Fluid selection can be single fluid zones, e.g. Oil, Gas, Water, or sum of fluid zones - Oil + Gas + Water - */ -export type InplaceVolumetricTableDataPerFluidSelection = { - tableDataPerFluidSelection: Array; -}; - diff --git a/frontend/src/api/models/InplaceVolumetricsIdentifier.ts b/frontend/src/api/models/InplaceVolumetricsIdentifier.ts deleted file mode 100644 index 04c4646fe..000000000 --- a/frontend/src/api/models/InplaceVolumetricsIdentifier.ts +++ /dev/null @@ -1,10 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum InplaceVolumetricsIdentifier { - ZONE = 'ZONE', - REGION = 'REGION', - FACIES = 'FACIES', - LICENSE = 'LICENSE', -} diff --git a/frontend/src/api/models/InplaceVolumetricsIdentifierWithValues.ts b/frontend/src/api/models/InplaceVolumetricsIdentifierWithValues.ts deleted file mode 100644 index c870b3329..000000000 --- a/frontend/src/api/models/InplaceVolumetricsIdentifierWithValues.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { InplaceVolumetricsIdentifier } from './InplaceVolumetricsIdentifier'; -/** - * Unique values for an index column in a volumetric table - * All values should ideally be strings, but it is common to see integers, especially for REGION - */ -export type InplaceVolumetricsIdentifierWithValues = { - identifier: InplaceVolumetricsIdentifier; - values: Array<(string | number)>; -}; - diff --git a/frontend/src/api/models/InplaceVolumetricsTableDefinition.ts b/frontend/src/api/models/InplaceVolumetricsTableDefinition.ts deleted file mode 100644 index f11dc975a..000000000 --- a/frontend/src/api/models/InplaceVolumetricsTableDefinition.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { FluidZone } from './FluidZone'; -import type { InplaceVolumetricResultName } from './InplaceVolumetricResultName'; -import type { InplaceVolumetricsIdentifierWithValues } from './InplaceVolumetricsIdentifierWithValues'; -/** - * Definition of a volumetric table - */ -export type InplaceVolumetricsTableDefinition = { - tableName: string; - fluidZones: Array; - resultNames: Array; - identifiersWithValues: Array; -}; - diff --git a/frontend/src/api/models/NodeType.ts b/frontend/src/api/models/NodeType.ts deleted file mode 100644 index 42a1260bc..000000000 --- a/frontend/src/api/models/NodeType.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum NodeType { - PROD = 'prod', - INJ = 'inj', - OTHER = 'other', -} diff --git a/frontend/src/api/models/Observations.ts b/frontend/src/api/models/Observations.ts deleted file mode 100644 index 01ce18918..000000000 --- a/frontend/src/api/models/Observations.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { RftObservations } from './RftObservations'; -import type { SummaryVectorObservations } from './SummaryVectorObservations'; -/** - * A collection of observations associated with a field/case/ensemble - */ -export type Observations = { - summary: Array; - rft: Array; -}; - diff --git a/frontend/src/api/models/PointSetXY.ts b/frontend/src/api/models/PointSetXY.ts deleted file mode 100644 index f56cb2e03..000000000 --- a/frontend/src/api/models/PointSetXY.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type PointSetXY = { - x_points: Array; - y_points: Array; -}; - diff --git a/frontend/src/api/models/PolygonData.ts b/frontend/src/api/models/PolygonData.ts deleted file mode 100644 index 2cb5e9cad..000000000 --- a/frontend/src/api/models/PolygonData.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type PolygonData = { - x_arr: Array; - y_arr: Array; - z_arr: Array; - poly_id: (number | string); -}; - diff --git a/frontend/src/api/models/PolygonsAttributeType.ts b/frontend/src/api/models/PolygonsAttributeType.ts deleted file mode 100644 index 225b58e8b..000000000 --- a/frontend/src/api/models/PolygonsAttributeType.ts +++ /dev/null @@ -1,20 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * To be revisited later when the metadata is more mature. - */ -export enum PolygonsAttributeType { - DEPTH = 'depth', - TIME = 'time', - PROPERTY = 'property', - SEISMIC = 'seismic', - THICKNESS = 'thickness', - ISOCHORE = 'isochore', - FLUID_CONTACT = 'fluid_contact', - FIELD_OUTLINE = 'field_outline', - PINCHOUT = 'pinchout', - SUBCROP = 'subcrop', - FAULT_LINES = 'fault_lines', -} diff --git a/frontend/src/api/models/PolygonsMeta.ts b/frontend/src/api/models/PolygonsMeta.ts deleted file mode 100644 index a9555a693..000000000 --- a/frontend/src/api/models/PolygonsMeta.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { PolygonsAttributeType } from './PolygonsAttributeType'; -export type PolygonsMeta = { - name: string; - name_is_stratigraphic_offical: boolean; - stratigraphic_identifier: (string | null); - relative_stratigraphic_level: (number | null); - parent_stratigraphic_identifier: (string | null); - attribute_name: string; - attribute_type: PolygonsAttributeType; -}; - diff --git a/frontend/src/api/models/PolylineIntersection.ts b/frontend/src/api/models/PolylineIntersection.ts deleted file mode 100644 index 9f119de35..000000000 --- a/frontend/src/api/models/PolylineIntersection.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { FenceMeshSection } from './FenceMeshSection'; -import type { GridDimensions } from './GridDimensions'; -export type PolylineIntersection = { - fence_mesh_sections: Array; - grid_dimensions: GridDimensions; - min_grid_prop_value: number; - max_grid_prop_value: number; -}; - diff --git a/frontend/src/api/models/PvtData.ts b/frontend/src/api/models/PvtData.ts deleted file mode 100644 index 93654dc2e..000000000 --- a/frontend/src/api/models/PvtData.ts +++ /dev/null @@ -1,20 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type PvtData = { - name: string; - phase: string; - pvtnum: number; - ratio: Array; - pressure: Array; - volumefactor: Array; - viscosity: Array; - density: Array; - pressure_unit: string; - volumefactor_unit: string; - viscosity_unit: string; - density_unit: string; - ratio_unit: string; -}; - diff --git a/frontend/src/api/models/RepeatedTableColumnData.ts b/frontend/src/api/models/RepeatedTableColumnData.ts deleted file mode 100644 index 2318eab19..000000000 --- a/frontend/src/api/models/RepeatedTableColumnData.ts +++ /dev/null @@ -1,18 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Data for a single column in a volumetric table - * - * Length of index list should be equal to the number of rows in the table - * - * - unique_values: List of unique values in the column - * - indices: List of indices, in unique_values list, for each row in the table - */ -export type RepeatedTableColumnData = { - columnName: string; - uniqueValues: Array<(string | number)>; - indices: Array; -}; - diff --git a/frontend/src/api/models/RftInfo.ts b/frontend/src/api/models/RftInfo.ts deleted file mode 100644 index 5fa3cc3d8..000000000 --- a/frontend/src/api/models/RftInfo.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type RftInfo = { - well_name: string; - timestamps_utc_ms: Array; -}; - diff --git a/frontend/src/api/models/RftObservation.ts b/frontend/src/api/models/RftObservation.ts deleted file mode 100644 index b66453be1..000000000 --- a/frontend/src/api/models/RftObservation.ts +++ /dev/null @@ -1,28 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * A specific RFT (Repeat Formation Tester) observation. - * - * Attributes: - * value (float): The measured value of the observation. - * comment (Optional[str]): An optional comment associated with the observation. - * error (float): The measurement error associated with the observation. - * zone (str): The zone or region associated with the observation. - * md_msl (float): Measured depth from mean sea level. - * x (float): X utm coordinate of the observation. - * y (float): Y utm coordinate of the observation. - * z (float): Z utm coordinate of the observation. - */ -export type RftObservation = { - value: number; - comment: (string | null); - error: number; - zone: string; - md_msl: number; - 'x': number; - 'y': number; - 'z': number; -}; - diff --git a/frontend/src/api/models/RftObservations.ts b/frontend/src/api/models/RftObservations.ts deleted file mode 100644 index bb1d9a650..000000000 --- a/frontend/src/api/models/RftObservations.ts +++ /dev/null @@ -1,21 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { RftObservation } from './RftObservation'; -/** - * A collection of RFT (Repeat Formation Tester) observations for a specific well at a specific date. - * - * Attributes: - * well (str): Unique well identifier - * date (str): Observation date - * comment (Optional[str]): An optional comment associated with the collection of observations. - * observations (List[RftObservation]): A list of RFT observations associated with this collection. - */ -export type RftObservations = { - well: string; - date: string; - comment: (string | null); - observations: Array; -}; - diff --git a/frontend/src/api/models/RftRealizationData.ts b/frontend/src/api/models/RftRealizationData.ts deleted file mode 100644 index 1d5d92be7..000000000 --- a/frontend/src/api/models/RftRealizationData.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type RftRealizationData = { - well_name: string; - realization: number; - timestamp_utc_ms: number; - depth_arr: Array; - value_arr: Array; -}; - diff --git a/frontend/src/api/models/SeismicCubeMeta.ts b/frontend/src/api/models/SeismicCubeMeta.ts deleted file mode 100644 index b9d1f5e5f..000000000 --- a/frontend/src/api/models/SeismicCubeMeta.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type SeismicCubeMeta = { - seismic_attribute: string; - iso_date_or_interval: string; - is_observation: boolean; - is_depth: boolean; -}; - diff --git a/frontend/src/api/models/SeismicFenceData.ts b/frontend/src/api/models/SeismicFenceData.ts deleted file mode 100644 index 66832579e..000000000 --- a/frontend/src/api/models/SeismicFenceData.ts +++ /dev/null @@ -1,37 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { B64FloatArray } from './B64FloatArray'; -/** - * Definition of a fence of seismic data from a set of (x, y) coordinates in domain coordinate system. - * Each (x, y) point provides a trace perpendicular to the x-y plane, with number of samples equal to the depth of the seismic cube. - * - * Each trace is defined to be a set of depth value samples along the length direction of the fence. - * - * `Properties:` - * - `fence_traces_b64arr`: The fence trace array is base64 encoded 1D float array - where data is stored trace by trace. - * - `num_traces`: The number of traces in the fence trace array. Equals the number of (x, y) coordinates in requested polyline. - * - `num_samples_per_trace`: The number of samples in each trace. - * - `min_fence_depth`: The minimum depth value of the fence. - * - `max_fence_depth`: The maximum depth value of the fence. - * - * `Description - fence_traces_b64arr:` - * - * The encoded fence trace array is a flattened array of traces, where data is stored trace by trace. - * With `m = num_traces`, and `n = num_samples_per_trace`, the flattened array has length `mxn`. - * - * Fence traces 1D array: [trace_1_sample_1, trace_1_sample_2, ..., trace_1_sample_n, ..., trace_m_sample_1, trace_m_sample_2, ..., trace_m_sample_n] - * - * - * See: - * - VdsAxis: https://github.com/equinor/vds-slice/blob/ab6f39789bf3d3b59a8df14f1c4682d340dc0bf3/internal/core/core.go#L37-L55 - */ -export type SeismicFenceData = { - fence_traces_b64arr: B64FloatArray; - num_traces: number; - num_samples_per_trace: number; - min_fence_depth: number; - max_fence_depth: number; -}; - diff --git a/frontend/src/api/models/SeismicFencePolyline.ts b/frontend/src/api/models/SeismicFencePolyline.ts deleted file mode 100644 index 00bc666ec..000000000 --- a/frontend/src/api/models/SeismicFencePolyline.ts +++ /dev/null @@ -1,21 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * (x, y) points defining a polyline in domain coordinate system, to retrieve fence of seismic data. - * - * Expect equal number of x- and y-points. - * - * Note: Coordinates are in domain coordinate system (UTM). - * - * NOTE: - * - Verify coordinates are in domain coordinate system (UTM)? - * - Consider points_xy: List[float] - i.e. array with [x1, y1, x2, y2, ..., xn, yn] instead of x_points and y_points arrays? - * - Ensure equal length of x_points and y_points arrays? - */ -export type SeismicFencePolyline = { - x_points: Array; - y_points: Array; -}; - diff --git a/frontend/src/api/models/SensitivityType.ts b/frontend/src/api/models/SensitivityType.ts deleted file mode 100644 index dc108c40c..000000000 --- a/frontend/src/api/models/SensitivityType.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum SensitivityType { - MONTECARLO = 'montecarlo', - SCENARIO = 'scenario', -} diff --git a/frontend/src/api/models/StatisticFunction.ts b/frontend/src/api/models/StatisticFunction.ts deleted file mode 100644 index 337344189..000000000 --- a/frontend/src/api/models/StatisticFunction.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum StatisticFunction { - MEAN = 'MEAN', - MIN = 'MIN', - MAX = 'MAX', - P10 = 'P10', - P90 = 'P90', - P50 = 'P50', -} diff --git a/frontend/src/api/models/StatisticValueObject.ts b/frontend/src/api/models/StatisticValueObject.ts deleted file mode 100644 index 17e73c547..000000000 --- a/frontend/src/api/models/StatisticValueObject.ts +++ /dev/null @@ -1,10 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { StatisticFunction } from './StatisticFunction'; -export type StatisticValueObject = { - statistic_function: StatisticFunction; - values: Array; -}; - diff --git a/frontend/src/api/models/StratigraphicUnit.ts b/frontend/src/api/models/StratigraphicUnit.ts deleted file mode 100644 index 614eb722c..000000000 --- a/frontend/src/api/models/StratigraphicUnit.ts +++ /dev/null @@ -1,24 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Stratigraphic unit from SMDA - * - * Camel case attributes needed for esvIntersection component in front-end - */ -export type StratigraphicUnit = { - identifier: string; - top: string; - base: string; - stratUnitLevel: number; - stratUnitType: string; - topAge: number; - baseAge: number; - stratUnitParent: (string | null); - colorR: number; - colorG: number; - colorB: number; - lithologyType: (number | string); -}; - diff --git a/frontend/src/api/models/SummaryVectorDateObservation.ts b/frontend/src/api/models/SummaryVectorDateObservation.ts deleted file mode 100644 index e9df49f20..000000000 --- a/frontend/src/api/models/SummaryVectorDateObservation.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * A single observation of a summary vector at a specific date. - */ -export type SummaryVectorDateObservation = { - date: string; - comment: (string | null); - value: number; - error: number; - label: string; -}; - diff --git a/frontend/src/api/models/SummaryVectorObservations.ts b/frontend/src/api/models/SummaryVectorObservations.ts deleted file mode 100644 index fe4f1798d..000000000 --- a/frontend/src/api/models/SummaryVectorObservations.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { SummaryVectorDateObservation } from './SummaryVectorDateObservation'; -/** - * A collection of observations of a summary vector. - */ -export type SummaryVectorObservations = { - vector_name: string; - comment: (string | null); - observations: Array; -}; - diff --git a/frontend/src/api/models/SurfaceAttributeType.ts b/frontend/src/api/models/SurfaceAttributeType.ts deleted file mode 100644 index 86fc701b2..000000000 --- a/frontend/src/api/models/SurfaceAttributeType.ts +++ /dev/null @@ -1,28 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * A surface has a single array with values, e.g. depth, time, property, seismic, thickness. - * Only surfaces with depth and time have z-values that can be plotted in 3D. - * The other attributes are scalar values that can be plotted in 2D or used as colormapping for 3D surfaces. - * - * Ideally if the attribute is a scalar, there should be corresponding z-values, but this information is not - * available in the metadata. - * - * To be revisited later when the metadata is more mature. - */ -export enum SurfaceAttributeType { - DEPTH = 'depth', - FACIES_THICKNESS = 'facies_thickness', - FLUID_CONTACT = 'fluid_contact', - PINCHOUT = 'pinchout', - PROPERTY = 'property', - SEISMIC = 'seismic', - SUBCROP = 'subcrop', - THICKNESS = 'thickness', - TIME = 'time', - VELOCITY = 'velocity', - VOLUMES = 'volumes', - UNKNOWN = 'UNKNOWN', -} diff --git a/frontend/src/api/models/SurfaceDataFloat.ts b/frontend/src/api/models/SurfaceDataFloat.ts deleted file mode 100644 index b14910067..000000000 --- a/frontend/src/api/models/SurfaceDataFloat.ts +++ /dev/null @@ -1,16 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { B64FloatArray } from './B64FloatArray'; -import type { BoundingBox2d } from './BoundingBox2d'; -import type { SurfaceDef } from './SurfaceDef'; -export type SurfaceDataFloat = { - format: any; - surface_def: SurfaceDef; - transformed_bbox_utm: BoundingBox2d; - value_min: number; - value_max: number; - values_b64arr: B64FloatArray; -}; - diff --git a/frontend/src/api/models/SurfaceDataPng.ts b/frontend/src/api/models/SurfaceDataPng.ts deleted file mode 100644 index d0b11904b..000000000 --- a/frontend/src/api/models/SurfaceDataPng.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { BoundingBox2d } from './BoundingBox2d'; -import type { SurfaceDef } from './SurfaceDef'; -export type SurfaceDataPng = { - format: any; - surface_def: SurfaceDef; - transformed_bbox_utm: BoundingBox2d; - value_min: number; - value_max: number; - png_image_base64: string; -}; - diff --git a/frontend/src/api/models/SurfaceDef.ts b/frontend/src/api/models/SurfaceDef.ts deleted file mode 100644 index c1fae8d2b..000000000 --- a/frontend/src/api/models/SurfaceDef.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type SurfaceDef = { - npoints_x: number; - npoints_y: number; - inc_x: number; - inc_y: number; - origin_utm_x: number; - origin_utm_y: number; - rot_deg: number; -}; - diff --git a/frontend/src/api/models/SurfaceIntersectionCumulativeLengthPolyline.ts b/frontend/src/api/models/SurfaceIntersectionCumulativeLengthPolyline.ts deleted file mode 100644 index 06123a530..000000000 --- a/frontend/src/api/models/SurfaceIntersectionCumulativeLengthPolyline.ts +++ /dev/null @@ -1,26 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * (x, y) points defining a polyline in domain coordinate system, to retrieve intersection of a surface, with a cumulative length - * between at each (x, y)-point coordinates in domain coordinate system. - * - * Expect equal number of x- and y-points. - * - * x_points: X-coordinates of polyline points. - * y_points: Y-coordinates of polyline points. - * cum_lengths: Cumulative lengths of the polyline segments, i.e. the length of the polyline up to each (x,y) point. - * - * The cumulative lengths can be e.g. measured depth along a well path. - * - * Note: Coordinates are in domain coordinate system (UTM) - * - * Note: Verify if cum_lengths is necessary with respect to xtgeo - */ -export type SurfaceIntersectionCumulativeLengthPolyline = { - x_points: Array; - y_points: Array; - cum_lengths: Array; -}; - diff --git a/frontend/src/api/models/SurfaceIntersectionData.ts b/frontend/src/api/models/SurfaceIntersectionData.ts deleted file mode 100644 index 5c20875fc..000000000 --- a/frontend/src/api/models/SurfaceIntersectionData.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Definition of a surface intersection made from a set of (x, y) coordinates. - * - * name: Name of the surface - * z_points: Array of z-points (depth values) at the intersection points, i.e. depth value for each (x,y) point. - * cum_lengths: Cumulative length values at the intersection points, i.e. accumulated length between each element in the z points. - */ -export type SurfaceIntersectionData = { - name: string; - z_points: Array; - cum_lengths: Array; -}; - diff --git a/frontend/src/api/models/SurfaceMeta.ts b/frontend/src/api/models/SurfaceMeta.ts deleted file mode 100644 index 593761616..000000000 --- a/frontend/src/api/models/SurfaceMeta.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { SurfaceAttributeType } from './SurfaceAttributeType'; -import type { SurfaceTimeType } from './SurfaceTimeType'; -export type SurfaceMeta = { - name: string; - name_is_stratigraphic_offical: boolean; - attribute_name: string; - attribute_type: SurfaceAttributeType; - time_type: SurfaceTimeType; - is_observation: boolean; - value_min: (number | null); - value_max: (number | null); -}; - diff --git a/frontend/src/api/models/SurfaceMetaSet.ts b/frontend/src/api/models/SurfaceMetaSet.ts deleted file mode 100644 index b4e92e914..000000000 --- a/frontend/src/api/models/SurfaceMetaSet.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { SurfaceMeta } from './SurfaceMeta'; -export type SurfaceMetaSet = { - surfaces: Array; - time_points_iso_str: Array; - time_intervals_iso_str: Array; - surface_names_in_strat_order: Array; -}; - diff --git a/frontend/src/api/models/SurfaceRealizationSampleValues.ts b/frontend/src/api/models/SurfaceRealizationSampleValues.ts deleted file mode 100644 index 55808559c..000000000 --- a/frontend/src/api/models/SurfaceRealizationSampleValues.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type SurfaceRealizationSampleValues = { - realization: number; - sampled_values: Array; -}; - diff --git a/frontend/src/api/models/SurfaceStatisticFunction.ts b/frontend/src/api/models/SurfaceStatisticFunction.ts deleted file mode 100644 index a2b2c8014..000000000 --- a/frontend/src/api/models/SurfaceStatisticFunction.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum SurfaceStatisticFunction { - MEAN = 'MEAN', - STD = 'STD', - MIN = 'MIN', - MAX = 'MAX', - P10 = 'P10', - P90 = 'P90', - P50 = 'P50', -} diff --git a/frontend/src/api/models/SurfaceTimeType.ts b/frontend/src/api/models/SurfaceTimeType.ts deleted file mode 100644 index b650c06a2..000000000 --- a/frontend/src/api/models/SurfaceTimeType.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum SurfaceTimeType { - NO_TIME = 'NO_TIME', - TIME_POINT = 'TIME_POINT', - INTERVAL = 'INTERVAL', -} diff --git a/frontend/src/api/models/THP.ts b/frontend/src/api/models/THP.ts deleted file mode 100644 index 89ce3a47f..000000000 --- a/frontend/src/api/models/THP.ts +++ /dev/null @@ -1,7 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type THP = { -}; - diff --git a/frontend/src/api/models/TabType.ts b/frontend/src/api/models/TabType.ts deleted file mode 100644 index 29ce110d2..000000000 --- a/frontend/src/api/models/TabType.ts +++ /dev/null @@ -1,8 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum TabType { - BHP = 'BHP', - TEMP = 'TEMP', -} diff --git a/frontend/src/api/models/TableColumnData.ts b/frontend/src/api/models/TableColumnData.ts deleted file mode 100644 index ebe7d586c..000000000 --- a/frontend/src/api/models/TableColumnData.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Data for a single column in a volumetric table - * - * Length of column values should be equal to the number of rows in the table - */ -export type TableColumnData = { - columnName: string; - columnValues: Array; -}; - diff --git a/frontend/src/api/models/TableColumnStatisticalData.ts b/frontend/src/api/models/TableColumnStatisticalData.ts deleted file mode 100644 index 0dd5fb56d..000000000 --- a/frontend/src/api/models/TableColumnStatisticalData.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Statistical data for a single result column in a volumetric table - * - * Length of column values should be equal to the number of rows in the table - */ -export type TableColumnStatisticalData = { - columnName: string; - statisticValues: Record>; -}; - diff --git a/frontend/src/api/models/TreeNode.ts b/frontend/src/api/models/TreeNode.ts deleted file mode 100644 index c0b5bbb02..000000000 --- a/frontend/src/api/models/TreeNode.ts +++ /dev/null @@ -1,19 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type TreeNode = { - node_type: TreeNode.node_type; - node_label: string; - edge_label: string; - node_data: Record>; - edge_data: Record>; - children: Array; -}; -export namespace TreeNode { - export enum node_type { - GROUP = 'Group', - WELL = 'Well', - } -} - diff --git a/frontend/src/api/models/UnitType.ts b/frontend/src/api/models/UnitType.ts deleted file mode 100644 index 2ddad9125..000000000 --- a/frontend/src/api/models/UnitType.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum UnitType { - METRIC = 'METRIC', - FIELD = 'FIELD', - LAB = 'LAB', - PVT_M = 'PVT-M', - DEFAULT = 'DEFAULT', -} diff --git a/frontend/src/api/models/UserInfo.ts b/frontend/src/api/models/UserInfo.ts deleted file mode 100644 index 80c837b11..000000000 --- a/frontend/src/api/models/UserInfo.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type UserInfo = { - username: string; - display_name: (string | null); - avatar_b64str: (string | null); - has_sumo_access: boolean; - has_smda_access: boolean; -}; - diff --git a/frontend/src/api/models/ValidationError.ts b/frontend/src/api/models/ValidationError.ts deleted file mode 100644 index f2ff49a2b..000000000 --- a/frontend/src/api/models/ValidationError.ts +++ /dev/null @@ -1,10 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type ValidationError = { - loc: Array<(string | number)>; - msg: string; - type: string; -}; - diff --git a/frontend/src/api/models/VectorDescription.ts b/frontend/src/api/models/VectorDescription.ts deleted file mode 100644 index 7f71cd53d..000000000 --- a/frontend/src/api/models/VectorDescription.ts +++ /dev/null @@ -1,10 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type VectorDescription = { - name: string; - descriptive_name: string; - has_historical: boolean; -}; - diff --git a/frontend/src/api/models/VectorHistoricalData.ts b/frontend/src/api/models/VectorHistoricalData.ts deleted file mode 100644 index 81e4f281b..000000000 --- a/frontend/src/api/models/VectorHistoricalData.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type VectorHistoricalData = { - timestamps_utc_ms: Array; - values: Array; - unit: string; - is_rate: boolean; -}; - diff --git a/frontend/src/api/models/VectorRealizationData.ts b/frontend/src/api/models/VectorRealizationData.ts deleted file mode 100644 index a7b06d8c4..000000000 --- a/frontend/src/api/models/VectorRealizationData.ts +++ /dev/null @@ -1,12 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type VectorRealizationData = { - realization: number; - timestamps_utc_ms: Array; - values: Array; - unit: string; - is_rate: boolean; -}; - diff --git a/frontend/src/api/models/VectorStatisticData.ts b/frontend/src/api/models/VectorStatisticData.ts deleted file mode 100644 index 11bd82003..000000000 --- a/frontend/src/api/models/VectorStatisticData.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { StatisticValueObject } from './StatisticValueObject'; -export type VectorStatisticData = { - realizations: Array; - timestamps_utc_ms: Array; - value_objects: Array; - unit: string; - is_rate: boolean; -}; - diff --git a/frontend/src/api/models/VectorStatisticSensitivityData.ts b/frontend/src/api/models/VectorStatisticSensitivityData.ts deleted file mode 100644 index 4bc17dc66..000000000 --- a/frontend/src/api/models/VectorStatisticSensitivityData.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { StatisticValueObject } from './StatisticValueObject'; -export type VectorStatisticSensitivityData = { - realizations: Array; - timestamps_utc_ms: Array; - value_objects: Array; - unit: string; - is_rate: boolean; - sensitivity_name: string; - sensitivity_case: string; -}; - diff --git a/frontend/src/api/models/VfpInjTable.ts b/frontend/src/api/models/VfpInjTable.ts deleted file mode 100644 index 94caea6cb..000000000 --- a/frontend/src/api/models/VfpInjTable.ts +++ /dev/null @@ -1,22 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { FlowRateType } from './FlowRateType'; -import type { TabType } from './TabType'; -import type { UnitType } from './UnitType'; -export type VfpInjTable = { - isInjTable: boolean; - tableNumber: number; - datum: number; - flowRateType: FlowRateType; - unitType: UnitType; - tabType: TabType; - thpValues: Array; - flowRateValues: Array; - bhpValues: Array; - flowRateUnit: string; - thpUnit: string; - bhpUnit: string; -}; - diff --git a/frontend/src/api/models/VfpProdTable.ts b/frontend/src/api/models/VfpProdTable.ts deleted file mode 100644 index 6764e2d0b..000000000 --- a/frontend/src/api/models/VfpProdTable.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { ALQ } from './ALQ'; -import type { FlowRateType } from './FlowRateType'; -import type { GFR } from './GFR'; -import type { TabType } from './TabType'; -import type { THP } from './THP'; -import type { UnitType } from './UnitType'; -import type { WFR } from './WFR'; -export type VfpProdTable = { - isProdTable: boolean; - tableNumber: number; - datum: number; - thpType: THP; - wfrType: WFR; - gfrType: GFR; - alqType: ALQ; - flowRateType: FlowRateType; - unitType: UnitType; - tabType: TabType; - thpValues: Array; - wfrValues: Array; - gfrValues: Array; - alqValues: Array; - flowRateValues: Array; - bhpValues: Array; - flowRateUnit: string; - thpUnit: string; - wfrUnit: string; - gfrUnit: string; - alqUnit: string; - bhpUnit: string; -}; - diff --git a/frontend/src/api/models/WFR.ts b/frontend/src/api/models/WFR.ts deleted file mode 100644 index af2153c70..000000000 --- a/frontend/src/api/models/WFR.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export enum WFR { - WOR = 'WOR', - WCT = 'WCT', - WGR = 'WGR', - WWR = 'WWR', - WTF = 'WTF', -} diff --git a/frontend/src/api/models/WellCompletionsData.ts b/frontend/src/api/models/WellCompletionsData.ts deleted file mode 100644 index 63949475f..000000000 --- a/frontend/src/api/models/WellCompletionsData.ts +++ /dev/null @@ -1,18 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { WellCompletionsUnits } from './WellCompletionsUnits'; -import type { WellCompletionsWell } from './WellCompletionsWell'; -import type { WellCompletionsZone } from './WellCompletionsZone'; -/** - * Type definition for well completions data - */ -export type WellCompletionsData = { - version: string; - units: WellCompletionsUnits; - zones: Array; - sortedCompletionDates: Array; - wells: Array; -}; - diff --git a/frontend/src/api/models/WellCompletionsUnitInfo.ts b/frontend/src/api/models/WellCompletionsUnitInfo.ts deleted file mode 100644 index 8201a567d..000000000 --- a/frontend/src/api/models/WellCompletionsUnitInfo.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type WellCompletionsUnitInfo = { - unit: string; - decimalPlaces: number; -}; - diff --git a/frontend/src/api/models/WellCompletionsUnits.ts b/frontend/src/api/models/WellCompletionsUnits.ts deleted file mode 100644 index eac32ed69..000000000 --- a/frontend/src/api/models/WellCompletionsUnits.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { WellCompletionsUnitInfo } from './WellCompletionsUnitInfo'; -export type WellCompletionsUnits = { - kh: WellCompletionsUnitInfo; -}; - diff --git a/frontend/src/api/models/WellCompletionsWell.ts b/frontend/src/api/models/WellCompletionsWell.ts deleted file mode 100644 index 1572b51eb..000000000 --- a/frontend/src/api/models/WellCompletionsWell.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { Completions } from './Completions'; -export type WellCompletionsWell = { - name: string; - attributes: Record; - completions: Record; -}; - diff --git a/frontend/src/api/models/WellCompletionsZone.ts b/frontend/src/api/models/WellCompletionsZone.ts deleted file mode 100644 index 5a6ad3568..000000000 --- a/frontend/src/api/models/WellCompletionsZone.ts +++ /dev/null @@ -1,9 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type WellCompletionsZone = { - name: string; - subzones: (Array | null); -}; - diff --git a/frontend/src/api/models/WellboreCasing.ts b/frontend/src/api/models/WellboreCasing.ts deleted file mode 100644 index 00d066ab9..000000000 --- a/frontend/src/api/models/WellboreCasing.ts +++ /dev/null @@ -1,17 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type WellboreCasing = { - itemType: string; - diameterNumeric: number; - diameterInner: number; - description: (string | null); - remark: (string | null); - depthTopMd: number; - depthBottomMd: number; - totalDepthMd: number; - startDepth: number; - endDepth: number; -}; - diff --git a/frontend/src/api/models/WellboreCompletion.ts b/frontend/src/api/models/WellboreCompletion.ts deleted file mode 100644 index 99b4553b1..000000000 --- a/frontend/src/api/models/WellboreCompletion.ts +++ /dev/null @@ -1,14 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type WellboreCompletion = { - mdTop: number; - mdBottom: number; - tvdTop: (number | null); - tvdBottom: (number | null); - description: (string | null); - symbolName: (string | null); - comment: (string | null); -}; - diff --git a/frontend/src/api/models/WellboreHeader.ts b/frontend/src/api/models/WellboreHeader.ts deleted file mode 100644 index adcabe04a..000000000 --- a/frontend/src/api/models/WellboreHeader.ts +++ /dev/null @@ -1,15 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type WellboreHeader = { - wellboreUuid: string; - uniqueWellboreIdentifier: string; - wellUuid: string; - uniqueWellIdentifier: string; - wellEasting: number; - wellNorthing: number; - depthReferencePoint: string; - depthReferenceElevation: number; -}; - diff --git a/frontend/src/api/models/WellboreLogCurveData.ts b/frontend/src/api/models/WellboreLogCurveData.ts deleted file mode 100644 index d8d952bd4..000000000 --- a/frontend/src/api/models/WellboreLogCurveData.ts +++ /dev/null @@ -1,16 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type WellboreLogCurveData = { - indexMin: number; - indexMax: number; - minCurveValue: number; - maxCurveValue: number; - dataPoints: Array>; - curveAlias: string; - curveDescription: string; - indexUnit: string; - noDataValue: number; -}; - diff --git a/frontend/src/api/models/WellboreLogCurveHeader.ts b/frontend/src/api/models/WellboreLogCurveHeader.ts deleted file mode 100644 index 12049f97e..000000000 --- a/frontend/src/api/models/WellboreLogCurveHeader.ts +++ /dev/null @@ -1,10 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type WellboreLogCurveHeader = { - logName: string; - curveName: string; - curveUnit: string; -}; - diff --git a/frontend/src/api/models/WellborePerforation.ts b/frontend/src/api/models/WellborePerforation.ts deleted file mode 100644 index 780c421da..000000000 --- a/frontend/src/api/models/WellborePerforation.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type WellborePerforation = { - mdTop: number; - mdBottom: number; - tvdTop: number; - tvdBottom: number; - status: string; - completionMode: string; -}; - diff --git a/frontend/src/api/models/WellborePick.ts b/frontend/src/api/models/WellborePick.ts deleted file mode 100644 index 3bd5079c0..000000000 --- a/frontend/src/api/models/WellborePick.ts +++ /dev/null @@ -1,23 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -/** - * Wellbore pick from SMDA - * - * Camel case attributes needed for esvIntersection component in front-end - */ -export type WellborePick = { - northing: number; - easting: number; - tvd: number; - tvdMsl: number; - md: number; - mdMsl: number; - uniqueWellboreIdentifier: string; - pickIdentifier: string; - confidence: (string | null); - depthReferencePoint: string; - mdUnit: string; -}; - diff --git a/frontend/src/api/models/WellborePicksAndStratigraphicUnits.ts b/frontend/src/api/models/WellborePicksAndStratigraphicUnits.ts deleted file mode 100644 index 0d2f4442a..000000000 --- a/frontend/src/api/models/WellborePicksAndStratigraphicUnits.ts +++ /dev/null @@ -1,11 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { StratigraphicUnit } from './StratigraphicUnit'; -import type { WellborePick } from './WellborePick'; -export type WellborePicksAndStratigraphicUnits = { - wellbore_picks: Array; - stratigraphic_units: Array; -}; - diff --git a/frontend/src/api/models/WellboreTrajectory.ts b/frontend/src/api/models/WellboreTrajectory.ts deleted file mode 100644 index 70aa8f7b3..000000000 --- a/frontend/src/api/models/WellboreTrajectory.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -export type WellboreTrajectory = { - wellboreUuid: string; - uniqueWellboreIdentifier: string; - tvdMslArr: Array; - mdArr: Array; - eastingArr: Array; - northingArr: Array; -}; - diff --git a/frontend/src/api/schemas.gen.ts b/frontend/src/api/schemas.gen.ts new file mode 100644 index 000000000..631652c35 --- /dev/null +++ b/frontend/src/api/schemas.gen.ts @@ -0,0 +1,3151 @@ +// This file is auto-generated by @hey-api/openapi-ts + +export const ALQSchema = { + type: 'string', + enum: ['GRAT', 'IGLR', 'TGLR', 'PUMP', 'COMP', 'DENO', 'DENG', 'BEAN', "''"], + title: 'ALQ' +} as const; + +export const B64FloatArraySchema = { + properties: { + element_type: { + type: 'string', + enum: ['float32', 'float64'], + title: 'Element Type' + }, + data_b64str: { + type: 'string', + title: 'Data B64Str' + } + }, + type: 'object', + required: ['element_type', 'data_b64str'], + title: 'B64FloatArray' +} as const; + +export const B64UintArraySchema = { + properties: { + element_type: { + type: 'string', + enum: ['uint8', 'uint16', 'uint32', 'uint64'], + title: 'Element Type' + }, + data_b64str: { + type: 'string', + title: 'Data B64Str' + } + }, + type: 'object', + required: ['element_type', 'data_b64str'], + title: 'B64UintArray' +} as const; + +export const Body_post_get_aggregated_per_realization_table_dataSchema = { + properties: { + identifiers_with_values: { + items: { + '$ref': '#/components/schemas/InplaceVolumetricsIdentifierWithValues' + }, + type: 'array', + title: 'Identifiers With Values', + description: 'Selected identifiers and wanted values' + } + }, + type: 'object', + required: ['identifiers_with_values'], + title: 'Body_post_get_aggregated_per_realization_table_data' +} as const; + +export const Body_post_get_aggregated_statistical_table_dataSchema = { + properties: { + identifiers_with_values: { + items: { + '$ref': '#/components/schemas/InplaceVolumetricsIdentifierWithValues' + }, + type: 'array', + title: 'Identifiers With Values', + description: 'Selected identifiers and wanted values' + } + }, + type: 'object', + required: ['identifiers_with_values'], + title: 'Body_post_get_aggregated_statistical_table_data' +} as const; + +export const Body_post_get_polyline_intersectionSchema = { + properties: { + polyline_utm_xy: { + items: { + type: 'number' + }, + type: 'array', + title: 'Polyline Utm Xy' + } + }, + type: 'object', + required: ['polyline_utm_xy'], + title: 'Body_post_get_polyline_intersection' +} as const; + +export const Body_post_get_seismic_fenceSchema = { + properties: { + polyline: { + '$ref': '#/components/schemas/SeismicFencePolyline' + } + }, + type: 'object', + required: ['polyline'], + title: 'Body_post_get_seismic_fence' +} as const; + +export const Body_post_get_surface_intersectionSchema = { + properties: { + cumulative_length_polyline: { + '$ref': '#/components/schemas/SurfaceIntersectionCumulativeLengthPolyline' + } + }, + type: 'object', + required: ['cumulative_length_polyline'], + title: 'Body_post_get_surface_intersection' +} as const; + +export const Body_post_sample_surface_in_pointsSchema = { + properties: { + sample_points: { + '$ref': '#/components/schemas/PointSetXY' + } + }, + type: 'object', + required: ['sample_points'], + title: 'Body_post_sample_surface_in_points' +} as const; + +export const BoundingBox2dSchema = { + properties: { + min_x: { + type: 'number', + title: 'Min X' + }, + min_y: { + type: 'number', + title: 'Min Y' + }, + max_x: { + type: 'number', + title: 'Max X' + }, + max_y: { + type: 'number', + title: 'Max Y' + } + }, + additionalProperties: false, + type: 'object', + required: ['min_x', 'min_y', 'max_x', 'max_y'], + title: 'BoundingBox2d' +} as const; + +export const BoundingBox3dSchema = { + properties: { + xmin: { + type: 'number', + title: 'Xmin' + }, + ymin: { + type: 'number', + title: 'Ymin' + }, + zmin: { + type: 'number', + title: 'Zmin' + }, + xmax: { + type: 'number', + title: 'Xmax' + }, + ymax: { + type: 'number', + title: 'Ymax' + }, + zmax: { + type: 'number', + title: 'Zmax' + } + }, + type: 'object', + required: ['xmin', 'ymin', 'zmin', 'xmax', 'ymax', 'zmax'], + title: 'BoundingBox3d', + description: 'Bounding box for a 3D grid geometry' +} as const; + +export const CaseInfoSchema = { + properties: { + uuid: { + type: 'string', + title: 'Uuid' + }, + name: { + type: 'string', + title: 'Name' + }, + status: { + type: 'string', + title: 'Status' + }, + user: { + type: 'string', + title: 'User' + } + }, + type: 'object', + required: ['uuid', 'name', 'status', 'user'], + title: 'CaseInfo' +} as const; + +export const CompletionsSchema = { + properties: { + sortedCompletionDateIndices: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Sortedcompletiondateindices' + }, + open: { + items: { + type: 'number' + }, + type: 'array', + title: 'Open' + }, + shut: { + items: { + type: 'number' + }, + type: 'array', + title: 'Shut' + }, + khMean: { + items: { + type: 'number' + }, + type: 'array', + title: 'Khmean' + }, + khMin: { + items: { + type: 'number' + }, + type: 'array', + title: 'Khmin' + }, + khMax: { + items: { + type: 'number' + }, + type: 'array', + title: 'Khmax' + } + }, + type: 'object', + required: ['sortedCompletionDateIndices', 'open', 'shut', 'khMean', 'khMin', 'khMax'], + title: 'Completions' +} as const; + +export const DatedTreeSchema = { + properties: { + dates: { + items: { + type: 'string' + }, + type: 'array', + title: 'Dates' + }, + tree: { + '$ref': '#/components/schemas/TreeNode' + } + }, + type: 'object', + required: ['dates', 'tree'], + title: 'DatedTree' +} as const; + +export const EnsembleDetailsSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + field_identifier: { + type: 'string', + title: 'Field Identifier' + }, + case_name: { + type: 'string', + title: 'Case Name' + }, + case_uuid: { + type: 'string', + title: 'Case Uuid' + }, + realizations: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Realizations' + } + }, + type: 'object', + required: ['name', 'field_identifier', 'case_name', 'case_uuid', 'realizations'], + title: 'EnsembleDetails' +} as const; + +export const EnsembleInfoSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + realization_count: { + type: 'integer', + title: 'Realization Count' + } + }, + type: 'object', + required: ['name', 'realization_count'], + title: 'EnsembleInfo' +} as const; + +export const EnsembleParameterSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + is_logarithmic: { + type: 'boolean', + title: 'Is Logarithmic' + }, + is_numerical: { + type: 'boolean', + title: 'Is Numerical' + }, + is_constant: { + type: 'boolean', + title: 'Is Constant' + }, + group_name: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Group Name' + }, + descriptive_name: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Descriptive Name' + }, + realizations: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Realizations' + }, + values: { + anyOf: [ + { + items: { + type: 'number' + }, + type: 'array' + }, + { + items: { + type: 'integer' + }, + type: 'array' + }, + { + items: { + type: 'string' + }, + type: 'array' + } + ], + title: 'Values' + } + }, + type: 'object', + required: ['name', 'is_logarithmic', 'is_numerical', 'is_constant', 'group_name', 'descriptive_name', 'realizations', 'values'], + title: 'EnsembleParameter', + description: 'Description/data for a single parameter in an ensemble' +} as const; + +export const EnsembleParameterDescriptionSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + group_name: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Group Name' + }, + descriptive_name: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Descriptive Name' + }, + is_numerical: { + type: 'boolean', + title: 'Is Numerical' + } + }, + type: 'object', + required: ['name', 'group_name', 'descriptive_name', 'is_numerical'], + title: 'EnsembleParameterDescription' +} as const; + +export const EnsembleScalarResponseSchema = { + properties: { + realizations: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Realizations' + }, + values: { + items: { + type: 'number' + }, + type: 'array', + title: 'Values' + }, + name: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Name' + }, + unit: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Unit' + } + }, + type: 'object', + required: ['realizations', 'values', 'name', 'unit'], + title: 'EnsembleScalarResponse', + description: 'A generic type for a scalar response from each of the members of the ensemble.' +} as const; + +export const EnsembleSensitivitySchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + type: { + '$ref': '#/components/schemas/SensitivityType' + }, + cases: { + items: { + '$ref': '#/components/schemas/EnsembleSensitivityCase' + }, + type: 'array', + title: 'Cases' + } + }, + type: 'object', + required: ['name', 'type', 'cases'], + title: 'EnsembleSensitivity', + description: 'Description/data for a single sensitivity in an ensemble' +} as const; + +export const EnsembleSensitivityCaseSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + realizations: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Realizations' + } + }, + type: 'object', + required: ['name', 'realizations'], + title: 'EnsembleSensitivityCase', + description: 'Description/data for a single sensitivity case in an ensemble' +} as const; + +export const FenceMeshSectionSchema = { + properties: { + vertices_uz_b64arr: { + '$ref': '#/components/schemas/B64FloatArray' + }, + poly_indices_b64arr: { + '$ref': '#/components/schemas/B64UintArray' + }, + vertices_per_poly_b64arr: { + '$ref': '#/components/schemas/B64UintArray' + }, + poly_source_cell_indices_b64arr: { + '$ref': '#/components/schemas/B64UintArray' + }, + poly_props_b64arr: { + '$ref': '#/components/schemas/B64FloatArray' + }, + start_utm_x: { + type: 'number', + title: 'Start Utm X' + }, + start_utm_y: { + type: 'number', + title: 'Start Utm Y' + }, + end_utm_x: { + type: 'number', + title: 'End Utm X' + }, + end_utm_y: { + type: 'number', + title: 'End Utm Y' + } + }, + type: 'object', + required: ['vertices_uz_b64arr', 'poly_indices_b64arr', 'vertices_per_poly_b64arr', 'poly_source_cell_indices_b64arr', 'poly_props_b64arr', 'start_utm_x', 'start_utm_y', 'end_utm_x', 'end_utm_y'], + title: 'FenceMeshSection' +} as const; + +export const FieldInfoSchema = { + properties: { + field_identifier: { + type: 'string', + title: 'Field Identifier' + } + }, + type: 'object', + required: ['field_identifier'], + title: 'FieldInfo' +} as const; + +export const FlowRateTypeSchema = { + type: 'string', + enum: ['OIL', 'LIQ', 'GAS', 'WG', 'TM', 'WAT'], + title: 'FlowRateType' +} as const; + +export const FluidZoneSchema = { + type: 'string', + enum: ['Oil', 'Gas', 'Water'], + title: 'FluidZone' +} as const; + +export const FrequencySchema = { + type: 'string', + enum: ['DAILY', 'WEEKLY', 'MONTHLY', 'QUARTERLY', 'YEARLY'], + title: 'Frequency' +} as const; + +export const GFRSchema = { + type: 'string', + enum: ['GOR', 'GLR', 'OGR', 'MMW'], + title: 'GFR' +} as const; + +export const GraphUserPhotoSchema = { + properties: { + avatar_b64str: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Avatar B64Str' + } + }, + type: 'object', + required: ['avatar_b64str'], + title: 'GraphUserPhoto' +} as const; + +export const Grid3dDimensionsSchema = { + properties: { + i_count: { + type: 'integer', + title: 'I Count' + }, + j_count: { + type: 'integer', + title: 'J Count' + }, + k_count: { + type: 'integer', + title: 'K Count' + }, + subgrids: { + items: { + '$ref': '#/components/schemas/Grid3dZone' + }, + type: 'array', + title: 'Subgrids' + } + }, + type: 'object', + required: ['i_count', 'j_count', 'k_count', 'subgrids'], + title: 'Grid3dDimensions', + description: 'Specification of a 3D grid dimensions' +} as const; + +export const Grid3dGeometrySchema = { + properties: { + polys_b64arr: { + '$ref': '#/components/schemas/B64UintArray' + }, + points_b64arr: { + '$ref': '#/components/schemas/B64FloatArray' + }, + poly_source_cell_indices_b64arr: { + '$ref': '#/components/schemas/B64UintArray' + }, + origin_utm_x: { + type: 'number', + title: 'Origin Utm X' + }, + origin_utm_y: { + type: 'number', + title: 'Origin Utm Y' + }, + xmin: { + type: 'number', + title: 'Xmin' + }, + xmax: { + type: 'number', + title: 'Xmax' + }, + ymin: { + type: 'number', + title: 'Ymin' + }, + ymax: { + type: 'number', + title: 'Ymax' + }, + zmin: { + type: 'number', + title: 'Zmin' + }, + zmax: { + type: 'number', + title: 'Zmax' + } + }, + type: 'object', + required: ['polys_b64arr', 'points_b64arr', 'poly_source_cell_indices_b64arr', 'origin_utm_x', 'origin_utm_y', 'xmin', 'xmax', 'ymin', 'ymax', 'zmin', 'zmax'], + title: 'Grid3dGeometry' +} as const; + +export const Grid3dInfoSchema = { + properties: { + grid_name: { + type: 'string', + title: 'Grid Name' + }, + bbox: { + '$ref': '#/components/schemas/BoundingBox3d' + }, + dimensions: { + '$ref': '#/components/schemas/Grid3dDimensions' + }, + property_info_arr: { + items: { + '$ref': '#/components/schemas/Grid3dPropertyInfo' + }, + type: 'array', + title: 'Property Info Arr' + } + }, + type: 'object', + required: ['grid_name', 'bbox', 'dimensions', 'property_info_arr'], + title: 'Grid3dInfo', + description: 'Metadata for a 3D grid model, including its properties and geometry' +} as const; + +export const Grid3dMappedPropertySchema = { + properties: { + poly_props_b64arr: { + '$ref': '#/components/schemas/B64FloatArray' + }, + min_grid_prop_value: { + type: 'number', + title: 'Min Grid Prop Value' + }, + max_grid_prop_value: { + type: 'number', + title: 'Max Grid Prop Value' + } + }, + type: 'object', + required: ['poly_props_b64arr', 'min_grid_prop_value', 'max_grid_prop_value'], + title: 'Grid3dMappedProperty' +} as const; + +export const Grid3dPropertyInfoSchema = { + properties: { + property_name: { + type: 'string', + title: 'Property Name' + }, + iso_date_or_interval: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Iso Date Or Interval' + } + }, + type: 'object', + required: ['property_name', 'iso_date_or_interval'], + title: 'Grid3dPropertyInfo', + description: 'Metadata for a 3D grid property' +} as const; + +export const Grid3dZoneSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + start_layer: { + type: 'integer', + title: 'Start Layer' + }, + end_layer: { + type: 'integer', + title: 'End Layer' + } + }, + type: 'object', + required: ['name', 'start_layer', 'end_layer'], + title: 'Grid3dZone', + description: 'Named subset of 3D grid layers (Zone)' +} as const; + +export const GridDimensionsSchema = { + properties: { + i_count: { + type: 'integer', + title: 'I Count' + }, + j_count: { + type: 'integer', + title: 'J Count' + }, + k_count: { + type: 'integer', + title: 'K Count' + } + }, + type: 'object', + required: ['i_count', 'j_count', 'k_count'], + title: 'GridDimensions' +} as const; + +export const GroupTreeDataSchema = { + properties: { + edge_metadata_list: { + items: { + '$ref': '#/components/schemas/GroupTreeMetadata' + }, + type: 'array', + title: 'Edge Metadata List' + }, + node_metadata_list: { + items: { + '$ref': '#/components/schemas/GroupTreeMetadata' + }, + type: 'array', + title: 'Node Metadata List' + }, + dated_trees: { + items: { + '$ref': '#/components/schemas/DatedTree' + }, + type: 'array', + title: 'Dated Trees' + } + }, + type: 'object', + required: ['edge_metadata_list', 'node_metadata_list', 'dated_trees'], + title: 'GroupTreeData' +} as const; + +export const GroupTreeMetadataSchema = { + properties: { + key: { + type: 'string', + title: 'Key' + }, + label: { + type: 'string', + title: 'Label' + } + }, + type: 'object', + required: ['key', 'label'], + title: 'GroupTreeMetadata' +} as const; + +export const HTTPValidationErrorSchema = { + properties: { + detail: { + items: { + '$ref': '#/components/schemas/ValidationError' + }, + type: 'array', + title: 'Detail' + } + }, + type: 'object', + title: 'HTTPValidationError' +} as const; + +export const InplaceStatisticalVolumetricTableDataSchema = { + properties: { + fluidSelectionName: { + type: 'string', + title: 'Fluidselectionname' + }, + selectorColumns: { + items: { + '$ref': '#/components/schemas/RepeatedTableColumnData' + }, + type: 'array', + title: 'Selectorcolumns' + }, + resultColumnStatistics: { + items: { + '$ref': '#/components/schemas/TableColumnStatisticalData' + }, + type: 'array', + title: 'Resultcolumnstatistics' + } + }, + type: 'object', + required: ['fluidSelectionName', 'selectorColumns', 'resultColumnStatistics'], + title: 'InplaceStatisticalVolumetricTableData', + description: `Statistical volumetric data for single volume table + +Contains data for a single fluid zone, e.g. Oil, Gas, Water, or sum of fluid zones` +} as const; + +export const InplaceStatisticalVolumetricTableDataPerFluidSelectionSchema = { + properties: { + tableDataPerFluidSelection: { + items: { + '$ref': '#/components/schemas/InplaceStatisticalVolumetricTableData' + }, + type: 'array', + title: 'Tabledataperfluidselection' + } + }, + type: 'object', + required: ['tableDataPerFluidSelection'], + title: 'InplaceStatisticalVolumetricTableDataPerFluidSelection', + description: `Statistical volumetric data for a single table per fluid selection + +Fluid selection can be single fluid zones, e.g. Oil, Gas, Water, or sum of fluid zones - Oil + Gas + Water` +} as const; + +export const InplaceVolumetricResultNameSchema = { + type: 'string', + enum: ['BULK', 'NET', 'PORO', 'PORO_NET', 'PORV', 'HCPV', 'STOIIP', 'GIIP', 'NTG', 'ASSOCIATEDGAS', 'ASSOCIATEDOIL', 'BO', 'BG', 'SW', 'STOIIP_TOTAL', 'GIIP_TOTAL'], + title: 'InplaceVolumetricResultName', + description: 'Allowed volumetric response names' +} as const; + +export const InplaceVolumetricStatisticSchema = { + type: 'string', + enum: ['mean', 'stddev', 'max', 'min', 'p10', 'p90'], + title: 'InplaceVolumetricStatistic', + description: 'Definition of possible statistics for a result column in an inplace volumetrics table' +} as const; + +export const InplaceVolumetricTableDataSchema = { + properties: { + fluidSelectionName: { + type: 'string', + title: 'Fluidselectionname' + }, + selectorColumns: { + items: { + '$ref': '#/components/schemas/RepeatedTableColumnData' + }, + type: 'array', + title: 'Selectorcolumns' + }, + resultColumns: { + items: { + '$ref': '#/components/schemas/TableColumnData' + }, + type: 'array', + title: 'Resultcolumns' + } + }, + type: 'object', + required: ['fluidSelectionName', 'selectorColumns', 'resultColumns'], + title: 'InplaceVolumetricTableData', + description: `Volumetric data for a single table + +Contains data for a single fluid zone, e.g. Oil, Gas, Water, or sum of fluid zones` +} as const; + +export const InplaceVolumetricTableDataPerFluidSelectionSchema = { + properties: { + tableDataPerFluidSelection: { + items: { + '$ref': '#/components/schemas/InplaceVolumetricTableData' + }, + type: 'array', + title: 'Tabledataperfluidselection' + } + }, + type: 'object', + required: ['tableDataPerFluidSelection'], + title: 'InplaceVolumetricTableDataPerFluidSelection', + description: `Volumetric data for a single table per fluid selection + +Fluid selection can be single fluid zones, e.g. Oil, Gas, Water, or sum of fluid zones - Oil + Gas + Water` +} as const; + +export const InplaceVolumetricsIdentifierSchema = { + type: 'string', + enum: ['ZONE', 'REGION', 'FACIES', 'LICENSE'], + title: 'InplaceVolumetricsIdentifier' +} as const; + +export const InplaceVolumetricsIdentifierWithValuesSchema = { + properties: { + identifier: { + '$ref': '#/components/schemas/InplaceVolumetricsIdentifier' + }, + values: { + items: { + anyOf: [ + { + type: 'string' + }, + { + type: 'integer' + } + ] + }, + type: 'array', + title: 'Values' + } + }, + type: 'object', + required: ['identifier', 'values'], + title: 'InplaceVolumetricsIdentifierWithValues', + description: `Unique values for an index column in a volumetric table +All values should ideally be strings, but it is common to see integers, especially for REGION` +} as const; + +export const InplaceVolumetricsTableDefinitionSchema = { + properties: { + tableName: { + type: 'string', + title: 'Tablename' + }, + fluidZones: { + items: { + '$ref': '#/components/schemas/FluidZone' + }, + type: 'array', + title: 'Fluidzones' + }, + resultNames: { + items: { + '$ref': '#/components/schemas/InplaceVolumetricResultName' + }, + type: 'array', + title: 'Resultnames' + }, + identifiersWithValues: { + items: { + '$ref': '#/components/schemas/InplaceVolumetricsIdentifierWithValues' + }, + type: 'array', + title: 'Identifierswithvalues' + } + }, + type: 'object', + required: ['tableName', 'fluidZones', 'resultNames', 'identifiersWithValues'], + title: 'InplaceVolumetricsTableDefinition', + description: 'Definition of a volumetric table' +} as const; + +export const NodeTypeSchema = { + type: 'string', + enum: ['prod', 'inj', 'other'], + title: 'NodeType' +} as const; + +export const ObservationsSchema = { + properties: { + summary: { + items: { + '$ref': '#/components/schemas/SummaryVectorObservations' + }, + type: 'array', + title: 'Summary', + default: [] + }, + rft: { + items: { + '$ref': '#/components/schemas/RftObservations' + }, + type: 'array', + title: 'Rft', + default: [] + } + }, + type: 'object', + required: ['summary', 'rft'], + title: 'Observations', + description: 'A collection of observations associated with a field/case/ensemble' +} as const; + +export const PointSetXYSchema = { + properties: { + x_points: { + items: { + type: 'number' + }, + type: 'array', + title: 'X Points' + }, + y_points: { + items: { + type: 'number' + }, + type: 'array', + title: 'Y Points' + } + }, + type: 'object', + required: ['x_points', 'y_points'], + title: 'PointSetXY' +} as const; + +export const PolygonDataSchema = { + properties: { + x_arr: { + items: { + type: 'number' + }, + type: 'array', + title: 'X Arr' + }, + y_arr: { + items: { + type: 'number' + }, + type: 'array', + title: 'Y Arr' + }, + z_arr: { + items: { + type: 'number' + }, + type: 'array', + title: 'Z Arr' + }, + poly_id: { + anyOf: [ + { + type: 'integer' + }, + { + type: 'string' + } + ], + title: 'Poly Id' + } + }, + type: 'object', + required: ['x_arr', 'y_arr', 'z_arr', 'poly_id'], + title: 'PolygonData' +} as const; + +export const PolygonsAttributeTypeSchema = { + type: 'string', + enum: ['depth', 'time', 'property', 'seismic', 'thickness', 'isochore', 'fluid_contact', 'field_outline', 'pinchout', 'subcrop', 'fault_lines'], + title: 'PolygonsAttributeType', + description: 'To be revisited later when the metadata is more mature.' +} as const; + +export const PolygonsMetaSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + name_is_stratigraphic_offical: { + type: 'boolean', + title: 'Name Is Stratigraphic Offical' + }, + stratigraphic_identifier: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Stratigraphic Identifier' + }, + relative_stratigraphic_level: { + anyOf: [ + { + type: 'integer' + }, + { + type: 'null' + } + ], + title: 'Relative Stratigraphic Level' + }, + parent_stratigraphic_identifier: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Parent Stratigraphic Identifier' + }, + attribute_name: { + type: 'string', + title: 'Attribute Name' + }, + attribute_type: { + '$ref': '#/components/schemas/PolygonsAttributeType' + } + }, + type: 'object', + required: ['name', 'name_is_stratigraphic_offical', 'stratigraphic_identifier', 'relative_stratigraphic_level', 'parent_stratigraphic_identifier', 'attribute_name', 'attribute_type'], + title: 'PolygonsMeta' +} as const; + +export const PolylineIntersectionSchema = { + properties: { + fence_mesh_sections: { + items: { + '$ref': '#/components/schemas/FenceMeshSection' + }, + type: 'array', + title: 'Fence Mesh Sections' + }, + grid_dimensions: { + '$ref': '#/components/schemas/GridDimensions' + }, + min_grid_prop_value: { + type: 'number', + title: 'Min Grid Prop Value' + }, + max_grid_prop_value: { + type: 'number', + title: 'Max Grid Prop Value' + } + }, + type: 'object', + required: ['fence_mesh_sections', 'grid_dimensions', 'min_grid_prop_value', 'max_grid_prop_value'], + title: 'PolylineIntersection' +} as const; + +export const PvtDataSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + phase: { + type: 'string', + title: 'Phase' + }, + pvtnum: { + type: 'integer', + title: 'Pvtnum' + }, + ratio: { + items: { + type: 'number' + }, + type: 'array', + title: 'Ratio' + }, + pressure: { + items: { + type: 'number' + }, + type: 'array', + title: 'Pressure' + }, + volumefactor: { + items: { + type: 'number' + }, + type: 'array', + title: 'Volumefactor' + }, + viscosity: { + items: { + type: 'number' + }, + type: 'array', + title: 'Viscosity' + }, + density: { + items: { + type: 'number' + }, + type: 'array', + title: 'Density' + }, + pressure_unit: { + type: 'string', + title: 'Pressure Unit' + }, + volumefactor_unit: { + type: 'string', + title: 'Volumefactor Unit' + }, + viscosity_unit: { + type: 'string', + title: 'Viscosity Unit' + }, + density_unit: { + type: 'string', + title: 'Density Unit' + }, + ratio_unit: { + type: 'string', + title: 'Ratio Unit' + } + }, + type: 'object', + required: ['name', 'phase', 'pvtnum', 'ratio', 'pressure', 'volumefactor', 'viscosity', 'density', 'pressure_unit', 'volumefactor_unit', 'viscosity_unit', 'density_unit', 'ratio_unit'], + title: 'PvtData' +} as const; + +export const RepeatedTableColumnDataSchema = { + properties: { + columnName: { + type: 'string', + title: 'Columnname' + }, + uniqueValues: { + items: { + anyOf: [ + { + type: 'string' + }, + { + type: 'integer' + } + ] + }, + type: 'array', + title: 'Uniquevalues' + }, + indices: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Indices' + } + }, + type: 'object', + required: ['columnName', 'uniqueValues', 'indices'], + title: 'RepeatedTableColumnData', + description: `Data for a single column in a volumetric table + +Length of index list should be equal to the number of rows in the table + +- unique_values: List of unique values in the column +- indices: List of indices, in unique_values list, for each row in the table` +} as const; + +export const RftInfoSchema = { + properties: { + well_name: { + type: 'string', + title: 'Well Name' + }, + timestamps_utc_ms: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Timestamps Utc Ms' + } + }, + type: 'object', + required: ['well_name', 'timestamps_utc_ms'], + title: 'RftInfo' +} as const; + +export const RftObservationSchema = { + properties: { + value: { + type: 'number', + title: 'Value' + }, + comment: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Comment' + }, + error: { + type: 'number', + title: 'Error' + }, + zone: { + type: 'string', + title: 'Zone' + }, + md_msl: { + type: 'number', + title: 'Md Msl' + }, + x: { + type: 'number', + title: 'X' + }, + y: { + type: 'number', + title: 'Y' + }, + z: { + type: 'number', + title: 'Z' + } + }, + type: 'object', + required: ['value', 'comment', 'error', 'zone', 'md_msl', 'x', 'y', 'z'], + title: 'RftObservation', + description: `A specific RFT (Repeat Formation Tester) observation. + +Attributes: + value (float): The measured value of the observation. + comment (Optional[str]): An optional comment associated with the observation. + error (float): The measurement error associated with the observation. + zone (str): The zone or region associated with the observation. + md_msl (float): Measured depth from mean sea level. + x (float): X utm coordinate of the observation. + y (float): Y utm coordinate of the observation. + z (float): Z utm coordinate of the observation.` +} as const; + +export const RftObservationsSchema = { + properties: { + well: { + type: 'string', + title: 'Well' + }, + date: { + type: 'string', + title: 'Date' + }, + comment: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Comment' + }, + observations: { + items: { + '$ref': '#/components/schemas/RftObservation' + }, + type: 'array', + title: 'Observations' + } + }, + type: 'object', + required: ['well', 'date', 'comment', 'observations'], + title: 'RftObservations', + description: `A collection of RFT (Repeat Formation Tester) observations for a specific well at a specific date. + +Attributes: + well (str): Unique well identifier + date (str): Observation date + comment (Optional[str]): An optional comment associated with the collection of observations. + observations (List[RftObservation]): A list of RFT observations associated with this collection.` +} as const; + +export const RftRealizationDataSchema = { + properties: { + well_name: { + type: 'string', + title: 'Well Name' + }, + realization: { + type: 'integer', + title: 'Realization' + }, + timestamp_utc_ms: { + type: 'integer', + title: 'Timestamp Utc Ms' + }, + depth_arr: { + items: { + type: 'number' + }, + type: 'array', + title: 'Depth Arr' + }, + value_arr: { + items: { + type: 'number' + }, + type: 'array', + title: 'Value Arr' + } + }, + type: 'object', + required: ['well_name', 'realization', 'timestamp_utc_ms', 'depth_arr', 'value_arr'], + title: 'RftRealizationData' +} as const; + +export const SeismicCubeMetaSchema = { + properties: { + seismic_attribute: { + type: 'string', + title: 'Seismic Attribute' + }, + iso_date_or_interval: { + type: 'string', + title: 'Iso Date Or Interval' + }, + is_observation: { + type: 'boolean', + title: 'Is Observation' + }, + is_depth: { + type: 'boolean', + title: 'Is Depth' + } + }, + type: 'object', + required: ['seismic_attribute', 'iso_date_or_interval', 'is_observation', 'is_depth'], + title: 'SeismicCubeMeta' +} as const; + +export const SeismicFenceDataSchema = { + properties: { + fence_traces_b64arr: { + '$ref': '#/components/schemas/B64FloatArray' + }, + num_traces: { + type: 'integer', + title: 'Num Traces' + }, + num_samples_per_trace: { + type: 'integer', + title: 'Num Samples Per Trace' + }, + min_fence_depth: { + type: 'number', + title: 'Min Fence Depth' + }, + max_fence_depth: { + type: 'number', + title: 'Max Fence Depth' + } + }, + type: 'object', + required: ['fence_traces_b64arr', 'num_traces', 'num_samples_per_trace', 'min_fence_depth', 'max_fence_depth'], + title: 'SeismicFenceData', + description: `Definition of a fence of seismic data from a set of (x, y) coordinates in domain coordinate system. +Each (x, y) point provides a trace perpendicular to the x-y plane, with number of samples equal to the depth of the seismic cube. + +Each trace is defined to be a set of depth value samples along the length direction of the fence. + +\`Properties:\` +- \`fence_traces_b64arr\`: The fence trace array is base64 encoded 1D float array - where data is stored trace by trace. +- \`num_traces\`: The number of traces in the fence trace array. Equals the number of (x, y) coordinates in requested polyline. +- \`num_samples_per_trace\`: The number of samples in each trace. +- \`min_fence_depth\`: The minimum depth value of the fence. +- \`max_fence_depth\`: The maximum depth value of the fence. + +\`Description - fence_traces_b64arr:\` + +The encoded fence trace array is a flattened array of traces, where data is stored trace by trace. +With \`m = num_traces\`, and \`n = num_samples_per_trace\`, the flattened array has length \`mxn\`. + +Fence traces 1D array: [trace_1_sample_1, trace_1_sample_2, ..., trace_1_sample_n, ..., trace_m_sample_1, trace_m_sample_2, ..., trace_m_sample_n] + + +See: +- VdsAxis: https://github.com/equinor/vds-slice/blob/ab6f39789bf3d3b59a8df14f1c4682d340dc0bf3/internal/core/core.go#L37-L55` +} as const; + +export const SeismicFencePolylineSchema = { + properties: { + x_points: { + items: { + type: 'number' + }, + type: 'array', + title: 'X Points' + }, + y_points: { + items: { + type: 'number' + }, + type: 'array', + title: 'Y Points' + } + }, + type: 'object', + required: ['x_points', 'y_points'], + title: 'SeismicFencePolyline', + description: `(x, y) points defining a polyline in domain coordinate system, to retrieve fence of seismic data. + +Expect equal number of x- and y-points. + +Note: Coordinates are in domain coordinate system (UTM). + +NOTE: +- Verify coordinates are in domain coordinate system (UTM)? +- Consider points_xy: List[float] - i.e. array with [x1, y1, x2, y2, ..., xn, yn] instead of x_points and y_points arrays? +- Ensure equal length of x_points and y_points arrays?` +} as const; + +export const SensitivityTypeSchema = { + type: 'string', + enum: ['montecarlo', 'scenario'], + title: 'SensitivityType' +} as const; + +export const StatisticFunctionSchema = { + type: 'string', + enum: ['MEAN', 'MIN', 'MAX', 'P10', 'P90', 'P50'], + title: 'StatisticFunction' +} as const; + +export const StatisticValueObjectSchema = { + properties: { + statistic_function: { + '$ref': '#/components/schemas/StatisticFunction' + }, + values: { + items: { + type: 'number' + }, + type: 'array', + title: 'Values' + } + }, + type: 'object', + required: ['statistic_function', 'values'], + title: 'StatisticValueObject' +} as const; + +export const StratigraphicUnitSchema = { + properties: { + identifier: { + type: 'string', + title: 'Identifier' + }, + top: { + type: 'string', + title: 'Top' + }, + base: { + type: 'string', + title: 'Base' + }, + stratUnitLevel: { + type: 'integer', + title: 'Stratunitlevel' + }, + stratUnitType: { + type: 'string', + title: 'Stratunittype' + }, + topAge: { + anyOf: [ + { + type: 'integer' + }, + { + type: 'number' + } + ], + title: 'Topage' + }, + baseAge: { + anyOf: [ + { + type: 'integer' + }, + { + type: 'number' + } + ], + title: 'Baseage' + }, + stratUnitParent: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Stratunitparent' + }, + colorR: { + type: 'integer', + title: 'Colorr' + }, + colorG: { + type: 'integer', + title: 'Colorg' + }, + colorB: { + type: 'integer', + title: 'Colorb' + }, + lithologyType: { + anyOf: [ + { + type: 'integer' + }, + { + type: 'number' + }, + { + type: 'string' + } + ], + title: 'Lithologytype', + default: 'unknown' + } + }, + type: 'object', + required: ['identifier', 'top', 'base', 'stratUnitLevel', 'stratUnitType', 'topAge', 'baseAge', 'stratUnitParent', 'colorR', 'colorG', 'colorB', 'lithologyType'], + title: 'StratigraphicUnit', + description: `Stratigraphic unit from SMDA + +Camel case attributes needed for esvIntersection component in front-end` +} as const; + +export const SummaryVectorDateObservationSchema = { + properties: { + date: { + type: 'string', + title: 'Date' + }, + comment: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Comment' + }, + value: { + type: 'number', + title: 'Value' + }, + error: { + type: 'number', + title: 'Error' + }, + label: { + type: 'string', + title: 'Label' + } + }, + type: 'object', + required: ['date', 'comment', 'value', 'error', 'label'], + title: 'SummaryVectorDateObservation', + description: 'A single observation of a summary vector at a specific date.' +} as const; + +export const SummaryVectorObservationsSchema = { + properties: { + vector_name: { + type: 'string', + title: 'Vector Name' + }, + comment: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Comment' + }, + observations: { + items: { + '$ref': '#/components/schemas/SummaryVectorDateObservation' + }, + type: 'array', + title: 'Observations' + } + }, + type: 'object', + required: ['vector_name', 'comment', 'observations'], + title: 'SummaryVectorObservations', + description: 'A collection of observations of a summary vector.' +} as const; + +export const SurfaceAttributeTypeSchema = { + type: 'string', + enum: ['depth', 'facies_thickness', 'fluid_contact', 'pinchout', 'property', 'seismic', 'subcrop', 'thickness', 'time', 'velocity', 'volumes', 'UNKNOWN'], + title: 'SurfaceAttributeType', + description: `A surface has a single array with values, e.g. depth, time, property, seismic, thickness. +Only surfaces with depth and time have z-values that can be plotted in 3D. +The other attributes are scalar values that can be plotted in 2D or used as colormapping for 3D surfaces. + +Ideally if the attribute is a scalar, there should be corresponding z-values, but this information is not +available in the metadata. + +To be revisited later when the metadata is more mature.` +} as const; + +export const SurfaceDataFloatSchema = { + properties: { + format: { + const: 'float', + title: 'Format', + default: 'float' + }, + surface_def: { + '$ref': '#/components/schemas/SurfaceDef' + }, + transformed_bbox_utm: { + '$ref': '#/components/schemas/BoundingBox2d' + }, + value_min: { + type: 'number', + title: 'Value Min' + }, + value_max: { + type: 'number', + title: 'Value Max' + }, + values_b64arr: { + '$ref': '#/components/schemas/B64FloatArray' + } + }, + additionalProperties: false, + type: 'object', + required: ['format', 'surface_def', 'transformed_bbox_utm', 'value_min', 'value_max', 'values_b64arr'], + title: 'SurfaceDataFloat' +} as const; + +export const SurfaceDataPngSchema = { + properties: { + format: { + const: 'png', + title: 'Format', + default: 'png' + }, + surface_def: { + '$ref': '#/components/schemas/SurfaceDef' + }, + transformed_bbox_utm: { + '$ref': '#/components/schemas/BoundingBox2d' + }, + value_min: { + type: 'number', + title: 'Value Min' + }, + value_max: { + type: 'number', + title: 'Value Max' + }, + png_image_base64: { + type: 'string', + title: 'Png Image Base64' + } + }, + additionalProperties: false, + type: 'object', + required: ['format', 'surface_def', 'transformed_bbox_utm', 'value_min', 'value_max', 'png_image_base64'], + title: 'SurfaceDataPng' +} as const; + +export const SurfaceDefSchema = { + properties: { + npoints_x: { + type: 'integer', + title: 'Npoints X' + }, + npoints_y: { + type: 'integer', + title: 'Npoints Y' + }, + inc_x: { + type: 'number', + title: 'Inc X' + }, + inc_y: { + type: 'number', + title: 'Inc Y' + }, + origin_utm_x: { + type: 'number', + title: 'Origin Utm X' + }, + origin_utm_y: { + type: 'number', + title: 'Origin Utm Y' + }, + rot_deg: { + type: 'number', + title: 'Rot Deg' + } + }, + additionalProperties: false, + type: 'object', + required: ['npoints_x', 'npoints_y', 'inc_x', 'inc_y', 'origin_utm_x', 'origin_utm_y', 'rot_deg'], + title: 'SurfaceDef' +} as const; + +export const SurfaceIntersectionCumulativeLengthPolylineSchema = { + properties: { + x_points: { + items: { + type: 'number' + }, + type: 'array', + title: 'X Points' + }, + y_points: { + items: { + type: 'number' + }, + type: 'array', + title: 'Y Points' + }, + cum_lengths: { + items: { + type: 'number' + }, + type: 'array', + title: 'Cum Lengths' + } + }, + type: 'object', + required: ['x_points', 'y_points', 'cum_lengths'], + title: 'SurfaceIntersectionCumulativeLengthPolyline', + description: `(x, y) points defining a polyline in domain coordinate system, to retrieve intersection of a surface, with a cumulative length +between at each (x, y)-point coordinates in domain coordinate system. + +Expect equal number of x- and y-points. + +x_points: X-coordinates of polyline points. +y_points: Y-coordinates of polyline points. +cum_lengths: Cumulative lengths of the polyline segments, i.e. the length of the polyline up to each (x,y) point. + +The cumulative lengths can be e.g. measured depth along a well path. + +Note: Coordinates are in domain coordinate system (UTM) + +Note: Verify if cum_lengths is necessary with respect to xtgeo` +} as const; + +export const SurfaceIntersectionDataSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + z_points: { + items: { + type: 'number' + }, + type: 'array', + title: 'Z Points' + }, + cum_lengths: { + items: { + type: 'number' + }, + type: 'array', + title: 'Cum Lengths' + } + }, + type: 'object', + required: ['name', 'z_points', 'cum_lengths'], + title: 'SurfaceIntersectionData', + description: `Definition of a surface intersection made from a set of (x, y) coordinates. + +name: Name of the surface +z_points: Array of z-points (depth values) at the intersection points, i.e. depth value for each (x,y) point. +cum_lengths: Cumulative length values at the intersection points, i.e. accumulated length between each element in the z points.` +} as const; + +export const SurfaceMetaSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + name_is_stratigraphic_offical: { + type: 'boolean', + title: 'Name Is Stratigraphic Offical' + }, + attribute_name: { + type: 'string', + title: 'Attribute Name' + }, + attribute_type: { + '$ref': '#/components/schemas/SurfaceAttributeType' + }, + time_type: { + '$ref': '#/components/schemas/SurfaceTimeType' + }, + is_observation: { + type: 'boolean', + title: 'Is Observation' + }, + value_min: { + anyOf: [ + { + type: 'number' + }, + { + type: 'null' + } + ], + title: 'Value Min' + }, + value_max: { + anyOf: [ + { + type: 'number' + }, + { + type: 'null' + } + ], + title: 'Value Max' + } + }, + additionalProperties: false, + type: 'object', + required: ['name', 'name_is_stratigraphic_offical', 'attribute_name', 'attribute_type', 'time_type', 'is_observation', 'value_min', 'value_max'], + title: 'SurfaceMeta' +} as const; + +export const SurfaceMetaSetSchema = { + properties: { + surfaces: { + items: { + '$ref': '#/components/schemas/SurfaceMeta' + }, + type: 'array', + title: 'Surfaces' + }, + time_points_iso_str: { + items: { + type: 'string' + }, + type: 'array', + title: 'Time Points Iso Str' + }, + time_intervals_iso_str: { + items: { + type: 'string' + }, + type: 'array', + title: 'Time Intervals Iso Str' + }, + surface_names_in_strat_order: { + items: { + type: 'string' + }, + type: 'array', + title: 'Surface Names In Strat Order' + } + }, + additionalProperties: false, + type: 'object', + required: ['surfaces', 'time_points_iso_str', 'time_intervals_iso_str', 'surface_names_in_strat_order'], + title: 'SurfaceMetaSet' +} as const; + +export const SurfaceRealizationSampleValuesSchema = { + properties: { + realization: { + type: 'integer', + title: 'Realization' + }, + sampled_values: { + items: { + type: 'number' + }, + type: 'array', + title: 'Sampled Values' + } + }, + type: 'object', + required: ['realization', 'sampled_values'], + title: 'SurfaceRealizationSampleValues' +} as const; + +export const SurfaceStatisticFunctionSchema = { + type: 'string', + enum: ['MEAN', 'STD', 'MIN', 'MAX', 'P10', 'P90', 'P50'], + title: 'SurfaceStatisticFunction' +} as const; + +export const SurfaceTimeTypeSchema = { + type: 'string', + enum: ['NO_TIME', 'TIME_POINT', 'INTERVAL'], + title: 'SurfaceTimeType' +} as const; + +export const THPSchema = { + const: 'THP', + title: 'THP' +} as const; + +export const TabTypeSchema = { + type: 'string', + enum: ['BHP', 'TEMP'], + title: 'TabType' +} as const; + +export const TableColumnDataSchema = { + properties: { + columnName: { + type: 'string', + title: 'Columnname' + }, + columnValues: { + items: { + type: 'number' + }, + type: 'array', + title: 'Columnvalues' + } + }, + type: 'object', + required: ['columnName', 'columnValues'], + title: 'TableColumnData', + description: `Data for a single column in a volumetric table + +Length of column values should be equal to the number of rows in the table` +} as const; + +export const TableColumnStatisticalDataSchema = { + properties: { + columnName: { + type: 'string', + title: 'Columnname' + }, + statisticValues: { + additionalProperties: { + items: { + type: 'number' + }, + type: 'array' + }, + type: 'object', + title: 'Statisticvalues' + } + }, + type: 'object', + required: ['columnName', 'statisticValues'], + title: 'TableColumnStatisticalData', + description: `Statistical data for a single result column in a volumetric table + +Length of column values should be equal to the number of rows in the table` +} as const; + +export const TreeNodeSchema = { + properties: { + node_type: { + type: 'string', + enum: ['Group', 'Well'], + title: 'Node Type' + }, + node_label: { + type: 'string', + title: 'Node Label' + }, + edge_label: { + type: 'string', + title: 'Edge Label' + }, + node_data: { + additionalProperties: { + items: { + type: 'number' + }, + type: 'array' + }, + type: 'object', + title: 'Node Data' + }, + edge_data: { + additionalProperties: { + items: { + type: 'number' + }, + type: 'array' + }, + type: 'object', + title: 'Edge Data' + }, + children: { + items: { + '$ref': '#/components/schemas/TreeNode' + }, + type: 'array', + title: 'Children' + } + }, + type: 'object', + required: ['node_type', 'node_label', 'edge_label', 'node_data', 'edge_data', 'children'], + title: 'TreeNode' +} as const; + +export const UnitTypeSchema = { + type: 'string', + enum: ['METRIC', 'FIELD', 'LAB', 'PVT-M', 'DEFAULT'], + title: 'UnitType' +} as const; + +export const UserInfoSchema = { + properties: { + username: { + type: 'string', + title: 'Username' + }, + display_name: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Display Name' + }, + avatar_b64str: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Avatar B64Str' + }, + has_sumo_access: { + type: 'boolean', + title: 'Has Sumo Access' + }, + has_smda_access: { + type: 'boolean', + title: 'Has Smda Access' + } + }, + type: 'object', + required: ['username', 'display_name', 'avatar_b64str', 'has_sumo_access', 'has_smda_access'], + title: 'UserInfo' +} as const; + +export const ValidationErrorSchema = { + properties: { + loc: { + items: { + anyOf: [ + { + type: 'string' + }, + { + type: 'integer' + } + ] + }, + type: 'array', + title: 'Location' + }, + msg: { + type: 'string', + title: 'Message' + }, + type: { + type: 'string', + title: 'Error Type' + } + }, + type: 'object', + required: ['loc', 'msg', 'type'], + title: 'ValidationError' +} as const; + +export const VectorDescriptionSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + descriptive_name: { + type: 'string', + title: 'Descriptive Name' + }, + has_historical: { + type: 'boolean', + title: 'Has Historical' + } + }, + type: 'object', + required: ['name', 'descriptive_name', 'has_historical'], + title: 'VectorDescription' +} as const; + +export const VectorHistoricalDataSchema = { + properties: { + timestamps_utc_ms: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Timestamps Utc Ms' + }, + values: { + items: { + type: 'number' + }, + type: 'array', + title: 'Values' + }, + unit: { + type: 'string', + title: 'Unit' + }, + is_rate: { + type: 'boolean', + title: 'Is Rate' + } + }, + type: 'object', + required: ['timestamps_utc_ms', 'values', 'unit', 'is_rate'], + title: 'VectorHistoricalData' +} as const; + +export const VectorRealizationDataSchema = { + properties: { + realization: { + type: 'integer', + title: 'Realization' + }, + timestamps_utc_ms: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Timestamps Utc Ms' + }, + values: { + items: { + type: 'number' + }, + type: 'array', + title: 'Values' + }, + unit: { + type: 'string', + title: 'Unit' + }, + is_rate: { + type: 'boolean', + title: 'Is Rate' + } + }, + type: 'object', + required: ['realization', 'timestamps_utc_ms', 'values', 'unit', 'is_rate'], + title: 'VectorRealizationData' +} as const; + +export const VectorStatisticDataSchema = { + properties: { + realizations: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Realizations' + }, + timestamps_utc_ms: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Timestamps Utc Ms' + }, + value_objects: { + items: { + '$ref': '#/components/schemas/StatisticValueObject' + }, + type: 'array', + title: 'Value Objects' + }, + unit: { + type: 'string', + title: 'Unit' + }, + is_rate: { + type: 'boolean', + title: 'Is Rate' + } + }, + type: 'object', + required: ['realizations', 'timestamps_utc_ms', 'value_objects', 'unit', 'is_rate'], + title: 'VectorStatisticData' +} as const; + +export const VectorStatisticSensitivityDataSchema = { + properties: { + realizations: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Realizations' + }, + timestamps_utc_ms: { + items: { + type: 'integer' + }, + type: 'array', + title: 'Timestamps Utc Ms' + }, + value_objects: { + items: { + '$ref': '#/components/schemas/StatisticValueObject' + }, + type: 'array', + title: 'Value Objects' + }, + unit: { + type: 'string', + title: 'Unit' + }, + is_rate: { + type: 'boolean', + title: 'Is Rate' + }, + sensitivity_name: { + type: 'string', + title: 'Sensitivity Name' + }, + sensitivity_case: { + type: 'string', + title: 'Sensitivity Case' + } + }, + type: 'object', + required: ['realizations', 'timestamps_utc_ms', 'value_objects', 'unit', 'is_rate', 'sensitivity_name', 'sensitivity_case'], + title: 'VectorStatisticSensitivityData' +} as const; + +export const VfpInjTableSchema = { + properties: { + isInjTable: { + type: 'boolean', + title: 'Isinjtable', + default: true + }, + tableNumber: { + type: 'integer', + title: 'Tablenumber' + }, + datum: { + type: 'number', + title: 'Datum' + }, + flowRateType: { + '$ref': '#/components/schemas/FlowRateType' + }, + unitType: { + '$ref': '#/components/schemas/UnitType' + }, + tabType: { + '$ref': '#/components/schemas/TabType' + }, + thpValues: { + items: { + type: 'number' + }, + type: 'array', + title: 'Thpvalues' + }, + flowRateValues: { + items: { + type: 'number' + }, + type: 'array', + title: 'Flowratevalues' + }, + bhpValues: { + items: { + type: 'number' + }, + type: 'array', + title: 'Bhpvalues' + }, + flowRateUnit: { + type: 'string', + title: 'Flowrateunit' + }, + thpUnit: { + type: 'string', + title: 'Thpunit' + }, + bhpUnit: { + type: 'string', + title: 'Bhpunit' + } + }, + type: 'object', + required: ['isInjTable', 'tableNumber', 'datum', 'flowRateType', 'unitType', 'tabType', 'thpValues', 'flowRateValues', 'bhpValues', 'flowRateUnit', 'thpUnit', 'bhpUnit'], + title: 'VfpInjTable' +} as const; + +export const VfpProdTableSchema = { + properties: { + isProdTable: { + type: 'boolean', + title: 'Isprodtable', + default: true + }, + tableNumber: { + type: 'integer', + title: 'Tablenumber' + }, + datum: { + type: 'number', + title: 'Datum' + }, + thpType: { + '$ref': '#/components/schemas/THP' + }, + wfrType: { + '$ref': '#/components/schemas/WFR' + }, + gfrType: { + '$ref': '#/components/schemas/GFR' + }, + alqType: { + '$ref': '#/components/schemas/ALQ' + }, + flowRateType: { + '$ref': '#/components/schemas/FlowRateType' + }, + unitType: { + '$ref': '#/components/schemas/UnitType' + }, + tabType: { + '$ref': '#/components/schemas/TabType' + }, + thpValues: { + items: { + type: 'number' + }, + type: 'array', + title: 'Thpvalues' + }, + wfrValues: { + items: { + type: 'number' + }, + type: 'array', + title: 'Wfrvalues' + }, + gfrValues: { + items: { + type: 'number' + }, + type: 'array', + title: 'Gfrvalues' + }, + alqValues: { + items: { + type: 'number' + }, + type: 'array', + title: 'Alqvalues' + }, + flowRateValues: { + items: { + type: 'number' + }, + type: 'array', + title: 'Flowratevalues' + }, + bhpValues: { + items: { + type: 'number' + }, + type: 'array', + title: 'Bhpvalues' + }, + flowRateUnit: { + type: 'string', + title: 'Flowrateunit' + }, + thpUnit: { + type: 'string', + title: 'Thpunit' + }, + wfrUnit: { + type: 'string', + title: 'Wfrunit' + }, + gfrUnit: { + type: 'string', + title: 'Gfrunit' + }, + alqUnit: { + type: 'string', + title: 'Alqunit' + }, + bhpUnit: { + type: 'string', + title: 'Bhpunit' + } + }, + type: 'object', + required: ['isProdTable', 'tableNumber', 'datum', 'thpType', 'wfrType', 'gfrType', 'alqType', 'flowRateType', 'unitType', 'tabType', 'thpValues', 'wfrValues', 'gfrValues', 'alqValues', 'flowRateValues', 'bhpValues', 'flowRateUnit', 'thpUnit', 'wfrUnit', 'gfrUnit', 'alqUnit', 'bhpUnit'], + title: 'VfpProdTable' +} as const; + +export const WFRSchema = { + type: 'string', + enum: ['WOR', 'WCT', 'WGR', 'WWR', 'WTF'], + title: 'WFR' +} as const; + +export const WellCompletionsDataSchema = { + properties: { + version: { + type: 'string', + title: 'Version' + }, + units: { + '$ref': '#/components/schemas/WellCompletionsUnits' + }, + zones: { + items: { + '$ref': '#/components/schemas/WellCompletionsZone' + }, + type: 'array', + title: 'Zones' + }, + sortedCompletionDates: { + items: { + type: 'string' + }, + type: 'array', + title: 'Sortedcompletiondates' + }, + wells: { + items: { + '$ref': '#/components/schemas/WellCompletionsWell' + }, + type: 'array', + title: 'Wells' + } + }, + type: 'object', + required: ['version', 'units', 'zones', 'sortedCompletionDates', 'wells'], + title: 'WellCompletionsData', + description: 'Type definition for well completions data' +} as const; + +export const WellCompletionsUnitInfoSchema = { + properties: { + unit: { + type: 'string', + title: 'Unit' + }, + decimalPlaces: { + type: 'integer', + title: 'Decimalplaces' + } + }, + type: 'object', + required: ['unit', 'decimalPlaces'], + title: 'WellCompletionsUnitInfo' +} as const; + +export const WellCompletionsUnitsSchema = { + properties: { + kh: { + '$ref': '#/components/schemas/WellCompletionsUnitInfo' + } + }, + type: 'object', + required: ['kh'], + title: 'WellCompletionsUnits' +} as const; + +export const WellCompletionsWellSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + attributes: { + additionalProperties: { + anyOf: [ + { + type: 'string' + }, + { + type: 'integer' + }, + { + type: 'boolean' + } + ] + }, + type: 'object', + title: 'Attributes' + }, + completions: { + additionalProperties: { + '$ref': '#/components/schemas/Completions' + }, + type: 'object', + title: 'Completions' + } + }, + type: 'object', + required: ['name', 'attributes', 'completions'], + title: 'WellCompletionsWell' +} as const; + +export const WellCompletionsZoneSchema = { + properties: { + name: { + type: 'string', + title: 'Name' + }, + subzones: { + anyOf: [ + { + items: { + '$ref': '#/components/schemas/WellCompletionsZone' + }, + type: 'array' + }, + { + type: 'null' + } + ], + title: 'Subzones' + } + }, + type: 'object', + required: ['name', 'subzones'], + title: 'WellCompletionsZone' +} as const; + +export const WellboreCasingSchema = { + properties: { + itemType: { + type: 'string', + title: 'Itemtype' + }, + diameterNumeric: { + type: 'number', + title: 'Diameternumeric' + }, + diameterInner: { + type: 'number', + title: 'Diameterinner' + }, + description: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Description' + }, + remark: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Remark' + }, + depthTopMd: { + type: 'number', + title: 'Depthtopmd' + }, + depthBottomMd: { + type: 'number', + title: 'Depthbottommd' + }, + totalDepthMd: { + type: 'number', + title: 'Totaldepthmd' + }, + startDepth: { + type: 'number', + title: 'Startdepth' + }, + endDepth: { + type: 'number', + title: 'Enddepth' + } + }, + type: 'object', + required: ['itemType', 'diameterNumeric', 'diameterInner', 'description', 'remark', 'depthTopMd', 'depthBottomMd', 'totalDepthMd', 'startDepth', 'endDepth'], + title: 'WellboreCasing' +} as const; + +export const WellboreCompletionSchema = { + properties: { + mdTop: { + type: 'number', + title: 'Mdtop' + }, + mdBottom: { + type: 'number', + title: 'Mdbottom' + }, + tvdTop: { + anyOf: [ + { + type: 'number' + }, + { + type: 'null' + } + ], + title: 'Tvdtop' + }, + tvdBottom: { + anyOf: [ + { + type: 'number' + }, + { + type: 'null' + } + ], + title: 'Tvdbottom' + }, + description: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Description' + }, + symbolName: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Symbolname' + }, + comment: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Comment' + } + }, + type: 'object', + required: ['mdTop', 'mdBottom', 'tvdTop', 'tvdBottom', 'description', 'symbolName', 'comment'], + title: 'WellboreCompletion' +} as const; + +export const WellboreHeaderSchema = { + properties: { + wellboreUuid: { + type: 'string', + title: 'Wellboreuuid' + }, + uniqueWellboreIdentifier: { + type: 'string', + title: 'Uniquewellboreidentifier' + }, + wellUuid: { + type: 'string', + title: 'Welluuid' + }, + uniqueWellIdentifier: { + type: 'string', + title: 'Uniquewellidentifier' + }, + wellEasting: { + type: 'number', + title: 'Welleasting' + }, + wellNorthing: { + type: 'number', + title: 'Wellnorthing' + }, + depthReferencePoint: { + type: 'string', + title: 'Depthreferencepoint' + }, + depthReferenceElevation: { + type: 'number', + title: 'Depthreferenceelevation' + } + }, + type: 'object', + required: ['wellboreUuid', 'uniqueWellboreIdentifier', 'wellUuid', 'uniqueWellIdentifier', 'wellEasting', 'wellNorthing', 'depthReferencePoint', 'depthReferenceElevation'], + title: 'WellboreHeader' +} as const; + +export const WellboreLogCurveDataSchema = { + properties: { + indexMin: { + type: 'number', + title: 'Indexmin' + }, + indexMax: { + type: 'number', + title: 'Indexmax' + }, + minCurveValue: { + type: 'number', + title: 'Mincurvevalue' + }, + maxCurveValue: { + type: 'number', + title: 'Maxcurvevalue' + }, + dataPoints: { + items: { + items: { + anyOf: [ + { + type: 'number' + }, + { + type: 'null' + } + ] + }, + type: 'array' + }, + type: 'array', + title: 'Datapoints' + }, + curveAlias: { + type: 'string', + title: 'Curvealias' + }, + curveDescription: { + type: 'string', + title: 'Curvedescription' + }, + indexUnit: { + type: 'string', + title: 'Indexunit' + }, + noDataValue: { + type: 'number', + title: 'Nodatavalue' + } + }, + type: 'object', + required: ['indexMin', 'indexMax', 'minCurveValue', 'maxCurveValue', 'dataPoints', 'curveAlias', 'curveDescription', 'indexUnit', 'noDataValue'], + title: 'WellboreLogCurveData' +} as const; + +export const WellboreLogCurveHeaderSchema = { + properties: { + logName: { + type: 'string', + title: 'Logname' + }, + curveName: { + type: 'string', + title: 'Curvename' + }, + curveUnit: { + type: 'string', + title: 'Curveunit' + } + }, + type: 'object', + required: ['logName', 'curveName', 'curveUnit'], + title: 'WellboreLogCurveHeader' +} as const; + +export const WellborePerforationSchema = { + properties: { + mdTop: { + type: 'number', + title: 'Mdtop' + }, + mdBottom: { + type: 'number', + title: 'Mdbottom' + }, + tvdTop: { + type: 'number', + title: 'Tvdtop' + }, + tvdBottom: { + type: 'number', + title: 'Tvdbottom' + }, + status: { + type: 'string', + title: 'Status' + }, + completionMode: { + type: 'string', + title: 'Completionmode' + } + }, + type: 'object', + required: ['mdTop', 'mdBottom', 'tvdTop', 'tvdBottom', 'status', 'completionMode'], + title: 'WellborePerforation' +} as const; + +export const WellborePickSchema = { + properties: { + northing: { + type: 'number', + title: 'Northing' + }, + easting: { + type: 'number', + title: 'Easting' + }, + tvd: { + type: 'number', + title: 'Tvd' + }, + tvdMsl: { + type: 'number', + title: 'Tvdmsl' + }, + md: { + type: 'number', + title: 'Md' + }, + mdMsl: { + type: 'number', + title: 'Mdmsl' + }, + uniqueWellboreIdentifier: { + type: 'string', + title: 'Uniquewellboreidentifier' + }, + pickIdentifier: { + type: 'string', + title: 'Pickidentifier' + }, + confidence: { + anyOf: [ + { + type: 'string' + }, + { + type: 'null' + } + ], + title: 'Confidence' + }, + depthReferencePoint: { + type: 'string', + title: 'Depthreferencepoint' + }, + mdUnit: { + type: 'string', + title: 'Mdunit' + } + }, + type: 'object', + required: ['northing', 'easting', 'tvd', 'tvdMsl', 'md', 'mdMsl', 'uniqueWellboreIdentifier', 'pickIdentifier', 'confidence', 'depthReferencePoint', 'mdUnit'], + title: 'WellborePick', + description: `Wellbore pick from SMDA + +Camel case attributes needed for esvIntersection component in front-end` +} as const; + +export const WellborePicksAndStratigraphicUnitsSchema = { + properties: { + wellbore_picks: { + items: { + '$ref': '#/components/schemas/WellborePick' + }, + type: 'array', + title: 'Wellbore Picks', + default: [] + }, + stratigraphic_units: { + items: { + '$ref': '#/components/schemas/StratigraphicUnit' + }, + type: 'array', + title: 'Stratigraphic Units', + default: [] + } + }, + type: 'object', + required: ['wellbore_picks', 'stratigraphic_units'], + title: 'WellborePicksAndStratigraphicUnits' +} as const; + +export const WellboreTrajectorySchema = { + properties: { + wellboreUuid: { + type: 'string', + title: 'Wellboreuuid' + }, + uniqueWellboreIdentifier: { + type: 'string', + title: 'Uniquewellboreidentifier' + }, + tvdMslArr: { + items: { + type: 'number' + }, + type: 'array', + title: 'Tvdmslarr' + }, + mdArr: { + items: { + type: 'number' + }, + type: 'array', + title: 'Mdarr' + }, + eastingArr: { + items: { + type: 'number' + }, + type: 'array', + title: 'Eastingarr' + }, + northingArr: { + items: { + type: 'number' + }, + type: 'array', + title: 'Northingarr' + } + }, + type: 'object', + required: ['wellboreUuid', 'uniqueWellboreIdentifier', 'tvdMslArr', 'mdArr', 'eastingArr', 'northingArr'], + title: 'WellboreTrajectory' +} as const; \ No newline at end of file diff --git a/frontend/src/api/services.gen.ts b/frontend/src/api/services.gen.ts new file mode 100644 index 000000000..165ee5a14 --- /dev/null +++ b/frontend/src/api/services.gen.ts @@ -0,0 +1,771 @@ +// This file is auto-generated by @hey-api/openapi-ts + +import { createClient, createConfig, type Options } from '@hey-api/client-axios'; +import type { GetFieldsError, GetFieldsResponse, GetCasesData, GetCasesError, GetCasesResponse, GetEnsemblesData, GetEnsemblesError, GetEnsemblesResponse, GetEnsembleDetailsData, GetEnsembleDetailsError, GetEnsembleDetailsResponse, GetVectorListData, GetVectorListError, GetVectorListResponse, GetRealizationsVectorDataData, GetRealizationsVectorDataError, GetRealizationsVectorDataResponse, GetTimestampsListData, GetTimestampsListError, GetTimestampsListResponse, GetHistoricalVectorDataData, GetHistoricalVectorDataError, GetHistoricalVectorDataResponse, GetStatisticalVectorDataData, GetStatisticalVectorDataError, GetStatisticalVectorDataResponse, GetStatisticalVectorDataPerSensitivityData, GetStatisticalVectorDataPerSensitivityError, GetStatisticalVectorDataPerSensitivityResponse, GetRealizationVectorAtTimestampData, GetRealizationVectorAtTimestampError, GetRealizationVectorAtTimestampResponse, GetTableDefinitionsData, GetTableDefinitionsError, GetTableDefinitionsResponse, PostGetAggregatedPerRealizationTableDataData, PostGetAggregatedPerRealizationTableDataError, PostGetAggregatedPerRealizationTableDataResponse, PostGetAggregatedStatisticalTableDataData, PostGetAggregatedStatisticalTableDataError, PostGetAggregatedStatisticalTableDataResponse, GetRealizationSurfacesMetadataData, GetRealizationSurfacesMetadataError, GetRealizationSurfacesMetadataResponse, GetObservedSurfacesMetadataData, GetObservedSurfacesMetadataError, GetObservedSurfacesMetadataResponse, GetSurfaceDataData, GetSurfaceDataError, GetSurfaceDataResponse, PostGetSurfaceIntersectionData, PostGetSurfaceIntersectionError, PostGetSurfaceIntersectionResponse, PostSampleSurfaceInPointsData, PostSampleSurfaceInPointsError, PostSampleSurfaceInPointsResponse, GetDeltaSurfaceDataData, GetDeltaSurfaceDataError, GetDeltaSurfaceDataResponse, GetMisfitSurfaceDataData, GetMisfitSurfaceDataError, GetMisfitSurfaceDataResponse, GetParameterNamesAndDescriptionData, GetParameterNamesAndDescriptionError, GetParameterNamesAndDescriptionResponse, GetParameterData, GetParameterError, GetParameterResponse, GetParametersData, GetParametersError, GetParametersResponse, IsSensitivityRunData, IsSensitivityRunError, IsSensitivityRunResponse, GetSensitivitiesData, GetSensitivitiesError, GetSensitivitiesResponse, GetGridModelsInfoData, GetGridModelsInfoError, GetGridModelsInfoResponse, IsGridGeometrySharedData, IsGridGeometrySharedError, IsGridGeometrySharedResponse, GridSurfaceData, GridSurfaceError, GridSurfaceResponse, GridParameterData, GridParameterError, GridParameterResponse, PostGetPolylineIntersectionData, PostGetPolylineIntersectionError, PostGetPolylineIntersectionResponse, GetRealizationGroupTreeDataData, GetRealizationGroupTreeDataError, GetRealizationGroupTreeDataResponse, TableDataData, TableDataError, TableDataResponse, RealizationsTablesAreEqualData, RealizationsTablesAreEqualError, RealizationsTablesAreEqualResponse, GetWellCompletionsDataData, GetWellCompletionsDataError, GetWellCompletionsDataResponse, GetDrilledWellboreHeadersData, GetDrilledWellboreHeadersError, GetDrilledWellboreHeadersResponse, GetFieldWellTrajectoriesData, GetFieldWellTrajectoriesError, GetFieldWellTrajectoriesResponse, GetWellTrajectoriesData, GetWellTrajectoriesError, GetWellTrajectoriesResponse, GetWellborePicksAndStratigraphicUnitsData, GetWellborePicksAndStratigraphicUnitsError, GetWellborePicksAndStratigraphicUnitsResponse, GetWellboreCompletionsData, GetWellboreCompletionsError, GetWellboreCompletionsResponse, GetWellboreCasingsData, GetWellboreCasingsError, GetWellboreCasingsResponse, GetWellborePerforationsData, GetWellborePerforationsError, GetWellborePerforationsResponse, GetWellboreLogCurveHeadersData, GetWellboreLogCurveHeadersError, GetWellboreLogCurveHeadersResponse, GetLogCurveDataData, GetLogCurveDataError, GetLogCurveDataResponse, GetSeismicCubeMetaListData, GetSeismicCubeMetaListError, GetSeismicCubeMetaListResponse, PostGetSeismicFenceData, PostGetSeismicFenceError, PostGetSeismicFenceResponse, GetPolygonsDirectoryData, GetPolygonsDirectoryError, GetPolygonsDirectoryResponse, GetPolygonsDataData, GetPolygonsDataError, GetPolygonsDataResponse, UserInfoData, UserInfoError, UserInfoResponse, GetObservationsData, GetObservationsError, GetObservationsResponse, GetRftInfoData, GetRftInfoError, GetRftInfoResponse, GetRealizationDataData, GetRealizationDataError, GetRealizationDataResponse, GetVfpTableNamesData, GetVfpTableNamesError, GetVfpTableNamesResponse, GetVfpTableData, GetVfpTableError, GetVfpTableResponse, LoginRouteData, LoginRouteError, LoginRouteResponse, AuthorizedCallbackRouteError, AuthorizedCallbackRouteResponse, AliveError, AliveResponse, AliveProtectedError, AliveProtectedResponse, LoggedInUserData, LoggedInUserError, LoggedInUserResponse, RootError, RootResponse } from './types.gen'; + +export const client = createClient(createConfig()); + +export class ExploreService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Fields + * Get list of fields + */ + public getFields(options?: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/fields' + }); + } + + /** + * Get Cases + * Get list of cases for specified field + */ + public getCases(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/cases' + }); + } + + /** + * Get Ensembles + * Get list of ensembles for a case + */ + public getEnsembles(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/cases/{case_uuid}/ensembles' + }); + } + + /** + * Get Ensemble Details + * Get more detailed information for an ensemble + */ + public getEnsembleDetails(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/cases/{case_uuid}/ensembles/{ensemble_name}' + }); + } + +} + +export class TimeseriesService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Vector List + * Get list of all vectors in a given Sumo ensemble, excluding any historical vectors + */ + public getVectorList(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/timeseries/vector_list/' + }); + } + + /** + * Get Realizations Vector Data + * Get vector data per realization + */ + public getRealizationsVectorData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/timeseries/realizations_vector_data/' + }); + } + + /** + * Get Timestamps List + * Get the intersection of available timestamps. + * Note that when resampling_frequency is None, the pure intersection of the + * stored raw dates will be returned. Thus the returned list of dates will not include + * dates from long running realizations. + * For other resampling frequencies, the date range will be expanded to cover the entire + * time range of all the requested realizations before computing the resampled dates. + */ + public getTimestampsList(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/timeseries/timestamps_list/' + }); + } + + /** + * Get Historical Vector Data + */ + public getHistoricalVectorData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/timeseries/historical_vector_data/' + }); + } + + /** + * Get Statistical Vector Data + * Get statistical vector data for an ensemble + */ + public getStatisticalVectorData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/timeseries/statistical_vector_data/' + }); + } + + /** + * Get Statistical Vector Data Per Sensitivity + * Get statistical vector data for an ensemble per sensitivity + */ + public getStatisticalVectorDataPerSensitivity(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/timeseries/statistical_vector_data_per_sensitivity/' + }); + } + + /** + * Get Realization Vector At Timestamp + */ + public getRealizationVectorAtTimestamp(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/timeseries/realization_vector_at_timestamp/' + }); + } + +} + +export class InplaceVolumetricsService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Table Definitions + * Get the volumetric tables definitions for a given ensemble. + */ + public getTableDefinitions(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/inplace_volumetrics/table_definitions/' + }); + } + + /** + * Post Get Aggregated Per Realization Table Data + * Get aggregated volumetric data for a given table with data per realization based on requested results and categories/index filter. + * + * Note: This endpoint is a post endpoint because the list of identifiers with values can be quite large and may exceed the query string limit. + * As the endpoint is post, the identifiers with values object is kept for convenience. + */ + public postGetAggregatedPerRealizationTableData(options: Options) { + return (options?.client ?? client).post({ + ...options, + url: '/inplace_volumetrics/get_aggregated_per_realization_table_data/' + }); + } + + /** + * Post Get Aggregated Statistical Table Data + * Get statistical volumetric data across selected realizations for a given table based on requested results and categories/index filter. + * + * Note: This endpoint is a post endpoint because the list of identifiers with values can be quite large and may exceed the query string limit. + * As the endpoint is post, the identifiers with values object is kept for convenience. + */ + public postGetAggregatedStatisticalTableData(options: Options) { + return (options?.client ?? client).post({ + ...options, + url: '/inplace_volumetrics/get_aggregated_statistical_table_data/' + }); + } + +} + +export class SurfaceService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Realization Surfaces Metadata + * Get metadata for realization surfaces in a Sumo ensemble + */ + public getRealizationSurfacesMetadata(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/surface/realization_surfaces_metadata/' + }); + } + + /** + * Get Observed Surfaces Metadata + * Get metadata for observed surfaces in a Sumo case + */ + public getObservedSurfacesMetadata(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/surface/observed_surfaces_metadata/' + }); + } + + /** + * Get Surface Data + * Get surface data for the specified surface. + * + * --- + * *General description of the types of surface addresses that exist. The specific address types supported by this endpoint can be a subset of these.* + * + * - *REAL* - Realization surface address. Addresses a specific realization surface within an ensemble. Always specifies a single realization number + * - *OBS* - Observed surface address. Addresses an observed surface which is not associated with any specific ensemble. + * - *STAT* - Statistical surface address. Fully specifies a statistical surface, including the statistic function and which realizations to include. + * - *PARTIAL* - Partial surface address. Similar to a realization surface address, but does not include a specific realization number. + * + * Structure of the different types of address strings: + * + * ``` + * REAL~~~~~~~~~~[~~] + * STAT~~~~~~~~~~~~[~~] + * OBS~~~~~~~~ + * PARTIAL~~~~~~~~[~~] + * ``` + * + * The `` component in a *STAT* address contains the list of realizations to include in the statistics + * encoded as a `UintListStr` or "*" to include all realizations. + */ + public getSurfaceData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/surface/surface_data' + }); + } + + /** + * Post Get Surface Intersection + * Get surface intersection data for requested surface name. + * + * The surface intersection data for surface name contains: An array of z-points, i.e. one z-value/depth per (x, y)-point in polyline, + * and cumulative lengths, the accumulated length at each z-point in the array. + */ + public postGetSurfaceIntersection(options: Options) { + return (options?.client ?? client).post({ + ...options, + url: '/surface/get_surface_intersection' + }); + } + + /** + * Post Sample Surface In Points + */ + public postSampleSurfaceInPoints(options: Options) { + return (options?.client ?? client).post({ + ...options, + url: '/surface/sample_surface_in_points' + }); + } + + /** + * Get Delta Surface Data + */ + public getDeltaSurfaceData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/surface/delta_surface_data' + }); + } + + /** + * Get Misfit Surface Data + */ + public getMisfitSurfaceData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/surface/misfit_surface_data' + }); + } + +} + +export class ParametersService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Parameter Names And Description + * Retrieve parameter names and description for an ensemble + */ + public getParameterNamesAndDescription(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/parameters/parameter_names_and_description/' + }); + } + + /** + * Get Parameter + * Get a parameter in a given Sumo ensemble + */ + public getParameter(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/parameters/parameter/' + }); + } + + /** + * Get Parameters + */ + public getParameters(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/parameters/parameters/' + }); + } + + /** + * Is Sensitivity Run + * Check if a given Sumo ensemble is a sensitivity run + */ + public isSensitivityRun(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/parameters/is_sensitivity_run/' + }); + } + + /** + * Get Sensitivities + * Get sensitivities in a given Sumo ensemble + */ + public getSensitivities(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/parameters/sensitivities/' + }); + } + +} + +export class Grid3DService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Grid Models Info + * Get metadata for all 3D grid models, including bbox, dimensions and properties + */ + public getGridModelsInfo(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/grid3d/grid_models_info/' + }); + } + + /** + * Is Grid Geometry Shared + * Check if a 3D grid geometry is shared across realizations + */ + public isGridGeometryShared(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/grid3d/is_grid_geometry_shared/' + }); + } + + /** + * Grid Surface + * Get a grid + */ + public gridSurface(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/grid3d/grid_surface' + }); + } + + /** + * Grid Parameter + * Get a grid parameter + */ + public gridParameter(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/grid3d/grid_parameter' + }); + } + + /** + * Post Get Polyline Intersection + */ + public postGetPolylineIntersection(options: Options) { + return (options?.client ?? client).post({ + ...options, + url: '/grid3d/get_polyline_intersection' + }); + } + +} + +export class GroupTreeService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Realization Group Tree Data + */ + public getRealizationGroupTreeData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/group_tree/realization_group_tree_data/' + }); + } + +} + +export class PvtService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Table Data + * Get pvt table data for a given Sumo ensemble and realization + */ + public tableData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/pvt/table_data/' + }); + } + + /** + * Realizations Tables Are Equal + * Check if all realizations has the same pvt table + */ + public realizationsTablesAreEqual(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/pvt/realizations_tables_are_equal/' + }); + } + +} + +export class WellCompletionsService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Well Completions Data + */ + public getWellCompletionsData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/well_completions/well_completions_data/' + }); + } + +} + +export class WellService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Drilled Wellbore Headers + * Get wellbore headers for all wells in the field + */ + public getDrilledWellboreHeaders(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/well/drilled_wellbore_headers/' + }); + } + + /** + * Get Field Well Trajectories + * Get well trajectories for field + */ + public getFieldWellTrajectories(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/well/field_well_trajectories/' + }); + } + + /** + * Get Well Trajectories + * Get well trajectories + */ + public getWellTrajectories(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/well/well_trajectories/' + }); + } + + /** + * Get Wellbore Picks And Stratigraphic Units + * Get well bore picks for a single well bore + */ + public getWellborePicksAndStratigraphicUnits(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/well/wellbore_picks_and_stratigraphic_units/' + }); + } + + /** + * Get Wellbore Completions + * Get well bore completions for a single well bore + */ + public getWellboreCompletions(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/well/wellbore_completions/' + }); + } + + /** + * Get Wellbore Casings + * Get well bore casings for a single well bore + */ + public getWellboreCasings(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/well/wellbore_casings/' + }); + } + + /** + * Get Wellbore Perforations + * Get well bore casing for a single well bore + */ + public getWellborePerforations(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/well/wellbore_perforations/' + }); + } + + /** + * Get Wellbore Log Curve Headers + * Get all log curve headers for a single well bore + */ + public getWellboreLogCurveHeaders(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/well/wellbore_log_curve_headers/' + }); + } + + /** + * Get Log Curve Data + * Get log curve data + */ + public getLogCurveData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/well/log_curve_data/' + }); + } + +} + +export class SeismicService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Seismic Cube Meta List + * Get a list of seismic cube meta. + */ + public getSeismicCubeMetaList(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/seismic/seismic_cube_meta_list/' + }); + } + + /** + * Post Get Seismic Fence + * Get a fence of seismic data from a polyline defined by a set of (x, y) coordinates in domain coordinate system. + * + * The fence data contains a set of traces perpendicular to the polyline, with one trace per (x, y)-point in polyline. + * Each trace has equal number of samples, and is a set of sample values along the depth direction of the seismic cube. + * + * Returns: + * A SeismicFenceData object with fence traces in encoded 1D array, metadata for trace array decoding and fence min/max depth. + */ + public postGetSeismicFence(options: Options) { + return (options?.client ?? client).post({ + ...options, + url: '/seismic/get_seismic_fence/' + }); + } + +} + +export class PolygonsService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Polygons Directory + * Get a directory of polygons in a Sumo ensemble + */ + public getPolygonsDirectory(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/polygons/polygons_directory/' + }); + } + + /** + * Get Polygons Data + */ + public getPolygonsData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/polygons/polygons_data/' + }); + } + +} + +export class GraphService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * User Info + * Get username, display name and avatar from Microsoft Graph API for a given user id + */ + public userInfo(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/graph/user_photo/' + }); + } + +} + +export class ObservationsService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Observations + * Retrieve all observations found in sumo case + */ + public getObservations(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/observations/observations/' + }); + } + +} + +export class RftService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Rft Info + */ + public getRftInfo(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/rft/rft_info' + }); + } + + /** + * Get Realization Data + */ + public getRealizationData(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/rft/realization_data' + }); + } + +} + +export class VfpService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Get Vfp Table Names + */ + public getVfpTableNames(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/vfp/vfp_table_names/' + }); + } + + /** + * Get Vfp Table + */ + public getVfpTable(options: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/vfp/vfp_table/' + }); + } + +} + +export class DefaultService { + constructor(public readonly httpRequest: BaseHttpRequest) { } + + /** + * Login Route + */ + public loginRoute(options?: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/login' + }); + } + + /** + * Authorized Callback Route + */ + public authorizedCallbackRoute(options?: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/auth-callback' + }); + } + + /** + * Alive + */ + public alive(options?: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/alive' + }); + } + + /** + * Alive Protected + */ + public aliveProtected(options?: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/alive_protected' + }); + } + + /** + * Logged In User + */ + public loggedInUser(options?: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/logged_in_user' + }); + } + + /** + * Root + */ + public root(options?: Options) { + return (options?.client ?? client).get({ + ...options, + url: '/' + }); + } + +} \ No newline at end of file diff --git a/frontend/src/api/services/DefaultService.ts b/frontend/src/api/services/DefaultService.ts deleted file mode 100644 index a314d8e9f..000000000 --- a/frontend/src/api/services/DefaultService.ts +++ /dev/null @@ -1,94 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { UserInfo } from '../models/UserInfo'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class DefaultService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Login Route - * @param redirectUrlAfterLogin - * @returns any Successful Response - * @throws ApiError - */ - public loginRoute( - redirectUrlAfterLogin?: (string | null), - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/login', - query: { - 'redirect_url_after_login': redirectUrlAfterLogin, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Authorized Callback Route - * @returns any Successful Response - * @throws ApiError - */ - public authorizedCallbackRoute(): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/auth-callback', - }); - } - /** - * Alive - * @returns string Successful Response - * @throws ApiError - */ - public alive(): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/alive', - }); - } - /** - * Alive Protected - * @returns string Successful Response - * @throws ApiError - */ - public aliveProtected(): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/alive_protected', - }); - } - /** - * Logged In User - * @param includeGraphApiInfo Set to true to include user avatar and display name from Microsoft Graph API - * @returns UserInfo Successful Response - * @throws ApiError - */ - public loggedInUser( - includeGraphApiInfo: boolean = false, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/logged_in_user', - query: { - 'includeGraphApiInfo': includeGraphApiInfo, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Root - * @returns string Successful Response - * @throws ApiError - */ - public root(): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/', - }); - } -} diff --git a/frontend/src/api/services/ExploreService.ts b/frontend/src/api/services/ExploreService.ts deleted file mode 100644 index 53e824c6a..000000000 --- a/frontend/src/api/services/ExploreService.ts +++ /dev/null @@ -1,91 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { CaseInfo } from '../models/CaseInfo'; -import type { EnsembleDetails } from '../models/EnsembleDetails'; -import type { EnsembleInfo } from '../models/EnsembleInfo'; -import type { FieldInfo } from '../models/FieldInfo'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class ExploreService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Fields - * Get list of fields - * @returns FieldInfo Successful Response - * @throws ApiError - */ - public getFields(): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/fields', - }); - } - /** - * Get Cases - * Get list of cases for specified field - * @param fieldIdentifier Field identifier - * @returns CaseInfo Successful Response - * @throws ApiError - */ - public getCases( - fieldIdentifier: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/cases', - query: { - 'field_identifier': fieldIdentifier, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Ensembles - * Get list of ensembles for a case - * @param caseUuid Sumo case uuid - * @returns EnsembleInfo Successful Response - * @throws ApiError - */ - public getEnsembles( - caseUuid: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/cases/{case_uuid}/ensembles', - path: { - 'case_uuid': caseUuid, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Ensemble Details - * Get more detailed information for an ensemble - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns EnsembleDetails Successful Response - * @throws ApiError - */ - public getEnsembleDetails( - caseUuid: string, - ensembleName: string, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/cases/{case_uuid}/ensembles/{ensemble_name}', - path: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/GraphService.ts b/frontend/src/api/services/GraphService.ts deleted file mode 100644 index a8cb37e93..000000000 --- a/frontend/src/api/services/GraphService.ts +++ /dev/null @@ -1,31 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { GraphUserPhoto } from '../models/GraphUserPhoto'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class GraphService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * User Info - * Get username, display name and avatar from Microsoft Graph API for a given user id - * @param userId User id - * @returns GraphUserPhoto Successful Response - * @throws ApiError - */ - public userInfo( - userId: string, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/graph/user_photo/', - query: { - 'user_id': userId, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/Grid3DService.ts b/frontend/src/api/services/Grid3DService.ts deleted file mode 100644 index 24075137d..000000000 --- a/frontend/src/api/services/Grid3DService.ts +++ /dev/null @@ -1,209 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { Body_post_get_polyline_intersection } from '../models/Body_post_get_polyline_intersection'; -import type { Grid3dGeometry } from '../models/Grid3dGeometry'; -import type { Grid3dInfo } from '../models/Grid3dInfo'; -import type { Grid3dMappedProperty } from '../models/Grid3dMappedProperty'; -import type { PolylineIntersection } from '../models/PolylineIntersection'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class Grid3DService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Grid Models Info - * Get metadata for all 3D grid models, including bbox, dimensions and properties - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param realizationNum Realization - * @returns Grid3dInfo Successful Response - * @throws ApiError - */ - public getGridModelsInfo( - caseUuid: string, - ensembleName: string, - realizationNum: number, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/grid3d/grid_models_info/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'realization_num': realizationNum, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Is Grid Geometry Shared - * Check if a 3D grid geometry is shared across realizations - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param gridName Grid name - * @returns boolean Successful Response - * @throws ApiError - */ - public isGridGeometryShared( - caseUuid: string, - ensembleName: string, - gridName: string, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/grid3d/is_grid_geometry_shared/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'grid_name': gridName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Grid Surface - * Get a grid - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param gridName Grid name - * @param realizationNum Realization - * @param iMin Min i index - * @param iMax Max i index - * @param jMin Min j index - * @param jMax Max j index - * @param kMin Min k index - * @param kMax Max k index - * @returns Grid3dGeometry Successful Response - * @throws ApiError - */ - public gridSurface( - caseUuid: string, - ensembleName: string, - gridName: string, - realizationNum: number, - iMin?: number, - iMax: number = -1, - jMin?: number, - jMax: number = -1, - kMin?: number, - kMax: number = -1, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/grid3d/grid_surface', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'grid_name': gridName, - 'realization_num': realizationNum, - 'i_min': iMin, - 'i_max': iMax, - 'j_min': jMin, - 'j_max': jMax, - 'k_min': kMin, - 'k_max': kMax, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Grid Parameter - * Get a grid parameter - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param gridName Grid name - * @param parameterName Grid parameter - * @param realizationNum Realization - * @param parameterTimeOrIntervalStr Time point or time interval string - * @param iMin Min i index - * @param iMax Max i index - * @param jMin Min j index - * @param jMax Max j index - * @param kMin Min k index - * @param kMax Max k index - * @returns Grid3dMappedProperty Successful Response - * @throws ApiError - */ - public gridParameter( - caseUuid: string, - ensembleName: string, - gridName: string, - parameterName: string, - realizationNum: number, - parameterTimeOrIntervalStr?: (string | null), - iMin?: number, - iMax: number = -1, - jMin?: number, - jMax: number = -1, - kMin?: number, - kMax: number = -1, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/grid3d/grid_parameter', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'grid_name': gridName, - 'parameter_name': parameterName, - 'realization_num': realizationNum, - 'parameter_time_or_interval_str': parameterTimeOrIntervalStr, - 'i_min': iMin, - 'i_max': iMax, - 'j_min': jMin, - 'j_max': jMax, - 'k_min': kMin, - 'k_max': kMax, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Post Get Polyline Intersection - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param gridName Grid name - * @param parameterName Grid parameter - * @param realizationNum Realization - * @param requestBody - * @param parameterTimeOrIntervalStr Time point or time interval string - * @returns PolylineIntersection Successful Response - * @throws ApiError - */ - public postGetPolylineIntersection( - caseUuid: string, - ensembleName: string, - gridName: string, - parameterName: string, - realizationNum: number, - requestBody: Body_post_get_polyline_intersection, - parameterTimeOrIntervalStr?: (string | null), - ): CancelablePromise { - return this.httpRequest.request({ - method: 'POST', - url: '/grid3d/get_polyline_intersection', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'grid_name': gridName, - 'parameter_name': parameterName, - 'realization_num': realizationNum, - 'parameter_time_or_interval_str': parameterTimeOrIntervalStr, - }, - body: requestBody, - mediaType: 'application/json', - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/GroupTreeService.ts b/frontend/src/api/services/GroupTreeService.ts deleted file mode 100644 index a5f08cc67..000000000 --- a/frontend/src/api/services/GroupTreeService.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { Frequency } from '../models/Frequency'; -import type { GroupTreeData } from '../models/GroupTreeData'; -import type { NodeType } from '../models/NodeType'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class GroupTreeService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Realization Group Tree Data - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param realization Realization - * @param resamplingFrequency Resampling frequency - * @param nodeTypeSet Node types - * @returns GroupTreeData Successful Response - * @throws ApiError - */ - public getRealizationGroupTreeData( - caseUuid: string, - ensembleName: string, - realization: number, - resamplingFrequency: Frequency, - nodeTypeSet: Array, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/group_tree/realization_group_tree_data/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'realization': realization, - 'resampling_frequency': resamplingFrequency, - 'node_type_set': nodeTypeSet, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/InplaceVolumetricsService.ts b/frontend/src/api/services/InplaceVolumetricsService.ts deleted file mode 100644 index bf32c0755..000000000 --- a/frontend/src/api/services/InplaceVolumetricsService.ts +++ /dev/null @@ -1,138 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { Body_post_get_aggregated_per_realization_table_data } from '../models/Body_post_get_aggregated_per_realization_table_data'; -import type { Body_post_get_aggregated_statistical_table_data } from '../models/Body_post_get_aggregated_statistical_table_data'; -import type { FluidZone } from '../models/FluidZone'; -import type { InplaceStatisticalVolumetricTableDataPerFluidSelection } from '../models/InplaceStatisticalVolumetricTableDataPerFluidSelection'; -import type { InplaceVolumetricsIdentifier } from '../models/InplaceVolumetricsIdentifier'; -import type { InplaceVolumetricsTableDefinition } from '../models/InplaceVolumetricsTableDefinition'; -import type { InplaceVolumetricTableDataPerFluidSelection } from '../models/InplaceVolumetricTableDataPerFluidSelection'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class InplaceVolumetricsService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Table Definitions - * Get the volumetric tables definitions for a given ensemble. - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns InplaceVolumetricsTableDefinition Successful Response - * @throws ApiError - */ - public getTableDefinitions( - caseUuid: string, - ensembleName: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/inplace_volumetrics/table_definitions/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Post Get Aggregated Per Realization Table Data - * Get aggregated volumetric data for a given table with data per realization based on requested results and categories/index filter. - * - * Note: This endpoint is a post endpoint because the list of identifiers with values can be quite large and may exceed the query string limit. - * As the endpoint is post, the identifiers with values object is kept for convenience. - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param tableName Table name - * @param resultNames The name of the volumetric results - * @param fluidZones The fluid zones to aggregate by - * @param accumulateFluidZones Whether to accumulate fluid zones - * @param requestBody - * @param groupByIdentifiers The identifiers to group table data by - * @param realizations Optional list of realizations to include. If not specified, all realizations will be returned. - * @returns InplaceVolumetricTableDataPerFluidSelection Successful Response - * @throws ApiError - */ - public postGetAggregatedPerRealizationTableData( - caseUuid: string, - ensembleName: string, - tableName: string, - resultNames: Array, - fluidZones: Array, - accumulateFluidZones: boolean, - requestBody: Body_post_get_aggregated_per_realization_table_data, - groupByIdentifiers?: (Array | null), - realizations?: (Array | null), - ): CancelablePromise { - return this.httpRequest.request({ - method: 'POST', - url: '/inplace_volumetrics/get_aggregated_per_realization_table_data/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'table_name': tableName, - 'result_names': resultNames, - 'fluid_zones': fluidZones, - 'accumulate_fluid_zones': accumulateFluidZones, - 'group_by_identifiers': groupByIdentifiers, - 'realizations': realizations, - }, - body: requestBody, - mediaType: 'application/json', - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Post Get Aggregated Statistical Table Data - * Get statistical volumetric data across selected realizations for a given table based on requested results and categories/index filter. - * - * Note: This endpoint is a post endpoint because the list of identifiers with values can be quite large and may exceed the query string limit. - * As the endpoint is post, the identifiers with values object is kept for convenience. - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param tableName Table name - * @param resultNames The name of the volumetric results - * @param fluidZones The fluid zones to aggregate by - * @param accumulateFluidZones Whether to accumulate fluid zones - * @param requestBody - * @param groupByIdentifiers The identifiers to group table data by - * @param realizations Optional list of realizations to include. If not specified, all realizations will be returned. - * @returns InplaceStatisticalVolumetricTableDataPerFluidSelection Successful Response - * @throws ApiError - */ - public postGetAggregatedStatisticalTableData( - caseUuid: string, - ensembleName: string, - tableName: string, - resultNames: Array, - fluidZones: Array, - accumulateFluidZones: boolean, - requestBody: Body_post_get_aggregated_statistical_table_data, - groupByIdentifiers?: (Array | null), - realizations?: (Array | null), - ): CancelablePromise { - return this.httpRequest.request({ - method: 'POST', - url: '/inplace_volumetrics/get_aggregated_statistical_table_data/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'table_name': tableName, - 'result_names': resultNames, - 'fluid_zones': fluidZones, - 'accumulate_fluid_zones': accumulateFluidZones, - 'group_by_identifiers': groupByIdentifiers, - 'realizations': realizations, - }, - body: requestBody, - mediaType: 'application/json', - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/ObservationsService.ts b/frontend/src/api/services/ObservationsService.ts deleted file mode 100644 index 256270890..000000000 --- a/frontend/src/api/services/ObservationsService.ts +++ /dev/null @@ -1,31 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { Observations } from '../models/Observations'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class ObservationsService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Observations - * Retrieve all observations found in sumo case - * @param caseUuid Sumo case uuid - * @returns Observations Successful Response - * @throws ApiError - */ - public getObservations( - caseUuid: string, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/observations/observations/', - query: { - 'case_uuid': caseUuid, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/ParametersService.ts b/frontend/src/api/services/ParametersService.ts deleted file mode 100644 index ef554d04f..000000000 --- a/frontend/src/api/services/ParametersService.ts +++ /dev/null @@ -1,140 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { EnsembleParameter } from '../models/EnsembleParameter'; -import type { EnsembleParameterDescription } from '../models/EnsembleParameterDescription'; -import type { EnsembleSensitivity } from '../models/EnsembleSensitivity'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class ParametersService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Parameter Names And Description - * Retrieve parameter names and description for an ensemble - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param excludeAllValuesConstant Exclude all parameters where all values are the same value - * @param sortOrder Sort order - * @returns EnsembleParameterDescription Successful Response - * @throws ApiError - */ - public getParameterNamesAndDescription( - caseUuid: string, - ensembleName: string, - excludeAllValuesConstant: boolean = true, - sortOrder: 'alphabetically' | 'standard_deviation' = 'alphabetically', - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/parameters/parameter_names_and_description/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'exclude_all_values_constant': excludeAllValuesConstant, - 'sort_order': sortOrder, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Parameter - * Get a parameter in a given Sumo ensemble - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param parameterName Parameter name - * @returns any Successful Response - * @throws ApiError - */ - public getParameter( - caseUuid: string, - ensembleName: string, - parameterName: string, - ): CancelablePromise<(EnsembleParameter | null)> { - return this.httpRequest.request({ - method: 'GET', - url: '/parameters/parameter/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'parameter_name': parameterName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Parameters - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns EnsembleParameter Successful Response - * @throws ApiError - */ - public getParameters( - caseUuid: string, - ensembleName: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/parameters/parameters/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Is Sensitivity Run - * Check if a given Sumo ensemble is a sensitivity run - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns boolean Successful Response - * @throws ApiError - */ - public isSensitivityRun( - caseUuid: string, - ensembleName: string, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/parameters/is_sensitivity_run/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Sensitivities - * Get sensitivities in a given Sumo ensemble - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns EnsembleSensitivity Successful Response - * @throws ApiError - */ - public getSensitivities( - caseUuid: string, - ensembleName: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/parameters/sensitivities/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/PolygonsService.ts b/frontend/src/api/services/PolygonsService.ts deleted file mode 100644 index 693c1dce4..000000000 --- a/frontend/src/api/services/PolygonsService.ts +++ /dev/null @@ -1,67 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { PolygonData } from '../models/PolygonData'; -import type { PolygonsMeta } from '../models/PolygonsMeta'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class PolygonsService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Polygons Directory - * Get a directory of polygons in a Sumo ensemble - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns PolygonsMeta Successful Response - * @throws ApiError - */ - public getPolygonsDirectory( - caseUuid: string, - ensembleName: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/polygons/polygons_directory/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Polygons Data - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param realizationNum Realization number - * @param name Surface name - * @param attribute Surface attribute - * @returns PolygonData Successful Response - * @throws ApiError - */ - public getPolygonsData( - caseUuid: string, - ensembleName: string, - realizationNum: number, - name: string, - attribute: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/polygons/polygons_data/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'realization_num': realizationNum, - 'name': name, - 'attribute': attribute, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/PvtService.ts b/frontend/src/api/services/PvtService.ts deleted file mode 100644 index aedd410a4..000000000 --- a/frontend/src/api/services/PvtService.ts +++ /dev/null @@ -1,61 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { PvtData } from '../models/PvtData'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class PvtService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Table Data - * Get pvt table data for a given Sumo ensemble and realization - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param realization Realization number - * @returns PvtData Successful Response - * @throws ApiError - */ - public tableData( - caseUuid: string, - ensembleName: string, - realization: number, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/pvt/table_data/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'realization': realization, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Realizations Tables Are Equal - * Check if all realizations has the same pvt table - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns boolean Successful Response - * @throws ApiError - */ - public realizationsTablesAreEqual( - caseUuid: string, - ensembleName: string, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/pvt/realizations_tables_are_equal/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/RftService.ts b/frontend/src/api/services/RftService.ts deleted file mode 100644 index 845ea6c55..000000000 --- a/frontend/src/api/services/RftService.ts +++ /dev/null @@ -1,69 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { RftInfo } from '../models/RftInfo'; -import type { RftRealizationData } from '../models/RftRealizationData'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class RftService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Rft Info - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns RftInfo Successful Response - * @throws ApiError - */ - public getRftInfo( - caseUuid: string, - ensembleName: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/rft/rft_info', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Realization Data - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param wellName Well name - * @param responseName Response name - * @param timestampsUtcMs Timestamps utc ms - * @param realizations Realizations - * @returns RftRealizationData Successful Response - * @throws ApiError - */ - public getRealizationData( - caseUuid: string, - ensembleName: string, - wellName: string, - responseName: string, - timestampsUtcMs?: (Array | null), - realizations?: (Array | null), - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/rft/realization_data', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'well_name': wellName, - 'response_name': responseName, - 'timestamps_utc_ms': timestampsUtcMs, - 'realizations': realizations, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/SeismicService.ts b/frontend/src/api/services/SeismicService.ts deleted file mode 100644 index 53f7ce795..000000000 --- a/frontend/src/api/services/SeismicService.ts +++ /dev/null @@ -1,82 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { Body_post_get_seismic_fence } from '../models/Body_post_get_seismic_fence'; -import type { SeismicCubeMeta } from '../models/SeismicCubeMeta'; -import type { SeismicFenceData } from '../models/SeismicFenceData'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class SeismicService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Seismic Cube Meta List - * Get a list of seismic cube meta. - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns SeismicCubeMeta Successful Response - * @throws ApiError - */ - public getSeismicCubeMetaList( - caseUuid: string, - ensembleName: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/seismic/seismic_cube_meta_list/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Post Get Seismic Fence - * Get a fence of seismic data from a polyline defined by a set of (x, y) coordinates in domain coordinate system. - * - * The fence data contains a set of traces perpendicular to the polyline, with one trace per (x, y)-point in polyline. - * Each trace has equal number of samples, and is a set of sample values along the depth direction of the seismic cube. - * - * Returns: - * A SeismicFenceData object with fence traces in encoded 1D array, metadata for trace array decoding and fence min/max depth. - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param realizationNum Realization number - * @param seismicAttribute Seismic cube attribute - * @param timeOrIntervalStr Timestamp or timestep - * @param observed Observed or simulated - * @param requestBody - * @returns SeismicFenceData Successful Response - * @throws ApiError - */ - public postGetSeismicFence( - caseUuid: string, - ensembleName: string, - realizationNum: number, - seismicAttribute: string, - timeOrIntervalStr: string, - observed: boolean, - requestBody: Body_post_get_seismic_fence, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'POST', - url: '/seismic/get_seismic_fence/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'realization_num': realizationNum, - 'seismic_attribute': seismicAttribute, - 'time_or_interval_str': timeOrIntervalStr, - 'observed': observed, - }, - body: requestBody, - mediaType: 'application/json', - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/SurfaceService.ts b/frontend/src/api/services/SurfaceService.ts deleted file mode 100644 index 5dd76c84f..000000000 --- a/frontend/src/api/services/SurfaceService.ts +++ /dev/null @@ -1,252 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { Body_post_get_surface_intersection } from '../models/Body_post_get_surface_intersection'; -import type { Body_post_sample_surface_in_points } from '../models/Body_post_sample_surface_in_points'; -import type { SurfaceDataFloat } from '../models/SurfaceDataFloat'; -import type { SurfaceDataPng } from '../models/SurfaceDataPng'; -import type { SurfaceIntersectionData } from '../models/SurfaceIntersectionData'; -import type { SurfaceMetaSet } from '../models/SurfaceMetaSet'; -import type { SurfaceRealizationSampleValues } from '../models/SurfaceRealizationSampleValues'; -import type { SurfaceStatisticFunction } from '../models/SurfaceStatisticFunction'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class SurfaceService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Realization Surfaces Metadata - * Get metadata for realization surfaces in a Sumo ensemble - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns SurfaceMetaSet Successful Response - * @throws ApiError - */ - public getRealizationSurfacesMetadata( - caseUuid: string, - ensembleName: string, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/surface/realization_surfaces_metadata/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Observed Surfaces Metadata - * Get metadata for observed surfaces in a Sumo case - * @param caseUuid Sumo case uuid - * @returns SurfaceMetaSet Successful Response - * @throws ApiError - */ - public getObservedSurfacesMetadata( - caseUuid: string, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/surface/observed_surfaces_metadata/', - query: { - 'case_uuid': caseUuid, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Surface Data - * Get surface data for the specified surface. - * - * --- - * *General description of the types of surface addresses that exist. The specific address types supported by this endpoint can be a subset of these.* - * - * - *REAL* - Realization surface address. Addresses a specific realization surface within an ensemble. Always specifies a single realization number - * - *OBS* - Observed surface address. Addresses an observed surface which is not associated with any specific ensemble. - * - *STAT* - Statistical surface address. Fully specifies a statistical surface, including the statistic function and which realizations to include. - * - *PARTIAL* - Partial surface address. Similar to a realization surface address, but does not include a specific realization number. - * - * Structure of the different types of address strings: - * - * ``` - * REAL~~~~~~~~~~[~~] - * STAT~~~~~~~~~~~~[~~] - * OBS~~~~~~~~ - * PARTIAL~~~~~~~~[~~] - * ``` - * - * The `` component in a *STAT* address contains the list of realizations to include in the statistics - * encoded as a `UintListStr` or "*" to include all realizations. - * @param surfAddrStr Surface address string, supported address types are *REAL*, *OBS* and *STAT* - * @param dataFormat Format of binary data in the response - * @param resampleToDefStr Definition of the surface onto which the data should be resampled. *SurfaceDef* object properties encoded as a `KeyValStr` string. - * @returns any Successful Response - * @throws ApiError - */ - public getSurfaceData( - surfAddrStr: string, - dataFormat: 'float' | 'png' = 'float', - resampleToDefStr?: (string | null), - ): CancelablePromise<(SurfaceDataFloat | SurfaceDataPng)> { - return this.httpRequest.request({ - method: 'GET', - url: '/surface/surface_data', - query: { - 'surf_addr_str': surfAddrStr, - 'data_format': dataFormat, - 'resample_to_def_str': resampleToDefStr, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Post Get Surface Intersection - * Get surface intersection data for requested surface name. - * - * The surface intersection data for surface name contains: An array of z-points, i.e. one z-value/depth per (x, y)-point in polyline, - * and cumulative lengths, the accumulated length at each z-point in the array. - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param realizationNum Realization number - * @param name Surface name - * @param attribute Surface attribute - * @param requestBody - * @param timeOrIntervalStr Time point or time interval string - * @returns SurfaceIntersectionData Successful Response - * @throws ApiError - */ - public postGetSurfaceIntersection( - caseUuid: string, - ensembleName: string, - realizationNum: number, - name: string, - attribute: string, - requestBody: Body_post_get_surface_intersection, - timeOrIntervalStr?: (string | null), - ): CancelablePromise { - return this.httpRequest.request({ - method: 'POST', - url: '/surface/get_surface_intersection', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'realization_num': realizationNum, - 'name': name, - 'attribute': attribute, - 'time_or_interval_str': timeOrIntervalStr, - }, - body: requestBody, - mediaType: 'application/json', - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Post Sample Surface In Points - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param surfaceName Surface name - * @param surfaceAttribute Surface attribute - * @param realizationNums Realization numbers - * @param requestBody - * @returns SurfaceRealizationSampleValues Successful Response - * @throws ApiError - */ - public postSampleSurfaceInPoints( - caseUuid: string, - ensembleName: string, - surfaceName: string, - surfaceAttribute: string, - realizationNums: Array, - requestBody: Body_post_sample_surface_in_points, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'POST', - url: '/surface/sample_surface_in_points', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'surface_name': surfaceName, - 'surface_attribute': surfaceAttribute, - 'realization_nums': realizationNums, - }, - body: requestBody, - mediaType: 'application/json', - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Delta Surface Data - * @param surfAAddrStr Address string of surface A, supported types: *REAL*, *OBS* and *STAT* - * @param surfBAddrStr Address string of surface B, supported types: *REAL*, *OBS* and *STAT* - * @param dataFormat Format of binary data in the response - * @param resampleToDefStr Definition of the surface onto which the data should be resampled. *SurfaceDef* object properties encoded as a `KeyValStr` string. - * @returns SurfaceDataFloat Successful Response - * @throws ApiError - */ - public getDeltaSurfaceData( - surfAAddrStr: string, - surfBAddrStr: string, - dataFormat: 'float' | 'png' = 'float', - resampleToDefStr?: (string | null), - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/surface/delta_surface_data', - query: { - 'surf_a_addr_str': surfAAddrStr, - 'surf_b_addr_str': surfBAddrStr, - 'data_format': dataFormat, - 'resample_to_def_str': resampleToDefStr, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Misfit Surface Data - * @param obsSurfAddrStr Address of observed surface, only supported address type is *OBS* - * @param simSurfAddrStr Address of simulated surface, supported type is *PARTIAL* - * @param statisticFunctions Statistics to calculate - * @param realizations Realization numbers - * @param dataFormat Format of binary data in the response - * @param resampleToDefStr Definition of the surface onto which the data should be resampled. *SurfaceDef* object properties encoded as a `KeyValStr` string. - * @returns SurfaceDataFloat Successful Response - * @throws ApiError - */ - public getMisfitSurfaceData( - obsSurfAddrStr: string, - simSurfAddrStr: string, - statisticFunctions: Array, - realizations: Array, - dataFormat: 'float' | 'png' = 'float', - resampleToDefStr?: (string | null), - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/surface/misfit_surface_data', - query: { - 'obs_surf_addr_str': obsSurfAddrStr, - 'sim_surf_addr_str': simSurfAddrStr, - 'statistic_functions': statisticFunctions, - 'realizations': realizations, - 'data_format': dataFormat, - 'resample_to_def_str': resampleToDefStr, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/TimeseriesService.ts b/frontend/src/api/services/TimeseriesService.ts deleted file mode 100644 index b872c2ed4..000000000 --- a/frontend/src/api/services/TimeseriesService.ts +++ /dev/null @@ -1,233 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { EnsembleScalarResponse } from '../models/EnsembleScalarResponse'; -import type { Frequency } from '../models/Frequency'; -import type { StatisticFunction } from '../models/StatisticFunction'; -import type { VectorDescription } from '../models/VectorDescription'; -import type { VectorHistoricalData } from '../models/VectorHistoricalData'; -import type { VectorRealizationData } from '../models/VectorRealizationData'; -import type { VectorStatisticData } from '../models/VectorStatisticData'; -import type { VectorStatisticSensitivityData } from '../models/VectorStatisticSensitivityData'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class TimeseriesService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Vector List - * Get list of all vectors in a given Sumo ensemble, excluding any historical vectors - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @returns VectorDescription Successful Response - * @throws ApiError - */ - public getVectorList( - caseUuid: string, - ensembleName: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/timeseries/vector_list/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Realizations Vector Data - * Get vector data per realization - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param vectorName Name of the vector - * @param resamplingFrequency Resampling frequency. If not specified, raw data without resampling wil be returned. - * @param realizations Optional list of realizations to include. If not specified, all realizations will be returned. - * @returns VectorRealizationData Successful Response - * @throws ApiError - */ - public getRealizationsVectorData( - caseUuid: string, - ensembleName: string, - vectorName: string, - resamplingFrequency?: (Frequency | null), - realizations?: (Array | null), - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/timeseries/realizations_vector_data/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'vector_name': vectorName, - 'resampling_frequency': resamplingFrequency, - 'realizations': realizations, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Timestamps List - * Get the intersection of available timestamps. - * Note that when resampling_frequency is None, the pure intersection of the - * stored raw dates will be returned. Thus the returned list of dates will not include - * dates from long running realizations. - * For other resampling frequencies, the date range will be expanded to cover the entire - * time range of all the requested realizations before computing the resampled dates. - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param resamplingFrequency Resampling frequency - * @returns number Successful Response - * @throws ApiError - */ - public getTimestampsList( - caseUuid: string, - ensembleName: string, - resamplingFrequency?: (Frequency | null), - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/timeseries/timestamps_list/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'resampling_frequency': resamplingFrequency, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Historical Vector Data - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param nonHistoricalVectorName Name of the non-historical vector - * @param resamplingFrequency Resampling frequency - * @returns VectorHistoricalData Successful Response - * @throws ApiError - */ - public getHistoricalVectorData( - caseUuid: string, - ensembleName: string, - nonHistoricalVectorName: string, - resamplingFrequency?: (Frequency | null), - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/timeseries/historical_vector_data/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'non_historical_vector_name': nonHistoricalVectorName, - 'resampling_frequency': resamplingFrequency, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Statistical Vector Data - * Get statistical vector data for an ensemble - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param vectorName Name of the vector - * @param resamplingFrequency Resampling frequency - * @param statisticFunctions Optional list of statistics to calculate. If not specified, all statistics will be calculated. - * @param realizations Optional list of realizations to include. If not specified, all realizations will be included. - * @returns VectorStatisticData Successful Response - * @throws ApiError - */ - public getStatisticalVectorData( - caseUuid: string, - ensembleName: string, - vectorName: string, - resamplingFrequency: Frequency, - statisticFunctions?: (Array | null), - realizations?: (Array | null), - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/timeseries/statistical_vector_data/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'vector_name': vectorName, - 'resampling_frequency': resamplingFrequency, - 'statistic_functions': statisticFunctions, - 'realizations': realizations, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Statistical Vector Data Per Sensitivity - * Get statistical vector data for an ensemble per sensitivity - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param vectorName Name of the vector - * @param resamplingFrequency Resampling frequency - * @param statisticFunctions Optional list of statistics to calculate. If not specified, all statistics will be calculated. - * @returns VectorStatisticSensitivityData Successful Response - * @throws ApiError - */ - public getStatisticalVectorDataPerSensitivity( - caseUuid: string, - ensembleName: string, - vectorName: string, - resamplingFrequency: Frequency, - statisticFunctions?: (Array | null), - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/timeseries/statistical_vector_data_per_sensitivity/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'vector_name': vectorName, - 'resampling_frequency': resamplingFrequency, - 'statistic_functions': statisticFunctions, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Realization Vector At Timestamp - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param vectorName Name of the vector - * @param timestampUtcMs Timestamp in ms UTC to query vectors at - * @returns EnsembleScalarResponse Successful Response - * @throws ApiError - */ - public getRealizationVectorAtTimestamp( - caseUuid: string, - ensembleName: string, - vectorName: string, - timestampUtcMs: number, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/timeseries/realization_vector_at_timestamp/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'vector_name': vectorName, - 'timestamp_utc_ms': timestampUtcMs, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/VfpService.ts b/frontend/src/api/services/VfpService.ts deleted file mode 100644 index 9787ea2df..000000000 --- a/frontend/src/api/services/VfpService.ts +++ /dev/null @@ -1,66 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { VfpInjTable } from '../models/VfpInjTable'; -import type { VfpProdTable } from '../models/VfpProdTable'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class VfpService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Vfp Table Names - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param realization Realization - * @returns string Successful Response - * @throws ApiError - */ - public getVfpTableNames( - caseUuid: string, - ensembleName: string, - realization: number, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/vfp/vfp_table_names/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'realization': realization, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Vfp Table - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param realization Realization - * @param vfpTableName VFP table name - * @returns any Successful Response - * @throws ApiError - */ - public getVfpTable( - caseUuid: string, - ensembleName: string, - realization: number, - vfpTableName: string, - ): CancelablePromise<(VfpProdTable | VfpInjTable)> { - return this.httpRequest.request({ - method: 'GET', - url: '/vfp/vfp_table/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'realization': realization, - 'vfp_table_name': vfpTableName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/WellCompletionsService.ts b/frontend/src/api/services/WellCompletionsService.ts deleted file mode 100644 index a65b4bb12..000000000 --- a/frontend/src/api/services/WellCompletionsService.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { WellCompletionsData } from '../models/WellCompletionsData'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class WellCompletionsService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Well Completions Data - * @param caseUuid Sumo case uuid - * @param ensembleName Ensemble name - * @param realization Optional realizations to include. Provide single realization or list of realizations. If not specified, all realizations will be returned. - * @returns WellCompletionsData Successful Response - * @throws ApiError - */ - public getWellCompletionsData( - caseUuid: string, - ensembleName: string, - realization?: (number | Array | null), - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/well_completions/well_completions_data/', - query: { - 'case_uuid': caseUuid, - 'ensemble_name': ensembleName, - 'realization': realization, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/services/WellService.ts b/frontend/src/api/services/WellService.ts deleted file mode 100644 index d61482d61..000000000 --- a/frontend/src/api/services/WellService.ts +++ /dev/null @@ -1,215 +0,0 @@ -/* generated using openapi-typescript-codegen -- do no edit */ -/* istanbul ignore file */ -/* tslint:disable */ -/* eslint-disable */ -import type { WellboreCasing } from '../models/WellboreCasing'; -import type { WellboreCompletion } from '../models/WellboreCompletion'; -import type { WellboreHeader } from '../models/WellboreHeader'; -import type { WellboreLogCurveData } from '../models/WellboreLogCurveData'; -import type { WellboreLogCurveHeader } from '../models/WellboreLogCurveHeader'; -import type { WellborePerforation } from '../models/WellborePerforation'; -import type { WellborePicksAndStratigraphicUnits } from '../models/WellborePicksAndStratigraphicUnits'; -import type { WellboreTrajectory } from '../models/WellboreTrajectory'; -import type { CancelablePromise } from '../core/CancelablePromise'; -import type { BaseHttpRequest } from '../core/BaseHttpRequest'; -export class WellService { - constructor(public readonly httpRequest: BaseHttpRequest) {} - /** - * Get Drilled Wellbore Headers - * Get wellbore headers for all wells in the field - * @param fieldIdentifier Sumo field identifier - * @returns WellboreHeader Successful Response - * @throws ApiError - */ - public getDrilledWellboreHeaders( - fieldIdentifier: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/well/drilled_wellbore_headers/', - query: { - 'field_identifier': fieldIdentifier, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Field Well Trajectories - * Get well trajectories for field - * @param fieldIdentifier Sumo field identifier - * @param uniqueWellboreIdentifiers Optional subset of well names - * @returns WellboreTrajectory Successful Response - * @throws ApiError - */ - public getFieldWellTrajectories( - fieldIdentifier: string, - uniqueWellboreIdentifiers?: Array, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/well/field_well_trajectories/', - query: { - 'field_identifier': fieldIdentifier, - 'unique_wellbore_identifiers': uniqueWellboreIdentifiers, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Well Trajectories - * Get well trajectories - * @param wellboreUuids Wellbore uuids - * @returns WellboreTrajectory Successful Response - * @throws ApiError - */ - public getWellTrajectories( - wellboreUuids: Array, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/well/well_trajectories/', - query: { - 'wellbore_uuids': wellboreUuids, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Wellbore Picks And Stratigraphic Units - * Get well bore picks for a single well bore - * @param caseUuid Sumo case uuid - * @param wellboreUuid Wellbore uuid - * @returns WellborePicksAndStratigraphicUnits Successful Response - * @throws ApiError - */ - public getWellborePicksAndStratigraphicUnits( - caseUuid: string, - wellboreUuid: string, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/well/wellbore_picks_and_stratigraphic_units/', - query: { - 'case_uuid': caseUuid, - 'wellbore_uuid': wellboreUuid, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Wellbore Completions - * Get well bore completions for a single well bore - * @param wellboreUuid Wellbore uuid - * @returns WellboreCompletion Successful Response - * @throws ApiError - */ - public getWellboreCompletions( - wellboreUuid: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/well/wellbore_completions/', - query: { - 'wellbore_uuid': wellboreUuid, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Wellbore Casings - * Get well bore casings for a single well bore - * @param wellboreUuid Wellbore uuid - * @returns WellboreCasing Successful Response - * @throws ApiError - */ - public getWellboreCasings( - wellboreUuid: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/well/wellbore_casings/', - query: { - 'wellbore_uuid': wellboreUuid, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Wellbore Perforations - * Get well bore casing for a single well bore - * @param wellboreUuid Wellbore uuid - * @returns WellborePerforation Successful Response - * @throws ApiError - */ - public getWellborePerforations( - wellboreUuid: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/well/wellbore_perforations/', - query: { - 'wellbore_uuid': wellboreUuid, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Wellbore Log Curve Headers - * Get all log curve headers for a single well bore - * @param wellboreUuid Wellbore uuid - * @returns WellboreLogCurveHeader Successful Response - * @throws ApiError - */ - public getWellboreLogCurveHeaders( - wellboreUuid: string, - ): CancelablePromise> { - return this.httpRequest.request({ - method: 'GET', - url: '/well/wellbore_log_curve_headers/', - query: { - 'wellbore_uuid': wellboreUuid, - }, - errors: { - 422: `Validation Error`, - }, - }); - } - /** - * Get Log Curve Data - * Get log curve data - * @param wellboreUuid Wellbore uuid - * @param logCurveName Log curve name - * @returns WellboreLogCurveData Successful Response - * @throws ApiError - */ - public getLogCurveData( - wellboreUuid: string, - logCurveName: string, - ): CancelablePromise { - return this.httpRequest.request({ - method: 'GET', - url: '/well/log_curve_data/', - query: { - 'wellbore_uuid': wellboreUuid, - 'log_curve_name': logCurveName, - }, - errors: { - 422: `Validation Error`, - }, - }); - } -} diff --git a/frontend/src/api/types.gen.ts b/frontend/src/api/types.gen.ts new file mode 100644 index 000000000..7551132ec --- /dev/null +++ b/frontend/src/api/types.gen.ts @@ -0,0 +1,2180 @@ +// This file is auto-generated by @hey-api/openapi-ts + +export type ALQ = 'GRAT' | 'IGLR' | 'TGLR' | 'PUMP' | 'COMP' | 'DENO' | 'DENG' | 'BEAN' | "''"; + +export type B64FloatArray = { + element_type: 'float32' | 'float64'; + data_b64str: string; +}; + +export type element_type = 'float32' | 'float64'; + +export type B64UintArray = { + element_type: 'uint8' | 'uint16' | 'uint32' | 'uint64'; + data_b64str: string; +}; + +export type element_type2 = 'uint8' | 'uint16' | 'uint32' | 'uint64'; + +export type Body_post_get_aggregated_per_realization_table_data = { + /** + * Selected identifiers and wanted values + */ + identifiers_with_values: Array; +}; + +export type Body_post_get_aggregated_statistical_table_data = { + /** + * Selected identifiers and wanted values + */ + identifiers_with_values: Array; +}; + +export type Body_post_get_polyline_intersection = { + polyline_utm_xy: Array<(number)>; +}; + +export type Body_post_get_seismic_fence = { + polyline: SeismicFencePolyline; +}; + +export type Body_post_get_surface_intersection = { + cumulative_length_polyline: SurfaceIntersectionCumulativeLengthPolyline; +}; + +export type Body_post_sample_surface_in_points = { + sample_points: PointSetXY; +}; + +export type BoundingBox2d = { + min_x: number; + min_y: number; + max_x: number; + max_y: number; +}; + +/** + * Bounding box for a 3D grid geometry + */ +export type BoundingBox3d = { + xmin: number; + ymin: number; + zmin: number; + xmax: number; + ymax: number; + zmax: number; +}; + +export type CaseInfo = { + uuid: string; + name: string; + status: string; + user: string; +}; + +export type Completions = { + sortedCompletionDateIndices: Array<(number)>; + open: Array<(number)>; + shut: Array<(number)>; + khMean: Array<(number)>; + khMin: Array<(number)>; + khMax: Array<(number)>; +}; + +export type DatedTree = { + dates: Array<(string)>; + tree: TreeNode; +}; + +export type EnsembleDetails = { + name: string; + field_identifier: string; + case_name: string; + case_uuid: string; + realizations: Array<(number)>; +}; + +export type EnsembleInfo = { + name: string; + realization_count: number; +}; + +/** + * Description/data for a single parameter in an ensemble + */ +export type EnsembleParameter = { + name: string; + is_logarithmic: boolean; + is_numerical: boolean; + is_constant: boolean; + group_name: (string | null); + descriptive_name: (string | null); + realizations: Array<(number)>; + values: (Array<(number)> | Array<(string)>); +}; + +export type EnsembleParameterDescription = { + name: string; + group_name: (string | null); + descriptive_name: (string | null); + is_numerical: boolean; +}; + +/** + * A generic type for a scalar response from each of the members of the ensemble. + */ +export type EnsembleScalarResponse = { + realizations: Array<(number)>; + values: Array<(number)>; + name: (string | null); + unit: (string | null); +}; + +/** + * Description/data for a single sensitivity in an ensemble + */ +export type EnsembleSensitivity = { + name: string; + type: SensitivityType; + cases: Array; +}; + +/** + * Description/data for a single sensitivity case in an ensemble + */ +export type EnsembleSensitivityCase = { + name: string; + realizations: Array<(number)>; +}; + +export type FenceMeshSection = { + vertices_uz_b64arr: B64FloatArray; + poly_indices_b64arr: B64UintArray; + vertices_per_poly_b64arr: B64UintArray; + poly_source_cell_indices_b64arr: B64UintArray; + poly_props_b64arr: B64FloatArray; + start_utm_x: number; + start_utm_y: number; + end_utm_x: number; + end_utm_y: number; +}; + +export type FieldInfo = { + field_identifier: string; +}; + +export type FlowRateType = 'OIL' | 'LIQ' | 'GAS' | 'WG' | 'TM' | 'WAT'; + +export type FluidZone = 'Oil' | 'Gas' | 'Water'; + +export type Frequency = 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'QUARTERLY' | 'YEARLY'; + +export type GFR = 'GOR' | 'GLR' | 'OGR' | 'MMW'; + +export type GraphUserPhoto = { + avatar_b64str: (string | null); +}; + +/** + * Specification of a 3D grid dimensions + */ +export type Grid3dDimensions = { + i_count: number; + j_count: number; + k_count: number; + subgrids: Array; +}; + +export type Grid3dGeometry = { + polys_b64arr: B64UintArray; + points_b64arr: B64FloatArray; + poly_source_cell_indices_b64arr: B64UintArray; + origin_utm_x: number; + origin_utm_y: number; + xmin: number; + xmax: number; + ymin: number; + ymax: number; + zmin: number; + zmax: number; +}; + +/** + * Metadata for a 3D grid model, including its properties and geometry + */ +export type Grid3dInfo = { + grid_name: string; + bbox: BoundingBox3d; + dimensions: Grid3dDimensions; + property_info_arr: Array; +}; + +export type Grid3dMappedProperty = { + poly_props_b64arr: B64FloatArray; + min_grid_prop_value: number; + max_grid_prop_value: number; +}; + +/** + * Metadata for a 3D grid property + */ +export type Grid3dPropertyInfo = { + property_name: string; + iso_date_or_interval: (string | null); +}; + +/** + * Named subset of 3D grid layers (Zone) + */ +export type Grid3dZone = { + name: string; + start_layer: number; + end_layer: number; +}; + +export type GridDimensions = { + i_count: number; + j_count: number; + k_count: number; +}; + +export type GroupTreeData = { + edge_metadata_list: Array; + node_metadata_list: Array; + dated_trees: Array; +}; + +export type GroupTreeMetadata = { + key: string; + label: string; +}; + +export type HTTPValidationError = { + detail?: Array; +}; + +/** + * Statistical volumetric data for single volume table + * + * Contains data for a single fluid zone, e.g. Oil, Gas, Water, or sum of fluid zones + */ +export type InplaceStatisticalVolumetricTableData = { + fluidSelectionName: string; + selectorColumns: Array; + resultColumnStatistics: Array; +}; + +/** + * Statistical volumetric data for a single table per fluid selection + * + * Fluid selection can be single fluid zones, e.g. Oil, Gas, Water, or sum of fluid zones - Oil + Gas + Water + */ +export type InplaceStatisticalVolumetricTableDataPerFluidSelection = { + tableDataPerFluidSelection: Array; +}; + +/** + * Allowed volumetric response names + */ +export type InplaceVolumetricResultName = 'BULK' | 'NET' | 'PORO' | 'PORO_NET' | 'PORV' | 'HCPV' | 'STOIIP' | 'GIIP' | 'NTG' | 'ASSOCIATEDGAS' | 'ASSOCIATEDOIL' | 'BO' | 'BG' | 'SW' | 'STOIIP_TOTAL' | 'GIIP_TOTAL'; + +/** + * Definition of possible statistics for a result column in an inplace volumetrics table + */ +export type InplaceVolumetricStatistic = 'mean' | 'stddev' | 'max' | 'min' | 'p10' | 'p90'; + +/** + * Volumetric data for a single table + * + * Contains data for a single fluid zone, e.g. Oil, Gas, Water, or sum of fluid zones + */ +export type InplaceVolumetricTableData = { + fluidSelectionName: string; + selectorColumns: Array; + resultColumns: Array; +}; + +/** + * Volumetric data for a single table per fluid selection + * + * Fluid selection can be single fluid zones, e.g. Oil, Gas, Water, or sum of fluid zones - Oil + Gas + Water + */ +export type InplaceVolumetricTableDataPerFluidSelection = { + tableDataPerFluidSelection: Array; +}; + +export type InplaceVolumetricsIdentifier = 'ZONE' | 'REGION' | 'FACIES' | 'LICENSE'; + +/** + * Unique values for an index column in a volumetric table + * All values should ideally be strings, but it is common to see integers, especially for REGION + */ +export type InplaceVolumetricsIdentifierWithValues = { + identifier: InplaceVolumetricsIdentifier; + values: Array<(string | number)>; +}; + +/** + * Definition of a volumetric table + */ +export type InplaceVolumetricsTableDefinition = { + tableName: string; + fluidZones: Array; + resultNames: Array; + identifiersWithValues: Array; +}; + +export type NodeType = 'prod' | 'inj' | 'other'; + +/** + * A collection of observations associated with a field/case/ensemble + */ +export type Observations = { + summary: Array; + rft: Array; +}; + +export type PointSetXY = { + x_points: Array<(number)>; + y_points: Array<(number)>; +}; + +export type PolygonData = { + x_arr: Array<(number)>; + y_arr: Array<(number)>; + z_arr: Array<(number)>; + poly_id: (number | string); +}; + +/** + * To be revisited later when the metadata is more mature. + */ +export type PolygonsAttributeType = 'depth' | 'time' | 'property' | 'seismic' | 'thickness' | 'isochore' | 'fluid_contact' | 'field_outline' | 'pinchout' | 'subcrop' | 'fault_lines'; + +export type PolygonsMeta = { + name: string; + name_is_stratigraphic_offical: boolean; + stratigraphic_identifier: (string | null); + relative_stratigraphic_level: (number | null); + parent_stratigraphic_identifier: (string | null); + attribute_name: string; + attribute_type: PolygonsAttributeType; +}; + +export type PolylineIntersection = { + fence_mesh_sections: Array; + grid_dimensions: GridDimensions; + min_grid_prop_value: number; + max_grid_prop_value: number; +}; + +export type PvtData = { + name: string; + phase: string; + pvtnum: number; + ratio: Array<(number)>; + pressure: Array<(number)>; + volumefactor: Array<(number)>; + viscosity: Array<(number)>; + density: Array<(number)>; + pressure_unit: string; + volumefactor_unit: string; + viscosity_unit: string; + density_unit: string; + ratio_unit: string; +}; + +/** + * Data for a single column in a volumetric table + * + * Length of index list should be equal to the number of rows in the table + * + * - unique_values: List of unique values in the column + * - indices: List of indices, in unique_values list, for each row in the table + */ +export type RepeatedTableColumnData = { + columnName: string; + uniqueValues: Array<(string | number)>; + indices: Array<(number)>; +}; + +export type RftInfo = { + well_name: string; + timestamps_utc_ms: Array<(number)>; +}; + +/** + * A specific RFT (Repeat Formation Tester) observation. + * + * Attributes: + * value (float): The measured value of the observation. + * comment (Optional[str]): An optional comment associated with the observation. + * error (float): The measurement error associated with the observation. + * zone (str): The zone or region associated with the observation. + * md_msl (float): Measured depth from mean sea level. + * x (float): X utm coordinate of the observation. + * y (float): Y utm coordinate of the observation. + * z (float): Z utm coordinate of the observation. + */ +export type RftObservation = { + value: number; + comment: (string | null); + error: number; + zone: string; + md_msl: number; + x: number; + y: number; + z: number; +}; + +/** + * A collection of RFT (Repeat Formation Tester) observations for a specific well at a specific date. + * + * Attributes: + * well (str): Unique well identifier + * date (str): Observation date + * comment (Optional[str]): An optional comment associated with the collection of observations. + * observations (List[RftObservation]): A list of RFT observations associated with this collection. + */ +export type RftObservations = { + well: string; + date: string; + comment: (string | null); + observations: Array; +}; + +export type RftRealizationData = { + well_name: string; + realization: number; + timestamp_utc_ms: number; + depth_arr: Array<(number)>; + value_arr: Array<(number)>; +}; + +export type SeismicCubeMeta = { + seismic_attribute: string; + iso_date_or_interval: string; + is_observation: boolean; + is_depth: boolean; +}; + +/** + * Definition of a fence of seismic data from a set of (x, y) coordinates in domain coordinate system. + * Each (x, y) point provides a trace perpendicular to the x-y plane, with number of samples equal to the depth of the seismic cube. + * + * Each trace is defined to be a set of depth value samples along the length direction of the fence. + * + * `Properties:` + * - `fence_traces_b64arr`: The fence trace array is base64 encoded 1D float array - where data is stored trace by trace. + * - `num_traces`: The number of traces in the fence trace array. Equals the number of (x, y) coordinates in requested polyline. + * - `num_samples_per_trace`: The number of samples in each trace. + * - `min_fence_depth`: The minimum depth value of the fence. + * - `max_fence_depth`: The maximum depth value of the fence. + * + * `Description - fence_traces_b64arr:` + * + * The encoded fence trace array is a flattened array of traces, where data is stored trace by trace. + * With `m = num_traces`, and `n = num_samples_per_trace`, the flattened array has length `mxn`. + * + * Fence traces 1D array: [trace_1_sample_1, trace_1_sample_2, ..., trace_1_sample_n, ..., trace_m_sample_1, trace_m_sample_2, ..., trace_m_sample_n] + * + * + * See: + * - VdsAxis: https://github.com/equinor/vds-slice/blob/ab6f39789bf3d3b59a8df14f1c4682d340dc0bf3/internal/core/core.go#L37-L55 + */ +export type SeismicFenceData = { + fence_traces_b64arr: B64FloatArray; + num_traces: number; + num_samples_per_trace: number; + min_fence_depth: number; + max_fence_depth: number; +}; + +/** + * (x, y) points defining a polyline in domain coordinate system, to retrieve fence of seismic data. + * + * Expect equal number of x- and y-points. + * + * Note: Coordinates are in domain coordinate system (UTM). + * + * NOTE: + * - Verify coordinates are in domain coordinate system (UTM)? + * - Consider points_xy: List[float] - i.e. array with [x1, y1, x2, y2, ..., xn, yn] instead of x_points and y_points arrays? + * - Ensure equal length of x_points and y_points arrays? + */ +export type SeismicFencePolyline = { + x_points: Array<(number)>; + y_points: Array<(number)>; +}; + +export type SensitivityType = 'montecarlo' | 'scenario'; + +export type StatisticFunction = 'MEAN' | 'MIN' | 'MAX' | 'P10' | 'P90' | 'P50'; + +export type StatisticValueObject = { + statistic_function: StatisticFunction; + values: Array<(number)>; +}; + +/** + * Stratigraphic unit from SMDA + * + * Camel case attributes needed for esvIntersection component in front-end + */ +export type StratigraphicUnit = { + identifier: string; + top: string; + base: string; + stratUnitLevel: number; + stratUnitType: string; + topAge: (number); + baseAge: (number); + stratUnitParent: (string | null); + colorR: number; + colorG: number; + colorB: number; + lithologyType: (number | string); +}; + +/** + * A single observation of a summary vector at a specific date. + */ +export type SummaryVectorDateObservation = { + date: string; + comment: (string | null); + value: number; + error: number; + label: string; +}; + +/** + * A collection of observations of a summary vector. + */ +export type SummaryVectorObservations = { + vector_name: string; + comment: (string | null); + observations: Array; +}; + +/** + * A surface has a single array with values, e.g. depth, time, property, seismic, thickness. + * Only surfaces with depth and time have z-values that can be plotted in 3D. + * The other attributes are scalar values that can be plotted in 2D or used as colormapping for 3D surfaces. + * + * Ideally if the attribute is a scalar, there should be corresponding z-values, but this information is not + * available in the metadata. + * + * To be revisited later when the metadata is more mature. + */ +export type SurfaceAttributeType = 'depth' | 'facies_thickness' | 'fluid_contact' | 'pinchout' | 'property' | 'seismic' | 'subcrop' | 'thickness' | 'time' | 'velocity' | 'volumes' | 'UNKNOWN'; + +export type SurfaceDataFloat = { + format: "float"; + surface_def: SurfaceDef; + transformed_bbox_utm: BoundingBox2d; + value_min: number; + value_max: number; + values_b64arr: B64FloatArray; +}; + +export type SurfaceDataPng = { + format: "png"; + surface_def: SurfaceDef; + transformed_bbox_utm: BoundingBox2d; + value_min: number; + value_max: number; + png_image_base64: string; +}; + +export type SurfaceDef = { + npoints_x: number; + npoints_y: number; + inc_x: number; + inc_y: number; + origin_utm_x: number; + origin_utm_y: number; + rot_deg: number; +}; + +/** + * (x, y) points defining a polyline in domain coordinate system, to retrieve intersection of a surface, with a cumulative length + * between at each (x, y)-point coordinates in domain coordinate system. + * + * Expect equal number of x- and y-points. + * + * x_points: X-coordinates of polyline points. + * y_points: Y-coordinates of polyline points. + * cum_lengths: Cumulative lengths of the polyline segments, i.e. the length of the polyline up to each (x,y) point. + * + * The cumulative lengths can be e.g. measured depth along a well path. + * + * Note: Coordinates are in domain coordinate system (UTM) + * + * Note: Verify if cum_lengths is necessary with respect to xtgeo + */ +export type SurfaceIntersectionCumulativeLengthPolyline = { + x_points: Array<(number)>; + y_points: Array<(number)>; + cum_lengths: Array<(number)>; +}; + +/** + * Definition of a surface intersection made from a set of (x, y) coordinates. + * + * name: Name of the surface + * z_points: Array of z-points (depth values) at the intersection points, i.e. depth value for each (x,y) point. + * cum_lengths: Cumulative length values at the intersection points, i.e. accumulated length between each element in the z points. + */ +export type SurfaceIntersectionData = { + name: string; + z_points: Array<(number)>; + cum_lengths: Array<(number)>; +}; + +export type SurfaceMeta = { + name: string; + name_is_stratigraphic_offical: boolean; + attribute_name: string; + attribute_type: SurfaceAttributeType; + time_type: SurfaceTimeType; + is_observation: boolean; + value_min: (number | null); + value_max: (number | null); +}; + +export type SurfaceMetaSet = { + surfaces: Array; + time_points_iso_str: Array<(string)>; + time_intervals_iso_str: Array<(string)>; + surface_names_in_strat_order: Array<(string)>; +}; + +export type SurfaceRealizationSampleValues = { + realization: number; + sampled_values: Array<(number)>; +}; + +export type SurfaceStatisticFunction = 'MEAN' | 'STD' | 'MIN' | 'MAX' | 'P10' | 'P90' | 'P50'; + +export type SurfaceTimeType = 'NO_TIME' | 'TIME_POINT' | 'INTERVAL'; + +export type THP = "THP"; + +export type TabType = 'BHP' | 'TEMP'; + +/** + * Data for a single column in a volumetric table + * + * Length of column values should be equal to the number of rows in the table + */ +export type TableColumnData = { + columnName: string; + columnValues: Array<(number)>; +}; + +/** + * Statistical data for a single result column in a volumetric table + * + * Length of column values should be equal to the number of rows in the table + */ +export type TableColumnStatisticalData = { + columnName: string; + statisticValues: { + [key: string]: Array<(number)>; + }; +}; + +export type TreeNode = { + node_type: 'Group' | 'Well'; + node_label: string; + edge_label: string; + node_data: { + [key: string]: Array<(number)>; + }; + edge_data: { + [key: string]: Array<(number)>; + }; + children: Array; +}; + +export type node_type = 'Group' | 'Well'; + +export type UnitType = 'METRIC' | 'FIELD' | 'LAB' | 'PVT-M' | 'DEFAULT'; + +export type UserInfo = { + username: string; + display_name: (string | null); + avatar_b64str: (string | null); + has_sumo_access: boolean; + has_smda_access: boolean; +}; + +export type ValidationError = { + loc: Array<(string | number)>; + msg: string; + type: string; +}; + +export type VectorDescription = { + name: string; + descriptive_name: string; + has_historical: boolean; +}; + +export type VectorHistoricalData = { + timestamps_utc_ms: Array<(number)>; + values: Array<(number)>; + unit: string; + is_rate: boolean; +}; + +export type VectorRealizationData = { + realization: number; + timestamps_utc_ms: Array<(number)>; + values: Array<(number)>; + unit: string; + is_rate: boolean; +}; + +export type VectorStatisticData = { + realizations: Array<(number)>; + timestamps_utc_ms: Array<(number)>; + value_objects: Array; + unit: string; + is_rate: boolean; +}; + +export type VectorStatisticSensitivityData = { + realizations: Array<(number)>; + timestamps_utc_ms: Array<(number)>; + value_objects: Array; + unit: string; + is_rate: boolean; + sensitivity_name: string; + sensitivity_case: string; +}; + +export type VfpInjTable = { + isInjTable: boolean; + tableNumber: number; + datum: number; + flowRateType: FlowRateType; + unitType: UnitType; + tabType: TabType; + thpValues: Array<(number)>; + flowRateValues: Array<(number)>; + bhpValues: Array<(number)>; + flowRateUnit: string; + thpUnit: string; + bhpUnit: string; +}; + +export type VfpProdTable = { + isProdTable: boolean; + tableNumber: number; + datum: number; + thpType: THP; + wfrType: WFR; + gfrType: GFR; + alqType: ALQ; + flowRateType: FlowRateType; + unitType: UnitType; + tabType: TabType; + thpValues: Array<(number)>; + wfrValues: Array<(number)>; + gfrValues: Array<(number)>; + alqValues: Array<(number)>; + flowRateValues: Array<(number)>; + bhpValues: Array<(number)>; + flowRateUnit: string; + thpUnit: string; + wfrUnit: string; + gfrUnit: string; + alqUnit: string; + bhpUnit: string; +}; + +export type WFR = 'WOR' | 'WCT' | 'WGR' | 'WWR' | 'WTF'; + +/** + * Type definition for well completions data + */ +export type WellCompletionsData = { + version: string; + units: WellCompletionsUnits; + zones: Array; + sortedCompletionDates: Array<(string)>; + wells: Array; +}; + +export type WellCompletionsUnitInfo = { + unit: string; + decimalPlaces: number; +}; + +export type WellCompletionsUnits = { + kh: WellCompletionsUnitInfo; +}; + +export type WellCompletionsWell = { + name: string; + attributes: { + [key: string]: (string | number | boolean); + }; + completions: { + [key: string]: Completions; + }; +}; + +export type WellCompletionsZone = { + name: string; + subzones: (Array | null); +}; + +export type WellboreCasing = { + itemType: string; + diameterNumeric: number; + diameterInner: number; + description: (string | null); + remark: (string | null); + depthTopMd: number; + depthBottomMd: number; + totalDepthMd: number; + startDepth: number; + endDepth: number; +}; + +export type WellboreCompletion = { + mdTop: number; + mdBottom: number; + tvdTop: (number | null); + tvdBottom: (number | null); + description: (string | null); + symbolName: (string | null); + comment: (string | null); +}; + +export type WellboreHeader = { + wellboreUuid: string; + uniqueWellboreIdentifier: string; + wellUuid: string; + uniqueWellIdentifier: string; + wellEasting: number; + wellNorthing: number; + depthReferencePoint: string; + depthReferenceElevation: number; +}; + +export type WellboreLogCurveData = { + indexMin: number; + indexMax: number; + minCurveValue: number; + maxCurveValue: number; + dataPoints: Array>; + curveAlias: string; + curveDescription: string; + indexUnit: string; + noDataValue: number; +}; + +export type WellboreLogCurveHeader = { + logName: string; + curveName: string; + curveUnit: string; +}; + +export type WellborePerforation = { + mdTop: number; + mdBottom: number; + tvdTop: number; + tvdBottom: number; + status: string; + completionMode: string; +}; + +/** + * Wellbore pick from SMDA + * + * Camel case attributes needed for esvIntersection component in front-end + */ +export type WellborePick = { + northing: number; + easting: number; + tvd: number; + tvdMsl: number; + md: number; + mdMsl: number; + uniqueWellboreIdentifier: string; + pickIdentifier: string; + confidence: (string | null); + depthReferencePoint: string; + mdUnit: string; +}; + +export type WellborePicksAndStratigraphicUnits = { + wellbore_picks: Array; + stratigraphic_units: Array; +}; + +export type WellboreTrajectory = { + wellboreUuid: string; + uniqueWellboreIdentifier: string; + tvdMslArr: Array<(number)>; + mdArr: Array<(number)>; + eastingArr: Array<(number)>; + northingArr: Array<(number)>; +}; + +export type GetFieldsResponse = (Array); + +export type GetFieldsError = unknown; + +export type GetCasesData = { + query: { + /** + * Field identifier + */ + field_identifier: string; + }; +}; + +export type GetCasesResponse = (Array); + +export type GetCasesError = (HTTPValidationError); + +export type GetEnsemblesData = { + path: { + /** + * Sumo case uuid + */ + case_uuid: string; + }; +}; + +export type GetEnsemblesResponse = (Array); + +export type GetEnsemblesError = (HTTPValidationError); + +export type GetEnsembleDetailsData = { + path: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type GetEnsembleDetailsResponse = (EnsembleDetails); + +export type GetEnsembleDetailsError = (HTTPValidationError); + +export type GetVectorListData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type GetVectorListResponse = (Array); + +export type GetVectorListError = (HTTPValidationError); + +export type GetRealizationsVectorDataData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Optional list of realizations to include. If not specified, all realizations will be returned. + */ + realizations?: (Array<(number)> | null); + /** + * Resampling frequency. If not specified, raw data without resampling wil be returned. + */ + resampling_frequency?: (Frequency | null); + /** + * Name of the vector + */ + vector_name: string; + }; +}; + +export type GetRealizationsVectorDataResponse = (Array); + +export type GetRealizationsVectorDataError = (HTTPValidationError); + +export type GetTimestampsListData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Resampling frequency + */ + resampling_frequency?: (Frequency | null); + }; +}; + +export type GetTimestampsListResponse = (Array<(number)>); + +export type GetTimestampsListError = (HTTPValidationError); + +export type GetHistoricalVectorDataData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Name of the non-historical vector + */ + non_historical_vector_name: string; + /** + * Resampling frequency + */ + resampling_frequency?: (Frequency | null); + }; +}; + +export type GetHistoricalVectorDataResponse = (VectorHistoricalData); + +export type GetHistoricalVectorDataError = (HTTPValidationError); + +export type GetStatisticalVectorDataData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Optional list of realizations to include. If not specified, all realizations will be included. + */ + realizations?: (Array<(number)> | null); + /** + * Resampling frequency + */ + resampling_frequency: (Frequency); + /** + * Optional list of statistics to calculate. If not specified, all statistics will be calculated. + */ + statistic_functions?: (Array | null); + /** + * Name of the vector + */ + vector_name: string; + }; +}; + +export type GetStatisticalVectorDataResponse = (VectorStatisticData); + +export type GetStatisticalVectorDataError = (HTTPValidationError); + +export type GetStatisticalVectorDataPerSensitivityData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Resampling frequency + */ + resampling_frequency: (Frequency); + /** + * Optional list of statistics to calculate. If not specified, all statistics will be calculated. + */ + statistic_functions?: (Array | null); + /** + * Name of the vector + */ + vector_name: string; + }; +}; + +export type GetStatisticalVectorDataPerSensitivityResponse = (Array); + +export type GetStatisticalVectorDataPerSensitivityError = (HTTPValidationError); + +export type GetRealizationVectorAtTimestampData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Timestamp in ms UTC to query vectors at + */ + timestamp_utc_ms: number; + /** + * Name of the vector + */ + vector_name: string; + }; +}; + +export type GetRealizationVectorAtTimestampResponse = (EnsembleScalarResponse); + +export type GetRealizationVectorAtTimestampError = (HTTPValidationError); + +export type GetTableDefinitionsData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type GetTableDefinitionsResponse = (Array); + +export type GetTableDefinitionsError = (HTTPValidationError); + +export type PostGetAggregatedPerRealizationTableDataData = { + body: Body_post_get_aggregated_per_realization_table_data; + query: { + /** + * Whether to accumulate fluid zones + */ + accumulate_fluid_zones: boolean; + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * The fluid zones to aggregate by + */ + fluid_zones: Array; + /** + * The identifiers to group table data by + */ + group_by_identifiers?: (Array | null); + /** + * Optional list of realizations to include. If not specified, all realizations will be returned. + */ + realizations?: (Array<(number)> | null); + /** + * The name of the volumetric results + */ + result_names: Array<(string)>; + /** + * Table name + */ + table_name: string; + }; +}; + +export type PostGetAggregatedPerRealizationTableDataResponse = (InplaceVolumetricTableDataPerFluidSelection); + +export type PostGetAggregatedPerRealizationTableDataError = (HTTPValidationError); + +export type PostGetAggregatedStatisticalTableDataData = { + body: Body_post_get_aggregated_statistical_table_data; + query: { + /** + * Whether to accumulate fluid zones + */ + accumulate_fluid_zones: boolean; + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * The fluid zones to aggregate by + */ + fluid_zones: Array; + /** + * The identifiers to group table data by + */ + group_by_identifiers?: (Array | null); + /** + * Optional list of realizations to include. If not specified, all realizations will be returned. + */ + realizations?: (Array<(number)> | null); + /** + * The name of the volumetric results + */ + result_names: Array<(string)>; + /** + * Table name + */ + table_name: string; + }; +}; + +export type PostGetAggregatedStatisticalTableDataResponse = (InplaceStatisticalVolumetricTableDataPerFluidSelection); + +export type PostGetAggregatedStatisticalTableDataError = (HTTPValidationError); + +export type GetRealizationSurfacesMetadataData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type GetRealizationSurfacesMetadataResponse = (SurfaceMetaSet); + +export type GetRealizationSurfacesMetadataError = (HTTPValidationError); + +export type GetObservedSurfacesMetadataData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + }; +}; + +export type GetObservedSurfacesMetadataResponse = (SurfaceMetaSet); + +export type GetObservedSurfacesMetadataError = (HTTPValidationError); + +export type GetSurfaceDataData = { + query: { + /** + * Format of binary data in the response + */ + data_format?: 'float' | 'png'; + /** + * Definition of the surface onto which the data should be resampled. *SurfaceDef* object properties encoded as a `KeyValStr` string. + */ + resample_to_def_str?: (string | null); + /** + * Surface address string, supported address types are *REAL*, *OBS* and *STAT* + */ + surf_addr_str: string; + }; +}; + +export type GetSurfaceDataResponse = ((SurfaceDataFloat | SurfaceDataPng)); + +export type GetSurfaceDataError = (HTTPValidationError); + +export type PostGetSurfaceIntersectionData = { + body: Body_post_get_surface_intersection; + query: { + /** + * Surface attribute + */ + attribute: string; + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Surface name + */ + name: string; + /** + * Realization number + */ + realization_num: number; + /** + * Time point or time interval string + */ + time_or_interval_str?: (string | null); + }; +}; + +export type PostGetSurfaceIntersectionResponse = (SurfaceIntersectionData); + +export type PostGetSurfaceIntersectionError = (HTTPValidationError); + +export type PostSampleSurfaceInPointsData = { + body: Body_post_sample_surface_in_points; + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Realization numbers + */ + realization_nums: Array<(number)>; + /** + * Surface attribute + */ + surface_attribute: string; + /** + * Surface name + */ + surface_name: string; + }; +}; + +export type PostSampleSurfaceInPointsResponse = (Array); + +export type PostSampleSurfaceInPointsError = (HTTPValidationError); + +export type GetDeltaSurfaceDataData = { + query: { + /** + * Format of binary data in the response + */ + data_format?: 'float' | 'png'; + /** + * Definition of the surface onto which the data should be resampled. *SurfaceDef* object properties encoded as a `KeyValStr` string. + */ + resample_to_def_str?: (string | null); + /** + * Address string of surface A, supported types: *REAL*, *OBS* and *STAT* + */ + surf_a_addr_str: string; + /** + * Address string of surface B, supported types: *REAL*, *OBS* and *STAT* + */ + surf_b_addr_str: string; + }; +}; + +export type GetDeltaSurfaceDataResponse = (Array); + +export type GetDeltaSurfaceDataError = (HTTPValidationError); + +export type GetMisfitSurfaceDataData = { + query: { + /** + * Format of binary data in the response + */ + data_format?: 'float' | 'png'; + /** + * Address of observed surface, only supported address type is *OBS* + */ + obs_surf_addr_str: string; + /** + * Realization numbers + */ + realizations: Array<(number)>; + /** + * Definition of the surface onto which the data should be resampled. *SurfaceDef* object properties encoded as a `KeyValStr` string. + */ + resample_to_def_str?: (string | null); + /** + * Address of simulated surface, supported type is *PARTIAL* + */ + sim_surf_addr_str: string; + /** + * Statistics to calculate + */ + statistic_functions: Array; + }; +}; + +export type GetMisfitSurfaceDataResponse = (Array); + +export type GetMisfitSurfaceDataError = (HTTPValidationError); + +export type GetParameterNamesAndDescriptionData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Exclude all parameters where all values are the same value + */ + exclude_all_values_constant?: boolean; + /** + * Sort order + */ + sort_order?: 'alphabetically' | 'standard_deviation'; + }; +}; + +export type GetParameterNamesAndDescriptionResponse = (Array); + +export type GetParameterNamesAndDescriptionError = (HTTPValidationError); + +export type GetParameterData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Parameter name + */ + parameter_name: string; + }; +}; + +export type GetParameterResponse = ((EnsembleParameter | null)); + +export type GetParameterError = (HTTPValidationError); + +export type GetParametersData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type GetParametersResponse = (Array); + +export type GetParametersError = (HTTPValidationError); + +export type IsSensitivityRunData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type IsSensitivityRunResponse = (boolean); + +export type IsSensitivityRunError = (HTTPValidationError); + +export type GetSensitivitiesData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type GetSensitivitiesResponse = (Array); + +export type GetSensitivitiesError = (HTTPValidationError); + +export type GetGridModelsInfoData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Realization + */ + realization_num: number; + }; +}; + +export type GetGridModelsInfoResponse = (Array); + +export type GetGridModelsInfoError = (HTTPValidationError); + +export type IsGridGeometrySharedData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Grid name + */ + grid_name: string; + }; +}; + +export type IsGridGeometrySharedResponse = (boolean); + +export type IsGridGeometrySharedError = (HTTPValidationError); + +export type GridSurfaceData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Grid name + */ + grid_name: string; + /** + * Max i index + */ + i_max?: number; + /** + * Min i index + */ + i_min?: number; + /** + * Max j index + */ + j_max?: number; + /** + * Min j index + */ + j_min?: number; + /** + * Max k index + */ + k_max?: number; + /** + * Min k index + */ + k_min?: number; + /** + * Realization + */ + realization_num: number; + }; +}; + +export type GridSurfaceResponse = (Grid3dGeometry); + +export type GridSurfaceError = (HTTPValidationError); + +export type GridParameterData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Grid name + */ + grid_name: string; + /** + * Max i index + */ + i_max?: number; + /** + * Min i index + */ + i_min?: number; + /** + * Max j index + */ + j_max?: number; + /** + * Min j index + */ + j_min?: number; + /** + * Max k index + */ + k_max?: number; + /** + * Min k index + */ + k_min?: number; + /** + * Grid parameter + */ + parameter_name: string; + /** + * Time point or time interval string + */ + parameter_time_or_interval_str?: (string | null); + /** + * Realization + */ + realization_num: number; + }; +}; + +export type GridParameterResponse = (Grid3dMappedProperty); + +export type GridParameterError = (HTTPValidationError); + +export type PostGetPolylineIntersectionData = { + body: Body_post_get_polyline_intersection; + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Grid name + */ + grid_name: string; + /** + * Grid parameter + */ + parameter_name: string; + /** + * Time point or time interval string + */ + parameter_time_or_interval_str?: (string | null); + /** + * Realization + */ + realization_num: number; + }; +}; + +export type PostGetPolylineIntersectionResponse = (PolylineIntersection); + +export type PostGetPolylineIntersectionError = (HTTPValidationError); + +export type GetRealizationGroupTreeDataData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Node types + */ + node_type_set: Array; + /** + * Realization + */ + realization: number; + /** + * Resampling frequency + */ + resampling_frequency: (Frequency); + }; +}; + +export type GetRealizationGroupTreeDataResponse = (GroupTreeData); + +export type GetRealizationGroupTreeDataError = (HTTPValidationError); + +export type TableDataData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Realization number + */ + realization: number; + }; +}; + +export type TableDataResponse = (Array); + +export type TableDataError = (HTTPValidationError); + +export type RealizationsTablesAreEqualData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type RealizationsTablesAreEqualResponse = (boolean); + +export type RealizationsTablesAreEqualError = (HTTPValidationError); + +export type GetWellCompletionsDataData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Optional realizations to include. Provide single realization or list of realizations. If not specified, all realizations will be returned. + */ + realization?: (number | Array<(number)> | null); + }; +}; + +export type GetWellCompletionsDataResponse = (WellCompletionsData); + +export type GetWellCompletionsDataError = (HTTPValidationError); + +export type GetDrilledWellboreHeadersData = { + query: { + /** + * Sumo field identifier + */ + field_identifier: string; + }; +}; + +export type GetDrilledWellboreHeadersResponse = (Array); + +export type GetDrilledWellboreHeadersError = (HTTPValidationError); + +export type GetFieldWellTrajectoriesData = { + query: { + /** + * Sumo field identifier + */ + field_identifier: string; + /** + * Optional subset of well names + */ + unique_wellbore_identifiers?: Array<(string)>; + }; +}; + +export type GetFieldWellTrajectoriesResponse = (Array); + +export type GetFieldWellTrajectoriesError = (HTTPValidationError); + +export type GetWellTrajectoriesData = { + query: { + /** + * Wellbore uuids + */ + wellbore_uuids: Array<(string)>; + }; +}; + +export type GetWellTrajectoriesResponse = (Array); + +export type GetWellTrajectoriesError = (HTTPValidationError); + +export type GetWellborePicksAndStratigraphicUnitsData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Wellbore uuid + */ + wellbore_uuid: string; + }; +}; + +export type GetWellborePicksAndStratigraphicUnitsResponse = (WellborePicksAndStratigraphicUnits); + +export type GetWellborePicksAndStratigraphicUnitsError = (HTTPValidationError); + +export type GetWellboreCompletionsData = { + query: { + /** + * Wellbore uuid + */ + wellbore_uuid: string; + }; +}; + +export type GetWellboreCompletionsResponse = (Array); + +export type GetWellboreCompletionsError = (HTTPValidationError); + +export type GetWellboreCasingsData = { + query: { + /** + * Wellbore uuid + */ + wellbore_uuid: string; + }; +}; + +export type GetWellboreCasingsResponse = (Array); + +export type GetWellboreCasingsError = (HTTPValidationError); + +export type GetWellborePerforationsData = { + query: { + /** + * Wellbore uuid + */ + wellbore_uuid: string; + }; +}; + +export type GetWellborePerforationsResponse = (Array); + +export type GetWellborePerforationsError = (HTTPValidationError); + +export type GetWellboreLogCurveHeadersData = { + query: { + /** + * Wellbore uuid + */ + wellbore_uuid: string; + }; +}; + +export type GetWellboreLogCurveHeadersResponse = (Array); + +export type GetWellboreLogCurveHeadersError = (HTTPValidationError); + +export type GetLogCurveDataData = { + query: { + /** + * Log curve name + */ + log_curve_name: string; + /** + * Wellbore uuid + */ + wellbore_uuid: string; + }; +}; + +export type GetLogCurveDataResponse = (WellboreLogCurveData); + +export type GetLogCurveDataError = (HTTPValidationError); + +export type GetSeismicCubeMetaListData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type GetSeismicCubeMetaListResponse = (Array); + +export type GetSeismicCubeMetaListError = (HTTPValidationError); + +export type PostGetSeismicFenceData = { + body: Body_post_get_seismic_fence; + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Observed or simulated + */ + observed: boolean; + /** + * Realization number + */ + realization_num: number; + /** + * Seismic cube attribute + */ + seismic_attribute: string; + /** + * Timestamp or timestep + */ + time_or_interval_str: string; + }; +}; + +export type PostGetSeismicFenceResponse = (SeismicFenceData); + +export type PostGetSeismicFenceError = (HTTPValidationError); + +export type GetPolygonsDirectoryData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type GetPolygonsDirectoryResponse = (Array); + +export type GetPolygonsDirectoryError = (HTTPValidationError); + +export type GetPolygonsDataData = { + query: { + /** + * Surface attribute + */ + attribute: string; + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Surface name + */ + name: string; + /** + * Realization number + */ + realization_num: number; + }; +}; + +export type GetPolygonsDataResponse = (Array); + +export type GetPolygonsDataError = (HTTPValidationError); + +export type UserInfoData = { + query: { + /** + * User id + */ + user_id: string; + }; +}; + +export type UserInfoResponse = (GraphUserPhoto); + +export type UserInfoError = (HTTPValidationError); + +export type GetObservationsData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + }; +}; + +export type GetObservationsResponse = (Observations); + +export type GetObservationsError = (HTTPValidationError); + +export type GetRftInfoData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + }; +}; + +export type GetRftInfoResponse = (Array); + +export type GetRftInfoError = (HTTPValidationError); + +export type GetRealizationDataData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Realizations + */ + realizations?: (Array<(number)> | null); + /** + * Response name + */ + response_name: string; + /** + * Timestamps utc ms + */ + timestamps_utc_ms?: (Array<(number)> | null); + /** + * Well name + */ + well_name: string; + }; +}; + +export type GetRealizationDataResponse = (Array); + +export type GetRealizationDataError = (HTTPValidationError); + +export type GetVfpTableNamesData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Realization + */ + realization: number; + }; +}; + +export type GetVfpTableNamesResponse = (Array<(string)>); + +export type GetVfpTableNamesError = (HTTPValidationError); + +export type GetVfpTableData = { + query: { + /** + * Sumo case uuid + */ + case_uuid: string; + /** + * Ensemble name + */ + ensemble_name: string; + /** + * Realization + */ + realization: number; + /** + * VFP table name + */ + vfp_table_name: string; + }; +}; + +export type GetVfpTableResponse = ((VfpProdTable | VfpInjTable)); + +export type GetVfpTableError = (HTTPValidationError); + +export type LoginRouteData = { + query?: { + redirect_url_after_login?: (string | null); + }; +}; + +export type LoginRouteResponse = (unknown); + +export type LoginRouteError = (HTTPValidationError); + +export type AuthorizedCallbackRouteResponse = (unknown); + +export type AuthorizedCallbackRouteError = unknown; + +export type AliveResponse = (string); + +export type AliveError = unknown; + +export type AliveProtectedResponse = (string); + +export type AliveProtectedError = unknown; + +export type LoggedInUserData = { + query?: { + /** + * Set to true to include user avatar and display name from Microsoft Graph API + */ + includeGraphApiInfo?: boolean; + }; +}; + +export type LoggedInUserResponse = (UserInfo); + +export type LoggedInUserError = (HTTPValidationError); + +export type RootResponse = (string); + +export type RootError = unknown; \ No newline at end of file