11<template >
2- <v-text-field
3- v-model =" search"
4- append-icon =" mdi-magnify"
5- label =" Search"
6- single-line
7- hide-details
8- ></v-text-field >
9- <v-data-table
10- v-model =" selected_crs"
11- :v-model:items-per-page =" 10"
12- :headers =" headers"
13- :items =" crs_list"
14- item-value =" code"
15- class =" elevation-1"
16- density =" compact"
17- fixed-header
18- select-strategy =" single"
19- show-select
20- :search =" search"
21- :loading =" data_table_loading"
22- loading-text =" Loading... Please wait"
23- ></v-data-table >
2+ <v-text-field v-model =" search" append-icon =" mdi-magnify" label =" Search" single-line hide-details ></v-text-field >
3+ <v-data-table v-model =" selected_crs" :v-model:items-per-page =" 10" :headers =" headers" :items =" crs_list" item-value =" code"
4+ class =" elevation-1" density =' compact' fixed-header select-strategy =' single' show-select :search =" search"
5+ :loading =" data_table_loading" loading-text =" Loading... Please wait" ></v-data-table >
246</template >
257
268<script setup>
27- import { useToggle } from " @vueuse/core"
9+ import { useToggle } from ' @vueuse/core'
2810
29- const stepper_tree = inject (" stepper_tree" )
30- const { geode_object , route_prefix } = stepper_tree
11+ const stepper_tree = inject (' stepper_tree' )
12+ const { geode_object , route_prefix } = stepper_tree
3113
32- const props = defineProps ({
33- variable_to_update: { type: String , required: true },
34- variable_to_increment: { type: String , required: true },
35- })
14+ const props = defineProps ({
15+ variable_to_update: { type: String , required: true },
16+ variable_to_increment: { type: String , required: true },
17+ })
3618
37- const { variable_to_update , variable_to_increment } = props
19+ const { variable_to_update , variable_to_increment } = props
3820
39- const search = ref (" " )
40- const data_table_loading = ref (false )
41- const crs_list = ref ([])
42- const selected_crs = ref ([])
43- const toggle_loading = useToggle (data_table_loading)
21+ const search = ref (' ' )
22+ const data_table_loading = ref (false )
23+ const crs_list = ref ([])
24+ const selected_crs = ref ([])
25+ const toggle_loading = useToggle (data_table_loading)
4426
45- watch (selected_crs, (new_value ) => {
46- const crs = get_selected_crs (new_value[0 ])
47- set_crs (crs)
48- })
27+ watch (selected_crs, (new_value ) => {
28+ const crs = get_selected_crs (new_value[0 ])
29+ set_crs (crs)
30+ })
4931
50- function set_crs (crs_value ) {
51- stepper_tree[variable_to_update] = crs_value
52- stepper_tree[variable_to_increment]++
53- }
32+ function set_crs (crs_value ) {
33+ stepper_tree[variable_to_update] = crs_value
34+ stepper_tree[variable_to_increment]++
35+ }
5436
55- function get_selected_crs (crs_code ) {
56- for (let i = 0 ; i <= crs_list .value .length ; i++ ) {
57- if (crs_list .value [i][" code" ] == crs_code) {
58- return crs_list .value [i]
59- }
37+ function get_selected_crs (crs_code ) {
38+ for (let i = 0 ; i <= crs_list .value .length ; i++ ) {
39+ if (crs_list .value [i][' code' ] == crs_code) {
40+ return crs_list .value [i]
6041 }
6142 }
43+ }
6244
63- async function get_crs_table () {
64- let params = new FormData ()
65- params .append (" geode_object" , geode_object)
66- toggle_loading ()
67- await api_fetch (
68- ` ${ route_prefix} /geographic_coordinate_systems` ,
69- { method: " POST" , body: params },
70- {
71- request_error_function : () => {
72- toggle_loading ()
73- },
74- response_function : (response ) => {
75- toggle_loading ()
76- crs_list .value = response ._data .crs_list
77- },
78- response_error_function : () => {
79- toggle_loading ()
80- },
81- },
82- )
45+ async function get_crs_table () {
46+ let params = {
47+ ' geode_object' : geode_object
8348 }
84- const headers = [
49+ toggle_loading ()
50+ await api_fetch (CrsSelector_json .id , params,
8551 {
86- title: " Authority" ,
87- align: " start" ,
88- sortable: true ,
89- key: " authority" ,
90- },
91- { title: " Code" , align: " end" , key: " code" },
92- { title: " Name" , align: " end" , key: " name" },
93- ]
52+ ' request_error_function ' : () => { toggle_loading () },
53+ ' response_function ' : (response ) => {
54+ toggle_loading ()
55+ crs_list .value = response ._data .crs_list
56+ },
57+ ' response_error_function ' : () => { toggle_loading () }
58+ }
59+ )
60+ }
61+
62+ const headers = [
63+ {
64+ title: ' Authority' ,
65+ align: ' start' ,
66+ sortable: true ,
67+ key: ' authority' ,
68+
69+ },
70+ { title: ' Code' , align: ' end' , key: ' code' },
71+ { title: ' Name' , align: ' end' , key: ' name' }
72+ ]
73+
74+
75+ onMounted (() => {
76+ get_crs_table ()
77+ })
9478
95- onMounted (() => {
96- get_crs_table ()
97- })
98- </script >
79+ </script >
0 commit comments