From c42ecfb2fdd483ead6af6dc3fbd240b428f073b8 Mon Sep 17 00:00:00 2001 From: Darren Satkunas Date: Thu, 6 May 2021 08:48:29 -0400 Subject: [PATCH 01/72] add router composable --- .../root/src/composables/useRouter.js | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 html/pfappserver/root/src/composables/useRouter.js diff --git a/html/pfappserver/root/src/composables/useRouter.js b/html/pfappserver/root/src/composables/useRouter.js new file mode 100644 index 000000000000..6ded82cf2fa1 --- /dev/null +++ b/html/pfappserver/root/src/composables/useRouter.js @@ -0,0 +1,22 @@ +import { customRef } from '@vue/composition-api' + +export const useRouterQueryParam = (context, _param = 'query') => { + const { root: { $router } = {} } = context + return customRef((track, trigger) => ({ + get() { + track() + const { currentRoute: { query: { [_param]: value } = {} } = {} } = $router + if (value && ![false, null].includes(value)) + return JSON.parse(value) + else + return undefined + }, + set(newValue) { + const { currentRoute } = $router + const value = JSON.stringify(newValue) + $router.replace({ ...currentRoute, query: { [_param]: value } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + .finally(() => trigger()) + } + })) +} \ No newline at end of file From 89f3bd18dc05da77945c24a081390c3d8dd45d8e Mon Sep 17 00:00:00 2001 From: Darren Satkunas Date: Thu, 6 May 2021 08:49:33 -0400 Subject: [PATCH 02/72] abstract basic/advanced search --- .../Configuration/_composables/useSearch.js | 80 +++++++++++++++++-- .../roles/_components/TheList.vue | 66 ++------------- .../roles/_composables/useCollection.js | 22 +++-- .../tenants/_components/TheList.vue | 69 ---------------- .../tenants/_composables/useCollection.js | 23 +++--- 5 files changed, 101 insertions(+), 159 deletions(-) diff --git a/html/pfappserver/root/src/views/Configuration/_composables/useSearch.js b/html/pfappserver/root/src/views/Configuration/_composables/useSearch.js index 017f59a3a2bf..4d3ecda8f57b 100644 --- a/html/pfappserver/root/src/views/Configuration/_composables/useSearch.js +++ b/html/pfappserver/root/src/views/Configuration/_composables/useSearch.js @@ -1,4 +1,5 @@ -import { computed, ref, watch } from '@vue/composition-api' +import { computed, onMounted, ref, watch } from '@vue/composition-api' +import { useRouterQueryParam } from '@/composables/useRouter' import i18n from '@/utils/locale' const useColumns = (columns) => { @@ -29,25 +30,29 @@ export const useString = (searchString, columns) => { export const useCondition = (searchCondition) => { return { op: 'and', - values: searchCondition.map(and => { + values: searchCondition.map(or => { return { op: 'or', - values: and.values + values: or.values } }) } } -export const useSearch = (api, options) => { - +export const useSearch = (props, context, options) => { const config = { // defaults + api: { + list: (new Promise(r => r())), + search: (new Promise(r => r())) + }, columns: [], fields: [], sortBy: 'id', sortDesc: false, limit: 25, limits: [25, 50, 100, 200, 500, 1000], + defaultCondition: () => ([{ values: [] }]), requestInterceptor: (request) => request, responseInterceptor: (response) => response, errorInterceptor: (error) => { throw (error) }, @@ -96,7 +101,7 @@ export const useSearch = (api, options) => { cursor: ((page.value * limit.value) - limit.value) } isLoading.value = true - api.list(params) + config.api.list(params) .then(_response => { const response = config.responseInterceptor(_response) const { items: _items = [], total_count } = response @@ -140,7 +145,7 @@ export const useSearch = (api, options) => { } const body = config.requestInterceptor(_body) isLoading.value = true - api.search(body) + config.api.search(body) .then(_response => { const response = config.responseInterceptor(_response) const { items: _items = [], total_count } = response @@ -187,6 +192,58 @@ export const useSearch = (api, options) => { // when columns are mutated (deep) watch(columns, () => reSearch(), { deep: true }) + // ref(router ?query=...) + const routerQueryParam = useRouterQueryParam(context, 'query') + + const advancedMode = ref(false) + const conditionBasic = ref(null) + const conditionAdvanced = ref(config.defaultCondition()) // default + + onMounted(() => { + if (routerQueryParam.value) { + switch(routerQueryParam.value.constructor) { + case Array: // advanced search + conditionAdvanced.value = routerQueryParam.value + advancedMode.value = true + doSearchCondition(conditionAdvanced.value) + break + case String: // basic search + default: + conditionBasic.value = routerQueryParam.value + advancedMode.value = false + doSearchString(conditionBasic.value) + break + } + } + else + doReset() + }) + + const onSearchBasic = () => { + if (conditionBasic.value) { + doSearchString(conditionBasic.value) + routerQueryParam.value = conditionBasic.value + } + else + doReset() + } + + const onSearchAdvanced = () => { + if (conditionAdvanced.value) { + doSearchCondition(conditionAdvanced.value) + routerQueryParam.value = conditionAdvanced.value + } + else + doReset() + } + + const onSearchReset = () => { + conditionBasic.value = null + conditionAdvanced.value = config.defaultCondition() // dereference + routerQueryParam.value = undefined + doReset() + } + return { columns, visibleColumns, @@ -204,7 +261,14 @@ export const useSearch = (api, options) => { doSearch, reSearch, isLoading, - items + items, + + advancedMode, + conditionBasic, + conditionAdvanced, + onSearchBasic, + onSearchAdvanced, + onSearchReset } } diff --git a/html/pfappserver/root/src/views/Configuration/roles/_components/TheList.vue b/html/pfappserver/root/src/views/Configuration/roles/_components/TheList.vue index a7c2ed600067..3f5d7dd817da 100644 --- a/html/pfappserver/root/src/views/Configuration/roles/_components/TheList.vue +++ b/html/pfappserver/root/src/views/Configuration/roles/_components/TheList.vue @@ -199,86 +199,39 @@ const components = { pfEmptyTable } -import { computed, onMounted, ref } from '@vue/composition-api' +import { computed, ref } from '@vue/composition-api' import { useSearch, useRouter } from '../_composables/useCollection' import { useNodeInheritance } from '../_composables/useNodeInheritance' import { reasons } from '../config' -const defaultCondition = () => ([{ values: [{ field: 'parent_id', op: 'equals', value: null }] }]) - const setup = (props, context) => { const { root: { $router, $store } = {} } = context - const advancedMode = ref(false) - const conditionBasic = ref(null) - const conditionAdvanced = ref(defaultCondition()) // default const search = useSearch(props, context) const { - doReset, - doSearchString, - doSearchCondition, reSearch, items, sortBy, - sortDesc + sortDesc, + onSearchBasic: _onSearchBasic, + onSearchAdvanced: _onSearchAdvanced, + onSearchReset: _onSearchReset } = search - onMounted(() => { - const { currentRoute: { query: { query } = {} } = {} } = $router - if (query) { - const parsedQuery = JSON.parse(query) - switch(parsedQuery.constructor) { - case Array: // advanced search - conditionAdvanced.value = parsedQuery - advancedMode.value = true - doSearchCondition(conditionAdvanced.value) - break - case String: // basic search - default: - conditionBasic.value = parsedQuery - advancedMode.value = false - doSearchString(conditionBasic.value) - break - } - } - else - doReset() - }) - - const _setQueryParam = query => { - const { currentRoute } = $router - $router.replace({ ...currentRoute, query: { query } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) - } - const _clearQueryParam = () => _setQueryParam() - const onSearchBasic = () => { clearExpandedNodes() - if (conditionBasic.value) { - doSearchString(conditionBasic.value) - _setQueryParam(JSON.stringify(conditionBasic.value)) - } - else - doReset() + return _onSearchBasic() } const onSearchAdvanced = () => { clearExpandedNodes() - if (conditionAdvanced.value) { - doSearchCondition(conditionAdvanced.value) - _setQueryParam(JSON.stringify(conditionAdvanced.value)) - } - else - doReset() + return _onSearchAdvanced() } const onSearchReset = () => { - conditionBasic.value = null - conditionAdvanced.value = defaultCondition() // dereference - _clearQueryParam() clearExpandedNodes() - doReset() + return _onSearchReset() } const onRowClicked = item => { @@ -345,10 +298,7 @@ const setup = (props, context) => { } = useNodeInheritance(items, sortBy, sortDesc) return { - advancedMode, - conditionBasic, onSearchBasic, - conditionAdvanced, onSearchAdvanced, onSearchReset, onRowClicked, diff --git a/html/pfappserver/root/src/views/Configuration/roles/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/roles/_composables/useCollection.js index b4632a8477b7..a178645f5373 100644 --- a/html/pfappserver/root/src/views/Configuration/roles/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/roles/_composables/useCollection.js @@ -58,23 +58,21 @@ const useStore = (props, context, form) => { } } -import { - useSearch as useConfigurationSearch -} from '@/views/Configuration/_composables/useSearch' +import { useSearch as useConfigurationSearch } from '@/views/Configuration/_composables/useSearch' import api from '../_api' import { columns, fields } from '../config' -export const useSearch = (props, context, options) => { - return useConfigurationSearch(api, { - name: 'roles', // localStorage prefix - columns, - fields, - sortBy: 'id', - ...options, - }) -} +export const useSearch = (props, context, options) => useConfigurationSearch(props, context, { + id: 'roles', + api, + columns, + fields, + sortBy: 'id', + defaultCondition: () => ([{ values: [{ field: 'parent_id', op: 'equals', value: null }] }]), + ...options, +}) export default { useItemDefaults, diff --git a/html/pfappserver/root/src/views/Configuration/tenants/_components/TheList.vue b/html/pfappserver/root/src/views/Configuration/tenants/_components/TheList.vue index b6c0ee300a25..d247af67dcb2 100644 --- a/html/pfappserver/root/src/views/Configuration/tenants/_components/TheList.vue +++ b/html/pfappserver/root/src/views/Configuration/tenants/_components/TheList.vue @@ -148,80 +148,17 @@ const components = { pfEmptyTable } -import { onMounted, ref } from '@vue/composition-api' import { useSearch, useRouter } from '../_composables/useCollection' -const defaultCondition = () => ([{ values: [{ field: 'name', op: 'contains', value: null }] }]) - const setup = (props, context) => { const { root: { $router, $store } = {} } = context - const advancedMode = ref(false) - const conditionBasic = ref(null) - const conditionAdvanced = ref(defaultCondition()) // default const search = useSearch(props, context) const { - doReset, - doSearchString, - doSearchCondition, reSearch } = search - onMounted(() => { - const { currentRoute: { query: { query } = {} } = {} } = $router - if (query) { - const parsedQuery = JSON.parse(query) - switch(parsedQuery.constructor) { - case Array: // advanced search - conditionAdvanced.value = parsedQuery - advancedMode.value = true - doSearchCondition(conditionAdvanced.value) - break - case String: // basic search - default: - conditionBasic.value = parsedQuery - advancedMode.value = false - doSearchString(conditionBasic.value) - break - } - } - else - doReset() - }) - - const _setQueryParam = query => { - const { currentRoute } = $router - $router.replace({ ...currentRoute, query: { query } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) - } - const _clearQueryParam = () => _setQueryParam() - - const onSearchBasic = () => { - if (conditionBasic.value) { - doSearchString(conditionBasic.value) - _setQueryParam(JSON.stringify(conditionBasic.value)) - } - else - doReset() - } - - const onSearchAdvanced = () => { - if (conditionAdvanced.value) { - doSearchCondition(conditionAdvanced.value) - _setQueryParam(JSON.stringify(conditionAdvanced.value)) - } - else - doReset() - } - - const onSearchReset = () => { - conditionBasic.value = null - conditionAdvanced.value = defaultCondition() // dereference - _clearQueryParam() - doReset() - } - const onRowClicked = item => { const { goToItem @@ -239,12 +176,6 @@ const setup = (props, context) => { } return { - advancedMode, - conditionBasic, - onSearchBasic, - conditionAdvanced, - onSearchAdvanced, - onSearchReset, onRowClicked, onClone, onRemove, diff --git a/html/pfappserver/root/src/views/Configuration/tenants/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/tenants/_composables/useCollection.js index 74f3aab247f3..2c9ab6453f25 100644 --- a/html/pfappserver/root/src/views/Configuration/tenants/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/tenants/_composables/useCollection.js @@ -61,23 +61,22 @@ const useStore = (props, context, form) => { } } -import { - useSearch as useConfigurationSearch -} from '@/views/Configuration/_composables/useSearch' +import { useSearch as useConfigurationSearch } from '@/views/Configuration/_composables/useSearch' import api from '../_api' import { columns, fields } from '../config' -export const useSearch = (props, context, options) => { - return useConfigurationSearch(api, { - name: 'tenants', // localStorage prefix - columns, - fields, - sortBy: 'id', - ...options, - }) -} +export const useSearch = (props, context, options) => useConfigurationSearch(props, context, { + id: 'tenants', + api, + columns, + fields, + sortBy: 'id', + defaultCondition: () => ([{ values: [{ field: 'name', op: 'contains', value: null }] }]), + ...options, +}) + export default { useItemDefaults, From f26fe95f4aa454b3ea3cddb1ac58b7f2c24dddc8 Mon Sep 17 00:00:00 2001 From: Darren Satkunas Date: Mon, 10 May 2021 17:14:59 -0400 Subject: [PATCH 03/72] improve collection and resource exports, move router composables --- .../root/src/composables/useMeta.js | 20 +++ .../_composables/useViewCollectionItem.js | 18 ++- .../_composables/useResource.js | 9 +- .../activeActive/_composables/useResource.js | 9 +- .../_components/TheList.vue} | 0 .../adminRoles/_components/TheView.js | 2 +- .../adminRoles/_composables/useCollection.js | 45 +++--- .../views/Configuration/adminRoles/_router.js | 12 +- .../adminRole.js => adminRoles/config.js} | 0 .../advanced/_composables/useResource.js | 9 +- .../alerting/_composables/useResource.js | 9 +- .../billingTiers/_components/TheView.js | 2 +- .../_composables/useCollection.js | 28 +--- .../Configuration/billingTiers/_router.js | 10 ++ .../captivePortal/_composables/useResource.js | 9 +- .../connectionProfiles/_components/TheView.js | 4 +- .../_composables/useCollection.js | 28 +--- .../connectionProfiles/_router.js | 10 ++ .../advanced/_composables/useResource.js | 9 +- .../general/_composables/useResource.js | 9 +- .../dns/_composables/useResource.js | 9 +- .../domains/_components/TheView.js | 2 +- .../domains/_composables/useCollection.js | 33 +--- .../views/Configuration/domains/_router.js | 15 ++ .../filterEngines/_components/TheView.js | 4 +- .../_composables/useCollection.js | 30 +--- .../Configuration/filterEngines/_router.js | 10 ++ .../combinations/_components/TheView.js | 6 +- .../_composables/useCollection.js | 27 +--- .../fingerbank/combinations/_router.js | 10 ++ .../_composables/useResource.js | 10 +- .../fingerbank/devices/_components/TheView.js | 6 +- .../devices/_composables/useCollection.js | 27 +--- .../fingerbank/devices/_router.js | 15 ++ .../dhcpFingerprints/_components/TheView.js | 6 +- .../_composables/useCollection.js | 27 +--- .../fingerbank/dhcpFingerprints/_router.js | 14 ++ .../dhcpVendors/_components/TheView.js | 6 +- .../dhcpVendors/_composables/useCollection.js | 27 +--- .../fingerbank/dhcpVendors/_router.js | 14 ++ .../dhcpv6Enterprises/_components/TheView.js | 6 +- .../_composables/useCollection.js | 27 +--- .../fingerbank/dhcpv6Enterprises/_router.js | 14 ++ .../dhcpv6Fingerprints/_components/TheView.js | 6 +- .../_composables/useCollection.js | 27 +--- .../fingerbank/dhcpv6Fingerprints/_router.js | 14 ++ .../_composables/useResource.js | 9 +- .../macVendors/_components/TheView.js | 6 +- .../macVendors/_composables/useCollection.js | 27 +--- .../fingerbank/macVendors/_router.js | 14 ++ .../userAgents/_components/TheView.js | 6 +- .../userAgents/_composables/useCollection.js | 27 +--- .../fingerbank/userAgents/_router.js | 14 ++ .../firewalls/_components/TheView.js | 4 +- .../firewalls/_composables/useCollection.js | 35 +---- .../views/Configuration/firewalls/_router.js | 10 ++ .../floatingDevices/_components/TheView.js | 2 +- .../_composables/useCollection.js | 28 +--- .../Configuration/floatingDevices/_router.js | 10 ++ .../general/_composables/useResource.js | 9 +- .../maintenanceTasks/_components/TheView.js | 2 +- .../_composables/useCollection.js | 24 +-- .../Configuration/maintenanceTasks/_router.js | 9 ++ .../_components/TheView.js | 2 +- .../_composables/useCollection.js | 31 +--- .../networkBehaviorPolicy/_router.js | 10 ++ .../fencing/_composables/useResource.js | 9 +- .../inline/_composables/useResource.js | 12 +- .../interfaces/_components/TheView.js | 4 +- .../interfaces/_composables/useCollection.js | 35 +---- .../networks/interfaces/_router.js | 22 +++ .../layer2Networks/_components/TheView.js | 2 +- .../_composables/useCollection.js | 27 +--- .../networks/layer2Networks/_router.js | 9 ++ .../network/_composables/useResource.js | 9 +- .../parking/_composables/useResource.js | 12 +- .../routedNetworks/_components/TheView.js | 2 +- .../_composables/useCollection.js | 28 +--- .../networks/routedNetworks/_router.js | 10 ++ .../_components/TheView.js | 2 +- .../_composables/useCollection.js | 32 +--- .../trafficShapingPolicies/_router.js | 9 ++ .../src/views/Configuration/pki/_router.js | 147 ++---------------- .../pki/cas/_components/TheView.js | 4 +- .../pki/cas/_composables/useCollection.js | 24 +-- .../views/Configuration/pki/cas/_router.js | 62 ++++++++ .../pki/certs/_components/TheView.js | 4 +- .../pki/certs/_composables/useCollection.js | 27 +--- .../views/Configuration/pki/certs/_router.js | 62 ++++++++ .../pki/profiles/_components/TheView.js | 4 +- .../profiles/_composables/useCollection.js | 27 +--- .../Configuration/pki/profiles/_router.js | 62 ++++++++ .../pki/revokedCerts/_components/TheView.js | 4 +- .../_composables/useCollection.js | 19 +-- .../Configuration/pki/revokedCerts/_router.js | 41 +++++ .../pkiProviders/_components/TheView.js | 4 +- .../_composables/useCollection.js | 35 +---- .../Configuration/pkiProviders/_router.js | 10 ++ .../portalModules/_components/TheView.js | 4 +- .../_composables/useCollection.js | 35 +---- .../Configuration/portalModules/_router.js | 10 ++ .../provisioners/_components/TheView.js | 4 +- .../_composables/useCollection.js | 35 +---- .../Configuration/provisioners/_router.js | 10 ++ .../radius/eap/_components/TheView.js | 2 +- .../radius/eap/_composables/useCollection.js | 28 +--- .../views/Configuration/radius/eap/_router.js | 10 ++ .../radius/fast/_components/TheView.js | 2 +- .../radius/fast/_composables/useCollection.js | 28 +--- .../Configuration/radius/fast/_router.js | 10 ++ .../general/_composables/useResource.js | 9 +- .../radius/ocsp/_components/TheView.js | 2 +- .../radius/ocsp/_composables/useCollection.js | 28 +--- .../Configuration/radius/ocsp/_router.js | 10 ++ .../radius/ssl/_components/TheView.js | 2 +- .../radius/ssl/_composables/useCollection.js | 28 +--- .../views/Configuration/radius/ssl/_router.js | 10 ++ .../radius/tls/_components/TheView.js | 2 +- .../radius/tls/_composables/useCollection.js | 28 +--- .../views/Configuration/radius/tls/_router.js | 10 ++ .../realms/_components/TheView.js | 2 +- .../realms/_composables/useCollection.js | 32 +--- .../src/views/Configuration/realms/_router.js | 20 +++ .../roles/_components/TheView.js | 2 +- .../roles/_composables/useCollection.js | 29 +--- .../src/views/Configuration/roles/_router.js | 10 ++ .../scanEngines/_components/TheView.js | 4 +- .../scanEngines/_composables/useCollection.js | 37 +---- .../Configuration/scanEngines/_router.js | 10 ++ .../securityEvents/_components/TheView.js | 2 +- .../_composables/useCollection.js | 28 +--- .../Configuration/securityEvents/_router.js | 10 ++ .../selfServices/_components/TheView.js | 2 +- .../_composables/useCollection.js | 28 +--- .../Configuration/selfServices/_router.js | 10 ++ .../services/_composables/useResource.js | 9 +- .../snmpTraps/_composables/useResource.js | 12 +- .../sources/_components/TheView.js | 4 +- .../sources/_composables/useCollection.js | 35 +---- .../views/Configuration/sources/_router.js | 10 ++ .../sslCertificates/_components/TheForm.vue | 2 +- .../_composables/useCollection.js | 9 +- .../switchGroups/_components/TheView.js | 4 +- .../_composables/useCollection.js | 33 +--- .../Configuration/switchGroups/_router.js | 10 ++ .../switchTemplates/_components/TheView.js | 2 +- .../_composables/useCollection.js | 28 +--- .../Configuration/switchTemplates/_router.js | 10 ++ .../switches/_components/TheView.js | 4 +- .../switches/_composables/useCollection.js | 31 +--- .../views/Configuration/switches/_router.js | 10 ++ .../syslogForwarders/_components/TheView.js | 4 +- .../_composables/useCollection.js | 35 +---- .../Configuration/syslogForwarders/_router.js | 10 ++ .../syslogParsers/_components/TheView.js | 4 +- .../_composables/useCollection.js | 35 +---- .../Configuration/syslogParsers/_router.js | 10 ++ .../tenants/_components/TheView.js | 2 +- .../tenants/_composables/useCollection.js | 30 +--- .../views/Configuration/tenants/_router.js | 10 ++ .../webServices/_composables/useResource.js | 9 +- .../wmiRules/_components/TheView.js | 2 +- .../wmiRules/_composables/useCollection.js | 28 +--- .../views/Configuration/wmiRules/_router.js | 10 ++ .../Configuration/wrix/_components/TheView.js | 2 +- .../wrix/_composables/useCollection.js | 28 +--- .../src/views/Configuration/wrix/_router.js | 10 ++ .../views/Nodes/_components/TheFormCreate.vue | 9 +- .../views/Nodes/_components/TheFormUpdate.vue | 7 +- 169 files changed, 1095 insertions(+), 1569 deletions(-) rename html/pfappserver/root/src/views/Configuration/{_components/AdminRolesList.vue => adminRoles/_components/TheList.vue} (100%) rename html/pfappserver/root/src/views/Configuration/{_config/adminRole.js => adminRoles/config.js} (100%) create mode 100644 html/pfappserver/root/src/views/Configuration/pki/cas/_router.js create mode 100644 html/pfappserver/root/src/views/Configuration/pki/certs/_router.js create mode 100644 html/pfappserver/root/src/views/Configuration/pki/profiles/_router.js create mode 100644 html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_router.js diff --git a/html/pfappserver/root/src/composables/useMeta.js b/html/pfappserver/root/src/composables/useMeta.js index 738b62daf452..5c8f9822f2be 100644 --- a/html/pfappserver/root/src/composables/useMeta.js +++ b/html/pfappserver/root/src/composables/useMeta.js @@ -201,3 +201,23 @@ export const useFormMetaSchema = (meta, schema) => { } }) } + +export const useDefaultsFromMeta = (meta = {}) => { + let defaults = {} + Object.keys(meta).forEach(key => { + if ('properties' in meta[key]) { // handle dot-notation keys ('.') + Object.keys(meta[key].properties).forEach(property => { + if (!(key in defaults)) { + defaults[key] = {} + } + // default w/ object + defaults[key][property] = meta[key].properties[property].default + }) + } else { + defaults[key] = meta[key].default + } + }) + return defaults +} + + diff --git a/html/pfappserver/root/src/views/Configuration/_composables/useViewCollectionItem.js b/html/pfappserver/root/src/views/Configuration/_composables/useViewCollectionItem.js index 12aafb8a5136..dcab0ef24eae 100644 --- a/html/pfappserver/root/src/views/Configuration/_composables/useViewCollectionItem.js +++ b/html/pfappserver/root/src/views/Configuration/_composables/useViewCollectionItem.js @@ -3,6 +3,7 @@ import { useDebouncedWatchHandler } from '@/composables/useDebounce' import useEventActionKey from '@/composables/useEventActionKey' import useEventEscapeKey from '@/composables/useEventEscapeKey' import useEventJail from '@/composables/useEventJail' +import { useDefaultsFromMeta } from '@/composables/useMeta' export const useViewCollectionItemProps = { id: { @@ -22,7 +23,7 @@ export const useViewCollectionItemProps = { export const useViewCollectionItem = (collection, props, context) => { const { - useItemDefaults = () => ({}), // {} + useItemDefaults = useDefaultsFromMeta, // {} useItemTitle = () => {}, useItemTitleBadge = () => {}, useRouter = () => {}, @@ -73,11 +74,12 @@ export const useViewCollectionItem = (collection, props, context) => { return !!updateItem }) + const { root: { $router } = {} } = context const { goToCollection, goToItem, goToClone, - } = useRouter(props, context, form) + } = useRouter($router) const isCloneable = computed(() => !!goToClone) @@ -137,11 +139,11 @@ export const useViewCollectionItem = (collection, props, context) => { return updateItem() } - const onClose = () => goToCollection() + const onClose = () => goToCollection(form.value, props, false) - const onClone = () => goToClone() + const onClone = () => goToClone(form.value, props) - const onRemove = () => deleteItem().then(() => goToCollection()) + const onRemove = () => deleteItem().then(() => goToCollection(form.value, props, false)) const onReset = () => init().then(() => isModified.value = false) @@ -151,16 +153,16 @@ export const useViewCollectionItem = (collection, props, context) => { const closeAfter = actionKey.value save().then(response => { if (closeAfter) // [CTRL] key pressed - goToCollection(true) + goToCollection(form.value, props, true) else { form.value = { ...form.value, ...response } // merge form w/ newly inserted IDs - goToItem(form.value).then(() => init()) // re-init + goToItem(form.value, props).then(() => init()) // re-init } }) } const escapeKey = useEventEscapeKey(rootRef) - watch(escapeKey, () => goToCollection()) + watch(escapeKey, () => goToCollection(form.value, props, false)) watch(props, () => init(), { deep: true, immediate: true }) diff --git a/html/pfappserver/root/src/views/Configuration/accessDurations/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/accessDurations/_composables/useResource.js index 67b6beed4c03..974f3593cb4f 100644 --- a/html/pfappserver/root/src/views/Configuration/accessDurations/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/accessDurations/_composables/useResource.js @@ -5,9 +5,9 @@ import { serializeDuration } from '../config' -const useTitle = () => i18n.t('Access Duration') +export const useTitle = () => i18n.t('Access Duration') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -26,8 +26,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/activeActive/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/activeActive/_composables/useResource.js index b1c038bcc1bc..42bf2071af0e 100644 --- a/html/pfappserver/root/src/views/Configuration/activeActive/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/activeActive/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Active Active') +export const useTitle = () => i18n.t('Active Active') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/_components/AdminRolesList.vue b/html/pfappserver/root/src/views/Configuration/adminRoles/_components/TheList.vue similarity index 100% rename from html/pfappserver/root/src/views/Configuration/_components/AdminRolesList.vue rename to html/pfappserver/root/src/views/Configuration/adminRoles/_components/TheList.vue diff --git a/html/pfappserver/root/src/views/Configuration/adminRoles/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/adminRoles/_components/TheView.js index 83c6098d21fa..e3baafaa9c98 100644 --- a/html/pfappserver/root/src/views/Configuration/adminRoles/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/adminRoles/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/adminRoles/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/adminRoles/_composables/useCollection.js index 584deb5b4adb..fe8215f49895 100644 --- a/html/pfappserver/root/src/views/Configuration/adminRoles/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/adminRoles/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'admin_roles' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'admin_role', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneAdminRole', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -58,9 +43,21 @@ const useStore = (props, context, form) => { } } -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} +import { useSearch as useConfigurationSearch } from '@/views/Configuration/_composables/useSearch' +import api from '../_api' +import { + columns, + fields +} from '../config' +export const useSearch = (props, context, options) => useConfigurationSearch(props, context, { + id: 'adminRoles', + api, + columns, + fields, + sortBy: 'id', + defaultCondition: () => ([{ values: [ + { field: 'id', op: 'contains', value: null }, + { field: 'description', op: 'contains', value: null } + ] }]), + ...options, +}) diff --git a/html/pfappserver/root/src/views/Configuration/adminRoles/_router.js b/html/pfappserver/root/src/views/Configuration/adminRoles/_router.js index 30111a11cc64..c6a012635a91 100644 --- a/html/pfappserver/root/src/views/Configuration/adminRoles/_router.js +++ b/html/pfappserver/root/src/views/Configuration/adminRoles/_router.js @@ -1,7 +1,17 @@ import store from '@/store' import StoreModule from './_store' -const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/AdminRolesList') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'admin_roles' }), + goToItem: params => $router + .push({ name: 'admin_role', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneAdminRole', params }), + } +} + +const TheList = () => import(/* webpackChunkName: "Configuration" */ './_components/TheList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') export const beforeEnter = (to, from, next = () => {}) => { diff --git a/html/pfappserver/root/src/views/Configuration/_config/adminRole.js b/html/pfappserver/root/src/views/Configuration/adminRoles/config.js similarity index 100% rename from html/pfappserver/root/src/views/Configuration/_config/adminRole.js rename to html/pfappserver/root/src/views/Configuration/adminRoles/config.js diff --git a/html/pfappserver/root/src/views/Configuration/advanced/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/advanced/_composables/useResource.js index 1270ce15ecc9..27aa4ca5e93a 100644 --- a/html/pfappserver/root/src/views/Configuration/advanced/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/advanced/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Advanced') +export const useTitle = () => i18n.t('Advanced') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -12,8 +12,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_bases/updateAdvanced', form.value) } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/alerting/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/alerting/_composables/useResource.js index 6a2ec6e8623d..d337b162e176 100644 --- a/html/pfappserver/root/src/views/Configuration/alerting/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/alerting/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Alerting') +export const useTitle = () => i18n.t('Alerting') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/billingTiers/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/billingTiers/_components/TheView.js index 1510aaa64485..b067861f2a36 100644 --- a/html/pfappserver/root/src/views/Configuration/billingTiers/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/billingTiers/_components/TheView.js @@ -23,7 +23,7 @@ const props = { } } -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/billingTiers/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/billingTiers/_composables/useCollection.js index d5f2fb5e1097..29f9705e7073 100644 --- a/html/pfappserver/root/src/views/Configuration/billingTiers/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/billingTiers/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'billing_tiers' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'billing_tier', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneBillingTier', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -57,10 +42,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_billing_tiers/updateBillingTier', form.value) } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/billingTiers/_router.js b/html/pfappserver/root/src/views/Configuration/billingTiers/_router.js index 5e3874350f4c..622c53572246 100644 --- a/html/pfappserver/root/src/views/Configuration/billingTiers/_router.js +++ b/html/pfappserver/root/src/views/Configuration/billingTiers/_router.js @@ -1,6 +1,16 @@ import store from '@/store' import StoreModule from './_store' +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'billing_tiers' }), + goToItem: params => $router + .push({ name: 'billing_tier', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneBillingTier', params }), + } +} + const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/BillingTiersList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') diff --git a/html/pfappserver/root/src/views/Configuration/captivePortal/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/captivePortal/_composables/useResource.js index a8947dd918a0..a56a3ba489a9 100644 --- a/html/pfappserver/root/src/views/Configuration/captivePortal/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/captivePortal/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Captive Portal') +export const useTitle = () => i18n.t('Captive Portal') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/connectionProfiles/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/connectionProfiles/_components/TheView.js index 3d90a6e354d5..612e780e90fb 100644 --- a/html/pfappserver/root/src/views/Configuration/connectionProfiles/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/connectionProfiles/_components/TheView.js @@ -13,11 +13,11 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/connectionProfiles/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/connectionProfiles/_composables/useCollection.js index 417887fe2f83..d5c8943dc2ed 100644 --- a/html/pfappserver/root/src/views/Configuration/connectionProfiles/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/connectionProfiles/_composables/useCollection.js @@ -1,8 +1,5 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' export const useItemProps = { id: { @@ -10,7 +7,7 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -28,21 +25,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'connection_profiles' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'connection_profile', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneConnectionProfile', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -63,10 +48,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_connection_profiles/updateConnectionProfile', form.value) } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/connectionProfiles/_router.js b/html/pfappserver/root/src/views/Configuration/connectionProfiles/_router.js index 00c9af1cf70d..81e6505cb8eb 100644 --- a/html/pfappserver/root/src/views/Configuration/connectionProfiles/_router.js +++ b/html/pfappserver/root/src/views/Configuration/connectionProfiles/_router.js @@ -1,6 +1,16 @@ import store from '@/store' import StoreModule from './_store' +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'connection_profiles' }), + goToItem: params => $router + .push({ name: 'connection_profile', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneConnectionProfile', params }), + } +} + const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/ConnectionProfilesList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') diff --git a/html/pfappserver/root/src/views/Configuration/database/advanced/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/database/advanced/_composables/useResource.js index ff1951cba7b7..d82acbbb3f08 100644 --- a/html/pfappserver/root/src/views/Configuration/database/advanced/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/database/advanced/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Database Advanced') +export const useTitle = () => i18n.t('Database Advanced') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/database/general/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/database/general/_composables/useResource.js index 0e6152f83815..f10dfcca3f3a 100644 --- a/html/pfappserver/root/src/views/Configuration/database/general/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/database/general/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Database General') +export const useTitle = () => i18n.t('Database General') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/dns/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/dns/_composables/useResource.js index 5d6e7ff256e2..84f362d9b64d 100644 --- a/html/pfappserver/root/src/views/Configuration/dns/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/dns/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('DNS Configuration') +export const useTitle = () => i18n.t('DNS Configuration') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/domains/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/domains/_components/TheView.js index bba07bbc7fa2..0c8b751c4b42 100644 --- a/html/pfappserver/root/src/views/Configuration/domains/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/domains/_components/TheView.js @@ -22,7 +22,7 @@ const props = { } } -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/domains/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/domains/_composables/useCollection.js index 3ca99dc0b2da..35a12d7be712 100644 --- a/html/pfappserver/root/src/views/Configuration/domains/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/domains/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,26 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: (autoJoinDomain) => { - if (autoJoinDomain) - $router.push({ name: 'domains', params: { autoJoinDomain: form.value } }) - else - $router.push({ name: 'domains' }) - }, - goToItem: (item = form.value || {}) => $router - .push({ name: 'domain', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneDomain', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -55,10 +35,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_domains/updateDomain', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/domains/_router.js b/html/pfappserver/root/src/views/Configuration/domains/_router.js index 1e37076583fa..e8d041797eda 100644 --- a/html/pfappserver/root/src/views/Configuration/domains/_router.js +++ b/html/pfappserver/root/src/views/Configuration/domains/_router.js @@ -2,6 +2,21 @@ import store from '@/store' import DomainsStoreModule from './_store' import RealmsStoreModule from '../realms/_store' +export const useRouter = $router => { + return { + goToCollection: (params, props, autoJoinDomain) => { + if (autoJoinDomain) + $router.push({ name: 'domains', params: { autoJoinDomain: params } }) + else + $router.push({ name: 'domains' }) + }, + goToItem: params => $router + .push({ name: 'domain', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneDomain', params }), + } +} + export const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../_components/DomainsTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') diff --git a/html/pfappserver/root/src/views/Configuration/filterEngines/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/filterEngines/_components/TheView.js index 8dade56b0746..d006b2277d8d 100644 --- a/html/pfappserver/root/src/views/Configuration/filterEngines/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/filterEngines/_components/TheView.js @@ -10,11 +10,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/filterEngines/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/filterEngines/_composables/useCollection.js index bce15c8c447c..28773484674d 100644 --- a/html/pfappserver/root/src/views/Configuration/filterEngines/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/filterEngines/_composables/useCollection.js @@ -1,6 +1,5 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { defaultsFromMeta as useItemDefaults } from '../../_config/' export const useItemProps = { collection: { @@ -11,7 +10,7 @@ export const useItemProps = { }, } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -29,7 +28,7 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props, context) => { +export const useItemTitleBadge = (props, context) => { const { collection } = toRefs(props) @@ -37,21 +36,9 @@ const useItemTitleBadge = (props, context) => { return computed(() => $store.getters['$_filter_engines/collectionToName'](collection.value)) } -const useRouter = (props, context, form) => { - const { - collection - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'filterEnginesCollection', params: { collection: collection.value } }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'filter_engine', params: { collection: collection.value, id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFilterEngine', params: { collection: collection.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { collection, id, @@ -74,12 +61,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_filter_engines/updateFilterEngine', { collection: collection.value, id: id.value, data: form.value }), } } - -export default { - useItemDefaults, - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/filterEngines/_router.js b/html/pfappserver/root/src/views/Configuration/filterEngines/_router.js index 3fde2a2ff6f3..7f5e294d9383 100644 --- a/html/pfappserver/root/src/views/Configuration/filterEngines/_router.js +++ b/html/pfappserver/root/src/views/Configuration/filterEngines/_router.js @@ -1,6 +1,16 @@ import store from '@/store' import StoreModule from './_store' +export const useRouter = $router => { + return { + goToCollection: params => $router.push({ name: 'filterEnginesCollection', params }), + goToItem: params => $router + .push({ name: 'filter_engine', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneFilterEngine', params }), + } +} + const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/FilterEnginesList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_components/TheView.js index 0a74c1e5d1ac..219827091df9 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_components/TheView.js @@ -11,18 +11,18 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps, useItemTitleBadge } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { const viewCollectionItem = useViewCollectionItem(collection, props, context) - const titleBadge = useItemTitleBadge(props) + const titleBadge = collection.useItemTitleBadge(props) return { ...viewCollectionItem, diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_composables/useCollection.js index accfbb559e31..0c676fb394f5 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_composables/useCollection.js @@ -10,7 +10,7 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -30,22 +30,9 @@ const useItemTitle = (props) => { export const useItemTitleBadge = props => props.scope -const useRouter = (props, context, form) => { - const { - id, - scope - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'fingerbankCombinations' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'fingerbankCombination', params: { id: item.id, scope: scope.value } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFingerbankCombination', params: { id: form.value.id || id.value, scope: 'local' } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -58,11 +45,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_fingerbank/updateCombination', form.value), } } - -export default { - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_router.js b/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_router.js index 16077bf56faf..7838acf2865c 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_router.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/combinations/_router.js @@ -1,6 +1,16 @@ import store from '@/store' import { TheTabs } from '../_components/' +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'fingerbankCombinations' }), + goToItem: params => $router + .push({ name: 'fingerbankCombination', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneFingerbankCombination', params }), + } +} + const TheView = () => import(/* webpackChunkName: "Fingerbank" */ './_components/TheView') export default [ diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/deviceChangeDetection/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/fingerbank/deviceChangeDetection/_composables/useResource.js index 22f513b17e55..ab6354df9fcc 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/deviceChangeDetection/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/deviceChangeDetection/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Fingerbank device change detection') +export const useTitle = () => i18n.t('Fingerbank device change detection') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -12,9 +12,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_bases/updateFingerbankDeviceChange', form.value) } } - -export default { - useTitle, - useStore, -} - diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_components/TheView.js index 0a74c1e5d1ac..219827091df9 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_components/TheView.js @@ -11,18 +11,18 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps, useItemTitleBadge } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { const viewCollectionItem = useViewCollectionItem(collection, props, context) - const titleBadge = useItemTitleBadge(props) + const titleBadge = collection.useItemTitleBadge(props) return { ...viewCollectionItem, diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_composables/useCollection.js index 20713c8f2655..a088a674b689 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_composables/useCollection.js @@ -10,7 +10,7 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -30,22 +30,9 @@ const useItemTitle = (props) => { export const useItemTitleBadge = props => props.scope -const useRouter = (props, context, form) => { - const { - id, - scope - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'fingerbankDevices' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'fingerbankDevice', params: { id: item.id, scope: scope.value } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFingerbankDevice', params: { id: form.value.id || id.value, scope: 'local' } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -58,11 +45,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_fingerbank/updateDevice', form.value), } } - -export default { - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_router.js b/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_router.js index cc371f8083aa..ebc52d5ca807 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_router.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/devices/_router.js @@ -1,4 +1,19 @@ +import { toRefs } from '@vue/composition-api' import store from '@/store' + +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'fingerbankDevices' }), + goToItem: (params, props) => { + const { scope } = toRefs(props) + $router + .push({ name: 'fingerbankDevice', params: { ...params, scope: scope.value } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + }, + goToClone: params => $router.push({ name: 'cloneFingerbankDevice', params: { ...params, scope: 'local' } }) + } +} + import { TheTabs } from '../_components/' const TheView = () => import(/* webpackChunkName: "Fingerbank" */ './_components/TheView') diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_components/TheView.js index 0a74c1e5d1ac..219827091df9 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_components/TheView.js @@ -11,18 +11,18 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps, useItemTitleBadge } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { const viewCollectionItem = useViewCollectionItem(collection, props, context) - const titleBadge = useItemTitleBadge(props) + const titleBadge = collection.useItemTitleBadge(props) return { ...viewCollectionItem, diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_composables/useCollection.js index 9097853eb20c..493eb358d016 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_composables/useCollection.js @@ -10,7 +10,7 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -30,22 +30,9 @@ const useItemTitle = (props) => { export const useItemTitleBadge = props => props.scope -const useRouter = (props, context, form) => { - const { - id, - scope - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'fingerbankDhcpFingerprints' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'fingerbankDhcpFingerprint', params: { id: item.id, scope: scope.value } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFingerbankDhcpFingerprint', params: { id: form.value.id || id.value, scope: 'local' } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -58,11 +45,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_fingerbank/updateDhcpFingerprint', form.value), } } - -export default { - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_router.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_router.js index 50e1ea54c4b8..3c09f97c4d19 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_router.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpFingerprints/_router.js @@ -1,7 +1,21 @@ +import { toRefs } from '@vue/composition-api' import store from '@/store' import { TheTabs } from '../_components/' const TheView = () => import(/* webpackChunkName: "Fingerbank" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'fingerbankDhcpFingerprints' }), + goToItem: (params, props) => { + const { scope } = toRefs(props) + $router + .push({ name: 'fingerbankDhcpFingerprint', params: { ...params, scope: scope.value } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + }, + goToClone: params => $router.push({ name: 'cloneFingerbankDhcpFingerprint', params: { ...params, scope: 'local' } }) + } +} + export default [ { path: 'fingerbank/dhcp_fingerprints', diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_components/TheView.js index 0a74c1e5d1ac..219827091df9 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_components/TheView.js @@ -11,18 +11,18 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps, useItemTitleBadge } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { const viewCollectionItem = useViewCollectionItem(collection, props, context) - const titleBadge = useItemTitleBadge(props) + const titleBadge = collection.useItemTitleBadge(props) return { ...viewCollectionItem, diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_composables/useCollection.js index fb478e4dd11f..30864046475c 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_composables/useCollection.js @@ -10,7 +10,7 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -30,22 +30,9 @@ const useItemTitle = (props) => { export const useItemTitleBadge = props => props.scope -const useRouter = (props, context, form) => { - const { - id, - scope - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'fingerbankDhcpVendors' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'fingerbankDhcpVendor', params: { id: item.id, scope: scope.value } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFingerbankDhcpVendor', params: { id: form.value.id || id.value, scope: 'local' } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -58,11 +45,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_fingerbank/updateDhcpVendor', form.value), } } - -export default { - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_router.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_router.js index 858eaa680abd..bbecb496a0c1 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_router.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpVendors/_router.js @@ -1,7 +1,21 @@ +import { toRefs } from '@vue/composition-api' import store from '@/store' import { TheTabs } from '../_components/' const TheView = () => import(/* webpackChunkName: "Fingerbank" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'fingerbankDhcpVendors' }), + goToItem: (params, props) => { + const { scope } = toRefs(props) + $router + .push({ name: 'fingerbankDhcpVendor', params: { ...params, scope: scope.value } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + }, + goToClone: params => $router.push({ name: 'cloneFingerbankDhcpVendor', params: { ...params, scope: 'local' } }) + } +} + export default [ { path: 'fingerbank/dhcp_vendors', diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_components/TheView.js index 0a74c1e5d1ac..219827091df9 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_components/TheView.js @@ -11,18 +11,18 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps, useItemTitleBadge } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { const viewCollectionItem = useViewCollectionItem(collection, props, context) - const titleBadge = useItemTitleBadge(props) + const titleBadge = collection.useItemTitleBadge(props) return { ...viewCollectionItem, diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_composables/useCollection.js index e96eee5a94a6..c928213671ee 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_composables/useCollection.js @@ -10,7 +10,7 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -30,22 +30,9 @@ const useItemTitle = (props) => { export const useItemTitleBadge = props => props.scope -const useRouter = (props, context, form) => { - const { - id, - scope - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'fingerbankDhcpv6Enterprises' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'fingerbankDhcpv6Enterprise', params: { id: item.id, scope: scope.value } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFingerbankDhcpv6Enterprise', params: { id: form.value.id || id.value, scope: 'local' } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -58,11 +45,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_fingerbank/updateDhcpv6Enterprise', form.value), } } - -export default { - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_router.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_router.js index 8d56ab8ca93e..f980af924105 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_router.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Enterprises/_router.js @@ -1,7 +1,21 @@ +import { toRefs } from '@vue/composition-api' import store from '@/store' import { TheTabs } from '../_components/' const TheView = () => import(/* webpackChunkName: "Fingerbank" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'fingerbankDhcpv6Enterprises' }), + goToItem: (params, props) => { + const { scope } = toRefs(props) + $router + .push({ name: 'fingerbankDhcpv6Enterprise', params: { ...params, scope: scope.value } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + }, + goToClone: params => $router.push({ name: 'cloneFingerbankDhcpv6Enterprise', params: { ...params, scope: 'local' } }) + } +} + export default [ { path: 'fingerbank/dhcpv6_enterprises', diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_components/TheView.js index 0a74c1e5d1ac..219827091df9 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_components/TheView.js @@ -11,18 +11,18 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps, useItemTitleBadge } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { const viewCollectionItem = useViewCollectionItem(collection, props, context) - const titleBadge = useItemTitleBadge(props) + const titleBadge = collection.useItemTitleBadge(props) return { ...viewCollectionItem, diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_composables/useCollection.js index a043ecf82b16..1bf1d7694f46 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_composables/useCollection.js @@ -10,7 +10,7 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -30,22 +30,9 @@ const useItemTitle = (props) => { export const useItemTitleBadge = props => props.scope -const useRouter = (props, context, form) => { - const { - id, - scope - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'fingerbankDhcpv6Fingerprints' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'fingerbankDhcpv6Fingerprint', params: { id: item.id, scope: scope.value } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFingerbankDhcpv6Fingerprint', params: { id: form.value.id || id.value, scope: 'local' } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -58,11 +45,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_fingerbank/updateDhcpv6Fingerprint', form.value), } } - -export default { - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_router.js b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_router.js index a347ed48394f..a4d0b481f4f8 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_router.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/dhcpv6Fingerprints/_router.js @@ -1,7 +1,21 @@ +import { toRefs } from '@vue/composition-api' import store from '@/store' import { TheTabs } from '../_components/' const TheView = () => import(/* webpackChunkName: "Fingerbank" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'fingerbankDhcpv6Fingerprints' }), + goToItem: (params, props) => { + const { scope } = toRefs(props) + $router + .push({ name: 'fingerbankDhcpv6Fingerprint', params: { ...params, scope: scope.value } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + }, + goToClone: params => $router.push({ name: 'cloneFingerbankDhcpv6Fingerprint', params: { ...params, scope: 'local' } }), + } +} + export default [ { path: 'fingerbank/dhcpv6_fingerprints', diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/generalSettings/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/fingerbank/generalSettings/_composables/useResource.js index 3cec17f0a67e..c02da3d30166 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/generalSettings/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/generalSettings/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('General Settings') +export const useTitle = () => i18n.t('General Settings') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_fingerbank/isGeneralSettingsLoading']), @@ -12,8 +12,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_fingerbank/setGeneralSettings', form.value) } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_components/TheView.js index 0a74c1e5d1ac..219827091df9 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_components/TheView.js @@ -11,18 +11,18 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps, useItemTitleBadge } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { const viewCollectionItem = useViewCollectionItem(collection, props, context) - const titleBadge = useItemTitleBadge(props) + const titleBadge = collection.useItemTitleBadge(props) return { ...viewCollectionItem, diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_composables/useCollection.js index efe10ba47835..99157ea2fb32 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_composables/useCollection.js @@ -10,7 +10,7 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -30,22 +30,9 @@ const useItemTitle = (props) => { export const useItemTitleBadge = props => props.scope -const useRouter = (props, context, form) => { - const { - id, - scope - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'fingerbankMacVendors' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'fingerbankMacVendor', params: { id: item.id, scope: scope.value } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFingerbankMacVendor', params: { id: form.value.id || id.value, scope: 'local' } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -58,11 +45,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_fingerbank/updateMacVendor', form.value), } } - -export default { - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_router.js b/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_router.js index 453359a60f35..f23d2a7094e7 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_router.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/macVendors/_router.js @@ -1,7 +1,21 @@ +import { toRefs } from '@vue/composition-api' import store from '@/store' import { TheTabs } from '../_components/' const TheView = () => import(/* webpackChunkName: "Fingerbank" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'fingerbankMacVendors' }), + goToItem: (params, props) => { + const { scope } = toRefs(props) + $router + .push({ name: 'fingerbankMacVendor', params: { ...params, scope: scope.value } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + }, + goToClone: params => $router.push({ name: 'cloneFingerbankMacVendor', params: { ...params, scope: 'local' } }) + } +} + export default [ { path: 'fingerbank/mac_vendors', diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_components/TheView.js index 0a74c1e5d1ac..219827091df9 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_components/TheView.js @@ -11,18 +11,18 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps, useItemTitleBadge } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { const viewCollectionItem = useViewCollectionItem(collection, props, context) - const titleBadge = useItemTitleBadge(props) + const titleBadge = collection.useItemTitleBadge(props) return { ...viewCollectionItem, diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_composables/useCollection.js index 7bfc2a51e4f5..b1c36517b8ae 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_composables/useCollection.js @@ -10,7 +10,7 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -30,22 +30,9 @@ const useItemTitle = (props) => { export const useItemTitleBadge = props => props.scope -const useRouter = (props, context, form) => { - const { - id, - scope - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'fingerbankUserAgents' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'fingerbankUserAgent', params: { id: item.id, scope: scope.value } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFingerbankUserAgent', params: { id: form.value.id || id.value, scope: 'local' } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -58,11 +45,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_fingerbank/updateUserAgent', form.value), } } - -export default { - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_router.js b/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_router.js index 933ceae347ed..a6cf71d07b0c 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_router.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/userAgents/_router.js @@ -1,7 +1,21 @@ +import { toRefs } from '@vue/composition-api' import store from '@/store' import { TheTabs } from '../_components/' const TheView = () => import(/* webpackChunkName: "Fingerbank" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'fingerbankUserAgents' }), + goToItem: (params, props) => { + const { scope } = toRefs(props) + $router + .push({ name: 'fingerbankUserAgent', params: { ...params, scope: scope.value } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + }, + goToClone: params => $router.push({ name: 'cloneFingerbankUserAgent', params: { ...params, scope: 'local' } }) + } +} + export default [ { path: 'fingerbank/user_agents', diff --git a/html/pfappserver/root/src/views/Configuration/firewalls/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/firewalls/_components/TheView.js index 81beaa05eb08..e35e28224e69 100644 --- a/html/pfappserver/root/src/views/Configuration/firewalls/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/firewalls/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/firewalls/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/firewalls/_composables/useCollection.js index b2d078284483..189f87ad8a51 100644 --- a/html/pfappserver/root/src/views/Configuration/firewalls/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/firewalls/_composables/useCollection.js @@ -1,6 +1,5 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { defaultsFromMeta } from '../../_config/' export const useItemProps = { id: { @@ -11,14 +10,15 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { firewallType } = toRefs(props) - return { ...defaultsFromMeta(meta), type: firewallType.value } + return { ...useDefaultsFromMeta(meta), type: firewallType.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -36,28 +36,16 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props, context, form) => { +export const useItemTitleBadge = (props, context, form) => { const { firewallType } = toRefs(props) return computed(() => (firewallType.value || form.value.type)) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'firewalls' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'firewall', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFirewall', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone, @@ -85,12 +73,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_firewalls/updateFirewall', form.value), } } - -export default { - useItemDefaults, - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/firewalls/_router.js b/html/pfappserver/root/src/views/Configuration/firewalls/_router.js index af6ff14e0619..61f3d3a21e1f 100644 --- a/html/pfappserver/root/src/views/Configuration/firewalls/_router.js +++ b/html/pfappserver/root/src/views/Configuration/firewalls/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/FirewallsList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'firewalls' }), + goToItem: params => $router + .push({ name: 'firewall', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneFirewall', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_firewalls) { store.registerModule('$_firewalls', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/floatingDevices/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/floatingDevices/_components/TheView.js index 1510aaa64485..b067861f2a36 100644 --- a/html/pfappserver/root/src/views/Configuration/floatingDevices/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/floatingDevices/_components/TheView.js @@ -23,7 +23,7 @@ const props = { } } -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/floatingDevices/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/floatingDevices/_composables/useCollection.js index 4f409ea0a00d..0aa77a15810f 100644 --- a/html/pfappserver/root/src/views/Configuration/floatingDevices/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/floatingDevices/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'floating_devices' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'floating_device', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneFloatingDevice', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -57,10 +42,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_floatingdevices/updateFloatingDevice', form.value) } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/floatingDevices/_router.js b/html/pfappserver/root/src/views/Configuration/floatingDevices/_router.js index 0319813518e9..bb5b05249058 100644 --- a/html/pfappserver/root/src/views/Configuration/floatingDevices/_router.js +++ b/html/pfappserver/root/src/views/Configuration/floatingDevices/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/FloatingDevicesList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'floating_devices' }), + goToItem: params => $router + .push({ name: 'floating_device', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneFloatingDevice', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_floatingdevices) store.registerModule('$_floatingdevices', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/general/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/general/_composables/useResource.js index cb449f772388..e90e0d1375b8 100644 --- a/html/pfappserver/root/src/views/Configuration/general/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/general/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('General') +export const useTitle = () => i18n.t('General') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_components/TheView.js index 68cf6b905cc7..acbb9567d7ed 100644 --- a/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_composables/useCollection.js index c84b3b807327..b72734dafe63 100644 --- a/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_composables/useCollection.js @@ -1,27 +1,16 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id } = toRefs(props) return computed(() => i18n.t('Maintenance Task {id}', { id: id.value })) } -const useRouter = (props, context, form) => { - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'maintenance_tasks' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'maintenance_task', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -34,10 +23,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_maintenance_tasks/updateMaintenanceTask', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_router.js b/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_router.js index 822cd9a07f54..865f6471a849 100644 --- a/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_router.js +++ b/html/pfappserver/root/src/views/Configuration/maintenanceTasks/_router.js @@ -4,6 +4,15 @@ import StoreModule from './_store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../_components/MainTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'maintenance_tasks' }), + goToItem: params => $router + .push({ name: 'maintenance_task', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_maintenance_tasks) store.registerModule('$_maintenance_tasks', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_components/TheView.js index 68cf6b905cc7..acbb9567d7ed 100644 --- a/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_composables/useCollection.js index a7ae5fa17716..acd49ddc324b 100644 --- a/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_composables/useCollection.js @@ -1,12 +1,10 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta -} from '../../_config/' -const useItemDefaults = (meta) => ({ ...defaultsFromMeta(meta), actions: [] }) +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta) => ({ ...useDefaultsFromMeta(meta), actions: [] }) -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -24,21 +22,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'network_behavior_policies' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'network_behavior_policy', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneNetworkBehaviorPolicy', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -59,10 +45,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_network_behavior_policies/updateNetworkBehaviorPolicy', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_router.js b/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_router.js index e2c2adbb7412..aec704a9e004 100644 --- a/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_router.js +++ b/html/pfappserver/root/src/views/Configuration/networkBehaviorPolicy/_router.js @@ -5,6 +5,16 @@ import NetworkBehaviorPolicyStoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/NetworkBehaviorPoliciesList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'network_behavior_policies' }), + goToItem: $params => $router + .push({ name: 'network_behavior_policy', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneNetworkBehaviorPolicy', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_fingerbank) store.registerModule('$_fingerbank', FingerbankStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/networks/fencing/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/networks/fencing/_composables/useResource.js index ad9c003c45f7..b82c5c89dea0 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/fencing/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/networks/fencing/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Fencing') +export const useTitle = () => i18n.t('Fencing') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/networks/inline/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/networks/inline/_composables/useResource.js index 7678d72cd73b..2d92e556dda2 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/inline/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/networks/inline/_composables/useResource.js @@ -1,11 +1,11 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Inline') +export const useTitle = () => i18n.t('Inline') -const useTitleHelp = () => 'PacketFence_Installation_Guide.html#_technical_introduction_to_inline_enforcement' +export const useTitleHelp = () => 'PacketFence_Installation_Guide.html#_technical_introduction_to_inline_enforcement' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -16,9 +16,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useTitleHelp, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/networks/interfaces/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/networks/interfaces/_components/TheView.js index b15a871064d7..2ec391ad55c9 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/interfaces/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/networks/interfaces/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/networks/interfaces/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/networks/interfaces/_composables/useCollection.js index 7b0a3e992bfd..197be1d59c65 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/interfaces/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/networks/interfaces/_composables/useCollection.js @@ -8,14 +8,14 @@ export const useItemProps = { } } -const useItemDefaults = (_, props) => { +export const useItemDefaults = (_, props) => { const { id } = toRefs(props) return { id: id.value, type: 'none' } } -const useItemTitle = (props, context, form) => { +export const useItemTitle = (props, context, form) => { const { id, isClone, @@ -34,7 +34,7 @@ const useItemTitle = (props, context, form) => { }) } -const useItemTitleBadge = (props, context, form) => { +export const useItemTitleBadge = (props, context, form) => { const { id } = toRefs(props) @@ -48,26 +48,9 @@ const useItemTitleBadge = (props, context, form) => { }) } -const useRouter = (props, context, form) => { - const { - id, - prefixRouteName - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: `${prefixRouteName.value}interfaces` }), - goToItem: () => { - let { id = id.value, vlan } = form.value - if (id.indexOf('.') === -1 && vlan) // if `id` omits `vlan` and `vlan` is defined - id += `.${vlan}` // append `vlan` to `id` - return $router.push({ name: `${prefixRouteName.value}interface`, params: { id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) - }, - goToClone: () => $router.push({ name: `${prefixRouteName.value}cloneInterface`, params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -87,11 +70,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_interfaces/updateInterface', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/networks/interfaces/_router.js b/html/pfappserver/root/src/views/Configuration/networks/interfaces/_router.js index 56044e29eba2..6458b936be42 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/interfaces/_router.js +++ b/html/pfappserver/root/src/views/Configuration/networks/interfaces/_router.js @@ -1,7 +1,29 @@ +import { toRefs } from '@vue/composition-api' import store from '@/store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/NetworksTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: (params, props) => { + const { prefixRouteName } = toRefs(props) + return $router.push({ name: `${prefixRouteName.value}interfaces` }) + }, + goToItem: (params, props) => { + const { prefixRouteName } = toRefs(props) + let { id, vlan } = params + if (id.indexOf('.') === -1 && vlan) // if `id` omits `vlan` and `vlan` is defined + id += `.${vlan}` // append `vlan` to `id` + return $router.push({ name: `${prefixRouteName.value}interface`, params: { id } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + }, + goToClone: (params, props) => { + const { prefixRouteName } = toRefs(props) + return $router.push({ name: `${prefixRouteName.value}cloneInterface`, params }) + } + } +} + export default [ { path: 'interfaces', diff --git a/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_components/TheView.js index 21403415abaf..27fa8ac8e8dc 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_composables/useCollection.js index 576f63a39e96..5b8cf3562fee 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_composables/useCollection.js @@ -1,29 +1,19 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta -} from '../../../_config/' -const useItemDefaults = (meta) => ({ ...defaultsFromMeta(meta), actions: [] }) +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta) => ({ ...useDefaultsFromMeta(meta), actions: [] }) -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id } = toRefs(props) return computed(() => i18n.t('Layer 2 Network {id}', { id: id.value })) } -const useRouter = (props, context, form) => { - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'interfaces' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'layer2_network', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -35,10 +25,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_layer2_networks/updateLayer2Network', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_router.js b/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_router.js index 5f66390e6cd2..d3e21041f7d5 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_router.js +++ b/html/pfappserver/root/src/views/Configuration/networks/layer2Networks/_router.js @@ -1,6 +1,15 @@ import store from '@/store' const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'interfaces' }), + goToItem: params => $router + .push({ name: 'layer2_network', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + } +} + export default [ { path: 'interfaces/layer2_network/:id', diff --git a/html/pfappserver/root/src/views/Configuration/networks/network/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/networks/network/_composables/useResource.js index 2475a8b56c3c..466129e93561 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/network/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/networks/network/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Networking') +export const useTitle = () => i18n.t('Networking') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/networks/parking/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/networks/parking/_composables/useResource.js index 7569af97469f..9680022d3339 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/parking/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/networks/parking/_composables/useResource.js @@ -1,11 +1,11 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Parking') +export const useTitle = () => i18n.t('Parking') -const useTitleHelp = () => 'PacketFence_Installation_Guide.html#_parked_devices' +export const useTitleHelp = () => 'PacketFence_Installation_Guide.html#_parked_devices' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -16,9 +16,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useTitleHelp, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_components/TheView.js index e864b3b18c7b..84708dfa1014 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_composables/useCollection.js index 0dcae38c5e95..e42a59698db1 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'interfaces' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'routed_network', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneRoutedNetwork', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -50,10 +35,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_routed_networks/updateRoutedNetwork', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_router.js b/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_router.js index 76415ec4b3f9..0ab6b1001683 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_router.js +++ b/html/pfappserver/root/src/views/Configuration/networks/routedNetworks/_router.js @@ -1,6 +1,16 @@ import store from '@/store' const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'interfaces' }), + goToItem: params => $router + .push({ name: 'routed_network', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneRoutedNetwork', params }), + } +} + export default [ { path: 'interfaces/routed_networks/new', diff --git a/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_components/TheView.js index c309c9664267..f1075460793c 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_components/TheView.js @@ -20,7 +20,7 @@ const props = { } } -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_composables/useCollection.js index bf16fc63229d..2fe084c918a7 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_composables/useCollection.js @@ -1,17 +1,15 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta -} from '../../../_config/' -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { role } = toRefs(props) - return { ...defaultsFromMeta(meta), id: role.value } + return { ...useDefaultsFromMeta(meta), id: role.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isNew @@ -26,24 +24,16 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props) => { +export const useItemTitleBadge = (props) => { const { role } = toRefs(props) return role } -const useRouter = (props, context, form) => { - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'traffic_shapings' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'traffic_shaping', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -57,11 +47,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_traffic_shaping_policies/updateTrafficShapingPolicy', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_router.js b/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_router.js index 63e8c5c26b75..78caaa90d5ac 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_router.js +++ b/html/pfappserver/root/src/views/Configuration/networks/trafficShapingPolicies/_router.js @@ -2,6 +2,15 @@ import store from '@/store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/NetworksTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'traffic_shapings' }), + goToItem: params => $router + .push({ name: 'traffic_shaping', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + } +} + export default [ { path: 'traffic_shapings', diff --git a/html/pfappserver/root/src/views/Configuration/pki/_router.js b/html/pfappserver/root/src/views/Configuration/pki/_router.js index 47771d36a62c..7977406ae36e 100644 --- a/html/pfappserver/root/src/views/Configuration/pki/_router.js +++ b/html/pfappserver/root/src/views/Configuration/pki/_router.js @@ -2,12 +2,12 @@ import store from '@/store' import StoreModule from './_store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../_components/PkisTabs') -const PkiCaView = () => import(/* webpackChunkName: "Configuration" */ './cas/_components/TheView') -const PkiProfileView = () => import(/* webpackChunkName: "Configuration" */ './profiles/_components/TheView') -const PkiCertView = () => import(/* webpackChunkName: "Configuration" */ './certs/_components/TheView') -const PkiRevokedCertView = () => import(/* webpackChunkName: "Configuration" */ './revokedCerts/_components/TheView') +import CasRoutes from './cas/_router' +import CertsRoutes from './certs/_router' +import ProfilesRoutes from './profiles/_router' +import RevokedCertsRoutes from './revokedCerts/_router' -export const beforeEnter = (to, from, next = () => {}) => { +export const beforeEnter = (to, from, next = () => { }) => { if (!store.state.$_pkis) store.registerModule('$_pkis', StoreModule) next() @@ -21,137 +21,8 @@ export default [ props: (route) => ({ tab: 'pkiCas', query: route.query.query }), beforeEnter }, - { - path: 'pki/cas', - name: 'pkiCas', - component: TheTabs, - props: (route) => ({ tab: 'pkiCas', query: route.query.query }), - beforeEnter - }, - { - path: 'pki/cas/new', - name: 'newPkiCa', - component: PkiCaView, - props: () => ({ isNew: true }), - beforeEnter - }, - { - path: 'pki/ca/:id', - name: 'pkiCa', - component: PkiCaView, - props: (route) => ({ id: String(route.params.id).toString() }), - beforeEnter: (to, from, next) => { - beforeEnter() - store.dispatch('$_pkis/getCa', to.params.id).then(() => { - next() - }) - } - }, - { - path: 'pki/ca/:id/clone', - name: 'clonePkiCa', - component: PkiCaView, - props: (route) => ({ id: String(route.params.id).toString(), isClone: true }), - beforeEnter: (to, from, next) => { - beforeEnter() - store.dispatch('$_pkis/getCa', to.params.id).then(() => { - next() - }) - } - }, - { - path: 'pki/profiles', - name: 'pkiProfiles', - component: TheTabs, - props: (route) => ({ tab: 'pkiProfiles', query: route.query.query }), - beforeEnter - }, - { - path: 'pki/ca/:ca_id/profiles/new', - name: 'newPkiProfile', - component: PkiProfileView, - props: (route) => ({ ca_id: String(route.params.ca_id).toString(), isNew: true }), - beforeEnter - }, - { - path: 'pki/profile/:id', - name: 'pkiProfile', - component: PkiProfileView, - props: (route) => ({ id: String(route.params.id).toString() }), - beforeEnter: (to, from, next) => { - beforeEnter() - store.dispatch('$_pkis/getProfile', to.params.id).then(() => { - next() - }) - } - }, - { - path: 'pki/profile/:id/clone', - name: 'clonePkiProfile', - component: PkiProfileView, - props: (route) => ({ id: String(route.params.id).toString(), isClone: true }), - beforeEnter: (to, from, next) => { - beforeEnter() - store.dispatch('$_pkis/getProfile', to.params.id).then(() => { - next() - }) - } - }, - { - path: 'pki/certs', - name: 'pkiCerts', - component: TheTabs, - props: (route) => ({ tab: 'pkiCerts', query: route.query.query }), - beforeEnter - }, - { - path: 'pki/profile/:profile_id/certs/new', - name: 'newPkiCert', - component: PkiCertView, - props: (route) => ({ profile_id: String(route.params.profile_id).toString(), isNew: true }), - beforeEnter - }, - { - path: 'pki/cert/:id', - name: 'pkiCert', - component: PkiCertView, - props: (route) => ({ id: String(route.params.id).toString() }), - beforeEnter: (to, from, next) => { - beforeEnter() - store.dispatch('$_pkis/getCert', to.params.id).then(() => { - next() - }) - } - }, - { - path: 'pki/cert/:id/clone', - name: 'clonePkiCert', - component: PkiCertView, - props: (route) => ({ id: String(route.params.id).toString(), isClone: true }), - beforeEnter: (to, from, next) => { - beforeEnter() - store.dispatch('$_pkis/getCert', to.params.id).then(() => { - next() - }) - } - }, - { - path: 'pki/revokedcerts', - name: 'pkiRevokedCerts', - component: TheTabs, - props: (route) => ({ tab: 'pkiRevokedCerts', query: route.query.query }), - beforeEnter - }, - { - path: 'pki/revokedcert/:id', - name: 'pkiRevokedCert', - component: PkiRevokedCertView, - props: (route) => ({ id: String(route.params.id).toString() }), - beforeEnter: (to, from, next) => { - beforeEnter() - store.dispatch('$_pkis/getRevokedCert', to.params.id).then(() => { - next() - }) - } - } + ...CasRoutes, + ...CertsRoutes, + ...ProfilesRoutes, + ...RevokedCertsRoutes ] diff --git a/html/pfappserver/root/src/views/Configuration/pki/cas/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/pki/cas/_components/TheView.js index b15a871064d7..2ec391ad55c9 100644 --- a/html/pfappserver/root/src/views/Configuration/pki/cas/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/pki/cas/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/pki/cas/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/pki/cas/_composables/useCollection.js index 597474c89c95..b832287a277b 100644 --- a/html/pfappserver/root/src/views/Configuration/pki/cas/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/pki/cas/_composables/useCollection.js @@ -11,7 +11,7 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -29,21 +29,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'pkiCas' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'pkiCa', params: { id: item.ID } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'clonePkiCa', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -54,9 +42,3 @@ const useStore = (props, context, form) => { getItem: () => $store.dispatch('$_pkis/getCa', id.value).then(item => decomposeCa(item)) } } - -export default { - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/pki/cas/_router.js b/html/pfappserver/root/src/views/Configuration/pki/cas/_router.js new file mode 100644 index 000000000000..1f31a818997a --- /dev/null +++ b/html/pfappserver/root/src/views/Configuration/pki/cas/_router.js @@ -0,0 +1,62 @@ +import store from '@/store' +import StoreModule from '../_store' + +const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/PkisTabs') +const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') + +const beforeEnter = (to, from, next = () => { }) => { + if (!store.state.$_pkis) + store.registerModule('$_pkis', StoreModule) + next() +} + +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'pkiCas' }), + goToItem: params => $router + .push({ name: 'pkiCa', params: { ...params, id: params.ID } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'clonePkiCa', params }), + } +} + +export default [ + { + path: 'pki/cas', + name: 'pkiCas', + component: TheTabs, + props: (route) => ({ tab: 'pkiCas', query: route.query.query }), + beforeEnter + }, + { + path: 'pki/cas/new', + name: 'newPkiCa', + component: TheView, + props: () => ({ isNew: true }), + beforeEnter + }, + { + path: 'pki/ca/:id', + name: 'pkiCa', + component: TheView, + props: (route) => ({ id: String(route.params.id).toString() }), + beforeEnter: (to, from, next) => { + beforeEnter() + store.dispatch('$_pkis/getCa', to.params.id).then(() => { + next() + }) + } + }, + { + path: 'pki/ca/:id/clone', + name: 'clonePkiCa', + component: TheView, + props: (route) => ({ id: String(route.params.id).toString(), isClone: true }), + beforeEnter: (to, from, next) => { + beforeEnter() + store.dispatch('$_pkis/getCa', to.params.id).then(() => { + next() + }) + } + } +] \ No newline at end of file diff --git a/html/pfappserver/root/src/views/Configuration/pki/certs/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/pki/certs/_components/TheView.js index cf15d5a3729a..2705a5affbac 100644 --- a/html/pfappserver/root/src/views/Configuration/pki/certs/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/pki/certs/_components/TheView.js @@ -14,11 +14,11 @@ const components = { import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/pki/certs/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/pki/certs/_composables/useCollection.js index 286f7df83f77..e30df287ff0e 100644 --- a/html/pfappserver/root/src/views/Configuration/pki/certs/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/pki/certs/_composables/useCollection.js @@ -10,14 +10,14 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +export const useItemDefaults = (meta, props) => { const { profile_id } = toRefs(props) return { profile_id: profile_id.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -35,21 +35,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'pkiCerts' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'pkiCert', params: { id: item.ID } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'clonePkiCert', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, profile_id @@ -61,10 +49,3 @@ const useStore = (props, context, form) => { getItem: () => $store.dispatch('$_pkis/getCert', id.value) } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/pki/certs/_router.js b/html/pfappserver/root/src/views/Configuration/pki/certs/_router.js new file mode 100644 index 000000000000..7b9f0249da96 --- /dev/null +++ b/html/pfappserver/root/src/views/Configuration/pki/certs/_router.js @@ -0,0 +1,62 @@ +import store from '@/store' +import StoreModule from '../_store' + +const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/PkisTabs') +const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') + +const beforeEnter = (to, from, next = () => {}) => { + if (!store.state.$_pkis) + store.registerModule('$_pkis', StoreModule) + next() +} + +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'pkiCerts' }), + goToItem: params => $router + .push({ name: 'pkiCert', params: { ...params, id: params.ID } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'clonePkiCert', params }), + } +} + +export default [ + { + path: 'pki/certs', + name: 'pkiCerts', + component: TheTabs, + props: (route) => ({ tab: 'pkiCerts', query: route.query.query }), + beforeEnter + }, + { + path: 'pki/profile/:profile_id/certs/new', + name: 'newPkiCert', + component: TheView, + props: (route) => ({ profile_id: String(route.params.profile_id).toString(), isNew: true }), + beforeEnter + }, + { + path: 'pki/cert/:id', + name: 'pkiCert', + component: TheView, + props: (route) => ({ id: String(route.params.id).toString() }), + beforeEnter: (to, from, next) => { + beforeEnter() + store.dispatch('$_pkis/getCert', to.params.id).then(() => { + next() + }) + } + }, + { + path: 'pki/cert/:id/clone', + name: 'clonePkiCert', + component: TheView, + props: (route) => ({ id: String(route.params.id).toString(), isClone: true }), + beforeEnter: (to, from, next) => { + beforeEnter() + store.dispatch('$_pkis/getCert', to.params.id).then(() => { + next() + }) + } + } +] diff --git a/html/pfappserver/root/src/views/Configuration/pki/profiles/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/pki/profiles/_components/TheView.js index b15a871064d7..2ec391ad55c9 100644 --- a/html/pfappserver/root/src/views/Configuration/pki/profiles/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/pki/profiles/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/pki/profiles/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/pki/profiles/_composables/useCollection.js index d352da12eb80..672432d1cb6c 100644 --- a/html/pfappserver/root/src/views/Configuration/pki/profiles/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/pki/profiles/_composables/useCollection.js @@ -14,7 +14,7 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +export const useItemDefaults = (meta, props) => { const { ca_id } = toRefs(props) @@ -24,7 +24,7 @@ const useItemDefaults = (meta, props) => { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -42,21 +42,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'pkiProfiles' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'pkiProfile', params: { id: item.ID } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'clonePkiProfile', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -67,10 +55,3 @@ const useStore = (props, context, form) => { getItem: () => $store.dispatch('$_pkis/getProfile', id.value).then(item => decomposeProfile(item)) } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/pki/profiles/_router.js b/html/pfappserver/root/src/views/Configuration/pki/profiles/_router.js new file mode 100644 index 000000000000..8bc1cb1cafe3 --- /dev/null +++ b/html/pfappserver/root/src/views/Configuration/pki/profiles/_router.js @@ -0,0 +1,62 @@ +import store from '@/store' +import StoreModule from '../_store' + +const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/PkisTabs') +const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') + +const beforeEnter = (to, from, next = () => {}) => { + if (!store.state.$_pkis) + store.registerModule('$_pkis', StoreModule) + next() +} + +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'pkiProfiles' }), + goToItem: params => $router + .push({ name: 'pkiProfile', params: { ...params, id: params.ID } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'clonePkiProfile', params }), + } +} + +export default [ + { + path: 'pki/profiles', + name: 'pkiProfiles', + component: TheTabs, + props: (route) => ({ tab: 'pkiProfiles', query: route.query.query }), + beforeEnter + }, + { + path: 'pki/ca/:ca_id/profiles/new', + name: 'newPkiProfile', + component: TheView, + props: (route) => ({ ca_id: String(route.params.ca_id).toString(), isNew: true }), + beforeEnter + }, + { + path: 'pki/profile/:id', + name: 'pkiProfile', + component: TheView, + props: (route) => ({ id: String(route.params.id).toString() }), + beforeEnter: (to, from, next) => { + beforeEnter() + store.dispatch('$_pkis/getProfile', to.params.id).then(() => { + next() + }) + } + }, + { + path: 'pki/profile/:id/clone', + name: 'clonePkiProfile', + component: TheView, + props: (route) => ({ id: String(route.params.id).toString(), isClone: true }), + beforeEnter: (to, from, next) => { + beforeEnter() + store.dispatch('$_pkis/getProfile', to.params.id).then(() => { + next() + }) + } + } +] diff --git a/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_components/TheView.js index b15a871064d7..2ec391ad55c9 100644 --- a/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_composables/useCollection.js index 379ae5d3b1fc..d9e14de642b1 100644 --- a/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_composables/useCollection.js @@ -7,23 +7,16 @@ export const useItemProps = { } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id } = toRefs(props) return computed(() => i18n.t('Revoked Certificate {id}', { id: id.value })) } -const useRouter = (props, context, form) => { - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'pkiRevokedCerts' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'pkiRevokedCert', params: { id: item.ID } }) - } -} +export { useRouter } from '../_router' -const useStore = (props, context) => { +export const useStore = (props, context) => { const { id } = toRefs(props) @@ -34,9 +27,3 @@ const useStore = (props, context) => { .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) } } - -export default { - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_router.js b/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_router.js new file mode 100644 index 000000000000..accdf0db2094 --- /dev/null +++ b/html/pfappserver/root/src/views/Configuration/pki/revokedCerts/_router.js @@ -0,0 +1,41 @@ +import store from '@/store' +import StoreModule from '../_store' + +const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/PkisTabs') +const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') + +const beforeEnter = (to, from, next = () => {}) => { + if (!store.state.$_pkis) + store.registerModule('$_pkis', StoreModule) + next() +} + +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'pkiRevokedCerts' }), + goToItem: params => $router + .push({ name: 'pkiRevokedCert', params: { ...params, id: params.ID } }) + } +} + +export default [ + { + path: 'pki/revokedcerts', + name: 'pkiRevokedCerts', + component: TheTabs, + props: (route) => ({ tab: 'pkiRevokedCerts', query: route.query.query }), + beforeEnter + }, + { + path: 'pki/revokedcert/:id', + name: 'pkiRevokedCert', + component: TheView, + props: (route) => ({ id: String(route.params.id).toString() }), + beforeEnter: (to, from, next) => { + beforeEnter() + store.dispatch('$_pkis/getRevokedCert', to.params.id).then(() => { + next() + }) + } + } +] diff --git a/html/pfappserver/root/src/views/Configuration/pkiProviders/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/pkiProviders/_components/TheView.js index 81beaa05eb08..e35e28224e69 100644 --- a/html/pfappserver/root/src/views/Configuration/pkiProviders/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/pkiProviders/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/pkiProviders/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/pkiProviders/_composables/useCollection.js index 471012067d7c..e918f0e0291b 100644 --- a/html/pfappserver/root/src/views/Configuration/pkiProviders/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/pkiProviders/_composables/useCollection.js @@ -1,6 +1,5 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { defaultsFromMeta } from '../../_config/' export const useItemProps = { id: { @@ -11,14 +10,15 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { providerType } = toRefs(props) - return { ...defaultsFromMeta(meta), type: providerType.value } + return { ...useDefaultsFromMeta(meta), type: providerType.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -36,28 +36,16 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props, context, form) => { +export const useItemTitleBadge = (props, context, form) => { const { providerType } = toRefs(props) return computed(() => (providerType.value || form.value.type)) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'pki_providers' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'pki_provider', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'clonePkiProvider', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone, @@ -85,12 +73,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_pki_providers/updatePkiProvider', form.value), } } - -export default { - useItemDefaults, - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/pkiProviders/_router.js b/html/pfappserver/root/src/views/Configuration/pkiProviders/_router.js index 1570e71c5f0b..87c8561a9378 100644 --- a/html/pfappserver/root/src/views/Configuration/pkiProviders/_router.js +++ b/html/pfappserver/root/src/views/Configuration/pkiProviders/_router.js @@ -5,6 +5,16 @@ import PkisStoreModule from '../pki/_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/PkiProvidersList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'pki_providers' }), + goToItem: params => $router + .push({ name: 'pki_provider', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'clonePkiProvider', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_pki_providers) store.registerModule('$_pki_providers', PkiProvidersStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/portalModules/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/portalModules/_components/TheView.js index 81beaa05eb08..e35e28224e69 100644 --- a/html/pfappserver/root/src/views/Configuration/portalModules/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/portalModules/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/portalModules/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/portalModules/_composables/useCollection.js index 917792d302ee..b5040bb9829c 100644 --- a/html/pfappserver/root/src/views/Configuration/portalModules/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/portalModules/_composables/useCollection.js @@ -1,6 +1,5 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { defaultsFromMeta } from '../../_config/' export const useItemProps = { id: { @@ -11,14 +10,15 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { moduleType } = toRefs(props) - return { ...defaultsFromMeta(meta), type: moduleType.value } + return { ...useDefaultsFromMeta(meta), type: moduleType.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -36,28 +36,16 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props, context, form) => { +export const useItemTitleBadge = (props, context, form) => { const { moduleType } = toRefs(props) return computed(() => (moduleType.value || form.value.type)) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'portal_modules' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'portal_module', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'clonePortalModule', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone, @@ -85,12 +73,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_portalmodules/updatePortalModule', form.value), } } - -export default { - useItemDefaults, - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/portalModules/_router.js b/html/pfappserver/root/src/views/Configuration/portalModules/_router.js index ed7e5969b971..5d9a3ccf6781 100644 --- a/html/pfappserver/root/src/views/Configuration/portalModules/_router.js +++ b/html/pfappserver/root/src/views/Configuration/portalModules/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/PortalModulesList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'portal_modules' }), + goToItem: params => $router + .push({ name: 'portal_module', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'clonePortalModule', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_portalmodules) store.registerModule('$_portalmodules', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/provisioners/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/provisioners/_components/TheView.js index 81beaa05eb08..e35e28224e69 100644 --- a/html/pfappserver/root/src/views/Configuration/provisioners/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/provisioners/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/provisioners/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/provisioners/_composables/useCollection.js index a54e9de0fa45..95d8b8404f14 100644 --- a/html/pfappserver/root/src/views/Configuration/provisioners/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/provisioners/_composables/useCollection.js @@ -1,7 +1,6 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' import { provisioningTypes } from '../config' -import { defaultsFromMeta } from '../../_config/' export const useItemProps = { id: { @@ -12,14 +11,15 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { provisioningType } = toRefs(props) - return { ...defaultsFromMeta(meta), type: provisioningType.value } + return { ...useDefaultsFromMeta(meta), type: provisioningType.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -37,28 +37,16 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props, context, form) => { +export const useItemTitleBadge = (props, context, form) => { const { provisioningType } = toRefs(props) return computed(() => provisioningTypes[provisioningType.value || form.value.type]) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'provisionings' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'provisioning', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneProvisioning', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone, @@ -86,12 +74,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_provisionings/updateProvisioning', form.value), } } - -export default { - useItemDefaults, - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/provisioners/_router.js b/html/pfappserver/root/src/views/Configuration/provisioners/_router.js index f593eb8e3b67..6df1e2810a55 100644 --- a/html/pfappserver/root/src/views/Configuration/provisioners/_router.js +++ b/html/pfappserver/root/src/views/Configuration/provisioners/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/ProvisioningsList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'provisionings' }), + goToItem: params => $router + .push({ name: 'provisioning', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneProvisioning', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_provisionings) { store.registerModule('$_provisionings', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/radius/eap/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/radius/eap/_components/TheView.js index 6fb97a07974c..4722795d7ab2 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/eap/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/radius/eap/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/radius/eap/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/radius/eap/_composables/useCollection.js index a5f7e7fdee92..f808ed52297a 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/eap/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/radius/eap/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'radiusEaps' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'radiusEap', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneRadiusEap', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -62,10 +47,3 @@ const useStore = (props, context, form) => { ) } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/radius/eap/_router.js b/html/pfappserver/root/src/views/Configuration/radius/eap/_router.js index 41ba51fac00d..88bc5f36a305 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/eap/_router.js +++ b/html/pfappserver/root/src/views/Configuration/radius/eap/_router.js @@ -4,6 +4,16 @@ import RadiusEapStoreModule from './_store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/RadiusTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'radiusEaps' }), + goToItem: params => $router + .push({ name: 'radiusEap', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneRadiusEap', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_radius_eap) store.registerModule('$_radius_eap', RadiusEapStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/radius/fast/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/radius/fast/_components/TheView.js index 6fb97a07974c..4722795d7ab2 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/fast/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/radius/fast/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/radius/fast/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/radius/fast/_composables/useCollection.js index 24d022aeca33..049849107135 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/fast/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/radius/fast/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'radiusFasts' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'radiusFast', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneRadiusFast', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -62,10 +47,3 @@ const useStore = (props, context, form) => { ) } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/radius/fast/_router.js b/html/pfappserver/root/src/views/Configuration/radius/fast/_router.js index f1cee49088f0..4c6a10f4bbfc 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/fast/_router.js +++ b/html/pfappserver/root/src/views/Configuration/radius/fast/_router.js @@ -4,6 +4,16 @@ import RadiusFastStoreModule from './_store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/RadiusTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'radiusFasts' }), + goToItem: params => $router + .push({ name: 'radiusFast', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneRadiusFast', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_radius_fast) store.registerModule('$_radius_fast', RadiusFastStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/radius/general/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/radius/general/_composables/useResource.js index 949b92b24127..969c4ef5ea38 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/general/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/radius/general/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('General Configuration') +export const useTitle = () => i18n.t('General Configuration') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/radius/ocsp/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/radius/ocsp/_components/TheView.js index 6fb97a07974c..4722795d7ab2 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/ocsp/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/radius/ocsp/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/radius/ocsp/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/radius/ocsp/_composables/useCollection.js index 52ec9716d19c..322e99fda482 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/ocsp/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/radius/ocsp/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'radiusOcsps' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'radiusOcsp', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneRadiusOcsp', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -62,10 +47,3 @@ const useStore = (props, context, form) => { ) } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/radius/ocsp/_router.js b/html/pfappserver/root/src/views/Configuration/radius/ocsp/_router.js index ade72c8e4bb3..6b4f9f7d3b69 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/ocsp/_router.js +++ b/html/pfappserver/root/src/views/Configuration/radius/ocsp/_router.js @@ -4,6 +4,16 @@ import RadiusOcspStoreModule from './_store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/RadiusTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'radiusOcsps' }), + goToItem: params => $router + .push({ name: 'radiusOcsp', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneRadiusOcsp', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_radius_ocsp) store.registerModule('$_radius_ocsp', RadiusOcspStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/radius/ssl/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/radius/ssl/_components/TheView.js index 6fb97a07974c..4722795d7ab2 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/ssl/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/radius/ssl/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/radius/ssl/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/radius/ssl/_composables/useCollection.js index da20995dce3f..2c5f241b7b1b 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/ssl/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/radius/ssl/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'radiusSsls' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'radiusSsl', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneRadiusSsl', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -57,10 +42,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_radius_ssl/updateRadiusSsl', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/radius/ssl/_router.js b/html/pfappserver/root/src/views/Configuration/radius/ssl/_router.js index c68b0b76dbb6..11e4e9f8c997 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/ssl/_router.js +++ b/html/pfappserver/root/src/views/Configuration/radius/ssl/_router.js @@ -4,6 +4,16 @@ import RadiusSslStoreModule from './_store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/RadiusTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'radiusSsls' }), + goToItem: params => $router + .push({ name: 'radiusSsl', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneRadiusSsl', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_radius_ssl) store.registerModule('$_radius_ssl', RadiusSslStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/radius/tls/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/radius/tls/_components/TheView.js index 6fb97a07974c..4722795d7ab2 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/tls/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/radius/tls/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/radius/tls/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/radius/tls/_composables/useCollection.js index 3d5b8abe61ae..c0664ae29849 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/tls/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/radius/tls/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'radiusTlss' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'radiusTls', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneRadiusTls', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -57,10 +42,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_radius_tls/updateRadiusTls', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/radius/tls/_router.js b/html/pfappserver/root/src/views/Configuration/radius/tls/_router.js index 085c5e206b4e..c5aca6e3d28e 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/tls/_router.js +++ b/html/pfappserver/root/src/views/Configuration/radius/tls/_router.js @@ -4,6 +4,16 @@ import RadiusTlsStoreModule from './_store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../../_components/RadiusTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'radiusTlss' }), + goToItem: params => $router + .push({ name: 'radiusTls', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneRadiusTls', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_radius_tls) store.registerModule('$_radius_tls', RadiusTlsStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/realms/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/realms/_components/TheView.js index 1510aaa64485..b067861f2a36 100644 --- a/html/pfappserver/root/src/views/Configuration/realms/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/realms/_components/TheView.js @@ -23,7 +23,7 @@ const props = { } } -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/realms/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/realms/_composables/useCollection.js index 71c8f484a7d6..5d5e332d90be 100644 --- a/html/pfappserver/root/src/views/Configuration/realms/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/realms/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,7 +19,7 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props, context) => { +export const useItemTitleBadge = (props, context) => { const { tenantId } = toRefs(props) @@ -31,22 +28,9 @@ const useItemTitleBadge = (props, context) => { return tenantName } -const useRouter = (props, context, form) => { - const { - id, - tenantId - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'realms', params: { tenantId: tenantId.value } }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'realm', params: { id: item.id, tenantId: tenantId.value } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneRealm', params: { id: id.value, tenantId: tenantId.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, tenantId, @@ -68,11 +52,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_realms/updateRealm', { item: form.value, tenantId: tenantId.value }), } } - -export default { - useItemDefaults, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/realms/_router.js b/html/pfappserver/root/src/views/Configuration/realms/_router.js index 9b89736fb20e..ef39d6531261 100644 --- a/html/pfappserver/root/src/views/Configuration/realms/_router.js +++ b/html/pfappserver/root/src/views/Configuration/realms/_router.js @@ -1,3 +1,4 @@ +import { toRefs } from '@vue/composition-api' import store from '@/store' import DomainsStoreModule from '../domains/_store' import RealmsStoreModule from './_store' @@ -5,6 +6,25 @@ import RealmsStoreModule from './_store' export const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../_components/DomainsTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: (params, props) => { + const { tenantId } = toRefs(props) + return $router.push({ name: 'realms', params: { tenantId: tenantId.value } }) + }, + goToItem: (params, props) => { + const { tenantId } = toRefs(props) + return $router + .push({ name: 'realm', params: { ...params, tenantId: tenantId.value } }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }) + }, + goToClone: (params, props) => { + const { tenantId } = toRefs(props) + return $router.push({ name: 'cloneRealm', params: { ...params, tenantId: tenantId.value } }) + } + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_domains) store.registerModule('$_domains', DomainsStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/roles/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/roles/_components/TheView.js index 83c6098d21fa..e3baafaa9c98 100644 --- a/html/pfappserver/root/src/views/Configuration/roles/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/roles/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/roles/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/roles/_composables/useCollection.js index a178645f5373..c0f85b14437a 100644 --- a/html/pfappserver/root/src/views/Configuration/roles/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/roles/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -export const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'roles' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'role', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneRole', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -73,11 +58,3 @@ export const useSearch = (props, context, options) => useConfigurationSearch(pro defaultCondition: () => ([{ values: [{ field: 'parent_id', op: 'equals', value: null }] }]), ...options, }) - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, - useSearch -} diff --git a/html/pfappserver/root/src/views/Configuration/roles/_router.js b/html/pfappserver/root/src/views/Configuration/roles/_router.js index 13b44adec801..386dd8399348 100644 --- a/html/pfappserver/root/src/views/Configuration/roles/_router.js +++ b/html/pfappserver/root/src/views/Configuration/roles/_router.js @@ -5,6 +5,16 @@ import TrafficShapingPoliciesStoreModule from '../networks/trafficShapingPolicie const TheList = () => import(/* webpackChunkName: "Configuration" */ './_components/TheList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'roles' }), + goToItem: params => $router + .push({ name: 'role', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneRole', params }) + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_roles) store.registerModule('$_roles', RolesStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/scanEngines/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/scanEngines/_components/TheView.js index 81beaa05eb08..e35e28224e69 100644 --- a/html/pfappserver/root/src/views/Configuration/scanEngines/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/scanEngines/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/scanEngines/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/scanEngines/_composables/useCollection.js index 749507a5be89..250a6e39d713 100644 --- a/html/pfappserver/root/src/views/Configuration/scanEngines/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/scanEngines/_composables/useCollection.js @@ -1,8 +1,5 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta -} from '../../_config/' export const useItemProps = { id: { @@ -13,14 +10,15 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { scanType } = toRefs(props) - return { ...defaultsFromMeta(meta), type: scanType.value } + return { ...useDefaultsFromMeta(meta), type: scanType.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -38,7 +36,7 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props, context, form) => { +export const useItemTitleBadge = (props, context, form) => { const { scanType } = toRefs(props) @@ -48,21 +46,9 @@ const useItemTitleBadge = (props, context, form) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'scanEngines' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'scanEngine', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneScanEngine', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone, @@ -90,12 +76,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_scans/updateScanEngine', form.value), } } - -export default { - useItemProps, - useItemDefaults, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/scanEngines/_router.js b/html/pfappserver/root/src/views/Configuration/scanEngines/_router.js index b75c7588d2b6..1c84ad85cc4c 100644 --- a/html/pfappserver/root/src/views/Configuration/scanEngines/_router.js +++ b/html/pfappserver/root/src/views/Configuration/scanEngines/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' export const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../_components/ScansTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'scanEngines' }), + goToItem: params => $router + .push({ name: 'scanEngine', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneScanEngine', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_scans) store.registerModule('$_scans', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/securityEvents/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/securityEvents/_components/TheView.js index 83c6098d21fa..e3baafaa9c98 100644 --- a/html/pfappserver/root/src/views/Configuration/securityEvents/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/securityEvents/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/securityEvents/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/securityEvents/_composables/useCollection.js index 857957ae31cf..bd68ecf717f4 100644 --- a/html/pfappserver/root/src/views/Configuration/securityEvents/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/securityEvents/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'security_events' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'security_event', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneSecurityEvent', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -57,10 +42,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_security_events/updateSecurityEvent', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/securityEvents/_router.js b/html/pfappserver/root/src/views/Configuration/securityEvents/_router.js index 2762f82f0555..fda01ef8b179 100644 --- a/html/pfappserver/root/src/views/Configuration/securityEvents/_router.js +++ b/html/pfappserver/root/src/views/Configuration/securityEvents/_router.js @@ -6,6 +6,16 @@ import NetworkBehaviorPoliciesStoreModule from '../networkBehaviorPolicy/_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/SecurityEventsList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'security_events' }), + goToItem: params => $router + .push({ name: 'security_event', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneSecurityEvent', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_security_events) store.registerModule('$_security_events', SecurityEventsStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/selfServices/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/selfServices/_components/TheView.js index 83c6098d21fa..e3baafaa9c98 100644 --- a/html/pfappserver/root/src/views/Configuration/selfServices/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/selfServices/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/selfServices/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/selfServices/_composables/useCollection.js index 53b88df7e403..0f42548d0a72 100644 --- a/html/pfappserver/root/src/views/Configuration/selfServices/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/selfServices/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'self_services' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'self_service', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneSelfService', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -57,10 +42,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_self_services/updateSelfService', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/selfServices/_router.js b/html/pfappserver/root/src/views/Configuration/selfServices/_router.js index 0d8464aaf981..2d228a9d10df 100644 --- a/html/pfappserver/root/src/views/Configuration/selfServices/_router.js +++ b/html/pfappserver/root/src/views/Configuration/selfServices/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/SelfServicesList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'self_services' }), + goToItem: params => $router + .push({ name: 'self_service', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneSelfService', params }) + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_self_services) store.registerModule('$_self_services', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/services/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/services/_composables/useResource.js index 7926a9386b67..e3950220f4f9 100644 --- a/html/pfappserver/root/src/views/Configuration/services/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/services/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Services') +export const useTitle = () => i18n.t('Services') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/snmpTraps/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/snmpTraps/_composables/useResource.js index 1ab854daf429..a71c28d00b65 100644 --- a/html/pfappserver/root/src/views/Configuration/snmpTraps/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/snmpTraps/_composables/useResource.js @@ -1,11 +1,11 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('SNMP') +export const useTitle = () => i18n.t('SNMP') -const useTitleHelp = () => 'PacketFence_Installation_Guide.html#_snmp_traps_limit' +export const useTitleHelp = () => 'PacketFence_Installation_Guide.html#_snmp_traps_limit' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -16,9 +16,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useTitleHelp, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/sources/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/sources/_components/TheView.js index 6817a0517fcd..3c311e44c931 100644 --- a/html/pfappserver/root/src/views/Configuration/sources/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/sources/_components/TheView.js @@ -13,11 +13,11 @@ const components = { import { computed, toRefs } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/sources/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/sources/_composables/useCollection.js index a870c53599f2..2372a014c4e7 100644 --- a/html/pfappserver/root/src/views/Configuration/sources/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/sources/_composables/useCollection.js @@ -1,6 +1,5 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { defaultsFromMeta } from '../../_config/' export const useItemProps = { id: { @@ -11,14 +10,15 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { sourceType } = toRefs(props) - return { ...defaultsFromMeta(meta), type: sourceType.value } + return { ...useDefaultsFromMeta(meta), type: sourceType.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -36,28 +36,16 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props, context, form) => { +export const useItemTitleBadge = (props, context, form) => { const { sourceType } = toRefs(props) return computed(() => (sourceType.value || form.value.type)) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'sources' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'source', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneAuthenticationSource', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone, @@ -85,12 +73,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_sources/updateAuthenticationSource', form.value), } } - -export default { - useItemDefaults, - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/sources/_router.js b/html/pfappserver/root/src/views/Configuration/sources/_router.js index ae4fb2c70fa9..72af5cbbd34e 100644 --- a/html/pfappserver/root/src/views/Configuration/sources/_router.js +++ b/html/pfappserver/root/src/views/Configuration/sources/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/AuthenticationSourcesList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'sources' }), + goToItem: params => $router + .push({ name: 'source', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneAuthenticationSource', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_sources) store.registerModule('$_sources', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/sslCertificates/_components/TheForm.vue b/html/pfappserver/root/src/views/Configuration/sslCertificates/_components/TheForm.vue index 31f1e6f3aefd..4f3a670e399e 100644 --- a/html/pfappserver/root/src/views/Configuration/sslCertificates/_components/TheForm.vue +++ b/html/pfappserver/root/src/views/Configuration/sslCertificates/_components/TheForm.vue @@ -197,7 +197,7 @@ const components = { } import { useForm, useFormProps } from '../_composables/useForm' import { useViewCollectionItemFixed, useViewCollectionItemFixedProps } from '../../_composables/useViewCollectionItemFixed' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useFormProps, diff --git a/html/pfappserver/root/src/views/Configuration/sslCertificates/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/sslCertificates/_composables/useCollection.js index 273249937112..63737c0beefd 100644 --- a/html/pfappserver/root/src/views/Configuration/sslCertificates/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/sslCertificates/_composables/useCollection.js @@ -1,14 +1,14 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id } = toRefs(props) return computed(() => id.value.toUpperCase()) } -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id } = toRefs(props) @@ -46,8 +46,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useItemTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/switchGroups/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/switchGroups/_components/TheView.js index 5b3b825af920..4935894fc140 100644 --- a/html/pfappserver/root/src/views/Configuration/switchGroups/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/switchGroups/_components/TheView.js @@ -12,11 +12,11 @@ const components = { import { computed, toRefs } from '@vue/composition-api' import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/switchGroups/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/switchGroups/_composables/useCollection.js index 8fb4c063345b..8d0d1a6dd775 100644 --- a/html/pfappserver/root/src/views/Configuration/switchGroups/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/switchGroups/_composables/useCollection.js @@ -1,7 +1,6 @@ - + import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { defaultsFromMeta } from '../../_config/' export const useItemProps = { id: { @@ -12,14 +11,15 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { switchGroup } = toRefs(props) - return { ...defaultsFromMeta(meta), group: switchGroup.value } + return { ...useDefaultsFromMeta(meta), group: switchGroup.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -37,21 +37,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'switch_groups' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'switch_group', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneSwitchGroup', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { isNew, id @@ -71,10 +59,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_switch_groups/updateSwitchGroup', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/switchGroups/_router.js b/html/pfappserver/root/src/views/Configuration/switchGroups/_router.js index 4c28e62bf64c..97885d32896c 100644 --- a/html/pfappserver/root/src/views/Configuration/switchGroups/_router.js +++ b/html/pfappserver/root/src/views/Configuration/switchGroups/_router.js @@ -6,6 +6,16 @@ import SwitchGroupsStoreModule from './_store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../_components/NetworkDevicesTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'switch_groups' }), + goToItem: params => $router + .push({ name: 'switch_group', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneSwitchGroup', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_roles) store.registerModule('$_roles', RolesStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/switchTemplates/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/switchTemplates/_components/TheView.js index 83c6098d21fa..e3baafaa9c98 100644 --- a/html/pfappserver/root/src/views/Configuration/switchTemplates/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/switchTemplates/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/switchTemplates/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/switchTemplates/_composables/useCollection.js index dee01d62a4fc..9a62458ff892 100644 --- a/html/pfappserver/root/src/views/Configuration/switchTemplates/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/switchTemplates/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'switchTemplates' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'switchTemplate', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneSwitchTemplate', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -57,10 +42,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_switch_templates/updateSwitchTemplate', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/switchTemplates/_router.js b/html/pfappserver/root/src/views/Configuration/switchTemplates/_router.js index 4ef1d96cd588..b21ed9549630 100644 --- a/html/pfappserver/root/src/views/Configuration/switchTemplates/_router.js +++ b/html/pfappserver/root/src/views/Configuration/switchTemplates/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/SwitchTemplatesList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'switchTemplates' }), + goToItem: params => $router + .push({ name: 'switchTemplate', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneSwitchTemplate', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_switch_templates) store.registerModule('$_switch_templates', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/switches/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/switches/_components/TheView.js index 5b3b825af920..4935894fc140 100644 --- a/html/pfappserver/root/src/views/Configuration/switches/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/switches/_components/TheView.js @@ -12,11 +12,11 @@ const components = { import { computed, toRefs } from '@vue/composition-api' import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/switches/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/switches/_composables/useCollection.js index 029e327e6c57..0d769128d914 100644 --- a/html/pfappserver/root/src/views/Configuration/switches/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/switches/_composables/useCollection.js @@ -1,6 +1,5 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { defaultsFromMeta } from '../../_config/' export const useItemProps = { id: { @@ -11,14 +10,15 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { switchGroup } = toRefs(props) - return { ...defaultsFromMeta(meta), group: switchGroup.value } + return { ...useDefaultsFromMeta(meta), group: switchGroup.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -36,21 +36,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'switches' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'switch', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneSwitch', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isNew, @@ -71,10 +59,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_switches/updateSwitch', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/switches/_router.js b/html/pfappserver/root/src/views/Configuration/switches/_router.js index 344a5089c524..5cdd88bf04b2 100644 --- a/html/pfappserver/root/src/views/Configuration/switches/_router.js +++ b/html/pfappserver/root/src/views/Configuration/switches/_router.js @@ -7,6 +7,16 @@ const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../_compon const TheCsvImport = () => import(/* webpackChunkName: "Import" */ './_components/TheCsvImport') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'switches' }), + goToItem: params => $router + .push({ name: 'switch', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneSwitch', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_roles) store.registerModule('$_roles', RolesStoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/syslogForwarders/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/syslogForwarders/_components/TheView.js index 81beaa05eb08..e35e28224e69 100644 --- a/html/pfappserver/root/src/views/Configuration/syslogForwarders/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/syslogForwarders/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/syslogForwarders/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/syslogForwarders/_composables/useCollection.js index 750900f70718..14c2e5c55601 100644 --- a/html/pfappserver/root/src/views/Configuration/syslogForwarders/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/syslogForwarders/_composables/useCollection.js @@ -1,6 +1,5 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { defaultsFromMeta } from '../../_config/' export const useItemProps = { id: { @@ -11,14 +10,15 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { syslogForwarderType } = toRefs(props) - return { ...defaultsFromMeta(meta), type: syslogForwarderType.value } + return { ...useDefaultsFromMeta(meta), type: syslogForwarderType.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -36,28 +36,16 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props, context, form) => { +export const useItemTitleBadge = (props, context, form) => { const { syslogForwarderType } = toRefs(props) return computed(() => (syslogForwarderType.value || form.value.type)) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'syslogForwarders' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'syslogForwarder', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneSyslogForwarder', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone, @@ -85,12 +73,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_syslog_forwarders/updateSyslogForwarder', form.value), } } - -export default { - useItemDefaults, - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/syslogForwarders/_router.js b/html/pfappserver/root/src/views/Configuration/syslogForwarders/_router.js index 8c9360ddf998..71020fee27bc 100644 --- a/html/pfappserver/root/src/views/Configuration/syslogForwarders/_router.js +++ b/html/pfappserver/root/src/views/Configuration/syslogForwarders/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/SyslogForwardersList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'syslogForwarders' }), + goToItem: params => $router + .push({ name: 'syslogForwarder', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneSyslogForwarder', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_syslog_forwarders) store.registerModule('$_syslog_forwarders', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/syslogParsers/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/syslogParsers/_components/TheView.js index 81beaa05eb08..e35e28224e69 100644 --- a/html/pfappserver/root/src/views/Configuration/syslogParsers/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/syslogParsers/_components/TheView.js @@ -11,11 +11,11 @@ const components = { } import { useViewCollectionItem, useViewCollectionItemProps } from '../../_composables/useViewCollectionItem' -import collection, { useItemProps } from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const props = { ...useViewCollectionItemProps, - ...useItemProps + ...collection.useItemProps } const setup = (props, context) => useViewCollectionItem(collection, props, context) diff --git a/html/pfappserver/root/src/views/Configuration/syslogParsers/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/syslogParsers/_composables/useCollection.js index 9d0f5daf1e4f..6424b02175e9 100644 --- a/html/pfappserver/root/src/views/Configuration/syslogParsers/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/syslogParsers/_composables/useCollection.js @@ -1,6 +1,5 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { defaultsFromMeta } from '../../_config/' export const useItemProps = { id: { @@ -11,14 +10,15 @@ export const useItemProps = { } } -const useItemDefaults = (meta, props) => { +import { useDefaultsFromMeta } from '@/composables/useMeta' +export const useItemDefaults = (meta, props) => { const { syslogParserType } = toRefs(props) - return { ...defaultsFromMeta(meta), type: syslogParserType.value } + return { ...useDefaultsFromMeta(meta), type: syslogParserType.value } } -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -36,28 +36,16 @@ const useItemTitle = (props) => { }) } -const useItemTitleBadge = (props, context, form) => { +export const useItemTitleBadge = (props, context, form) => { const { syslogParserType } = toRefs(props) return computed(() => (syslogParserType.value || form.value.type)) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'syslogParsers' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'syslogParser', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneSyslogParser', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone, @@ -85,12 +73,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_syslog_parsers/updateSyslogParser', form.value), } } - -export default { - useItemDefaults, - useItemProps, - useItemTitle, - useItemTitleBadge, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/syslogParsers/_router.js b/html/pfappserver/root/src/views/Configuration/syslogParsers/_router.js index bfad3b55a7a4..21f0e5a03a0c 100644 --- a/html/pfappserver/root/src/views/Configuration/syslogParsers/_router.js +++ b/html/pfappserver/root/src/views/Configuration/syslogParsers/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/SyslogParsersList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'syslogParsers' }), + goToItem: params => $router + .push({ name: 'syslogParser', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneSyslogParser', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_syslog_parsers) store.registerModule('$_syslog_parsers', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/tenants/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/tenants/_components/TheView.js index 83c6098d21fa..e3baafaa9c98 100644 --- a/html/pfappserver/root/src/views/Configuration/tenants/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/tenants/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/tenants/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/tenants/_composables/useCollection.js index 2c9ab6453f25..8166a7eaaed8 100644 --- a/html/pfappserver/root/src/views/Configuration/tenants/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/tenants/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props, context) => { +export const useItemTitle = (props, context) => { const { id, isClone, @@ -24,21 +21,9 @@ const useItemTitle = (props, context) => { }) } -export const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'tenants' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'tenant', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneTenant', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -76,12 +61,3 @@ export const useSearch = (props, context, options) => useConfigurationSearch(pro defaultCondition: () => ([{ values: [{ field: 'name', op: 'contains', value: null }] }]), ...options, }) - - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, - useSearch -} diff --git a/html/pfappserver/root/src/views/Configuration/tenants/_router.js b/html/pfappserver/root/src/views/Configuration/tenants/_router.js index 2dc5aefcbfc5..62e1f917657a 100644 --- a/html/pfappserver/root/src/views/Configuration/tenants/_router.js +++ b/html/pfappserver/root/src/views/Configuration/tenants/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ './_components/TheList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'tenants' }), + goToItem: params => $router + .push({ name: 'tenant', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneTenant', params }) + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_tenants) store.registerModule('$_tenants', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/webServices/_composables/useResource.js b/html/pfappserver/root/src/views/Configuration/webServices/_composables/useResource.js index a93c827fb755..069c9b1f71ed 100644 --- a/html/pfappserver/root/src/views/Configuration/webServices/_composables/useResource.js +++ b/html/pfappserver/root/src/views/Configuration/webServices/_composables/useResource.js @@ -1,9 +1,9 @@ import { computed } from '@vue/composition-api' import i18n from '@/utils/locale' -const useTitle = () => i18n.t('Web Services') +export const useTitle = () => i18n.t('Web Services') -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { root: { $store } = {} } = context return { isLoading: computed(() => $store.getters['$_bases/isLoading']), @@ -14,8 +14,3 @@ const useStore = (props, context, form) => { } } } - -export default { - useTitle, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/wmiRules/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/wmiRules/_components/TheView.js index 83c6098d21fa..e3baafaa9c98 100644 --- a/html/pfappserver/root/src/views/Configuration/wmiRules/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/wmiRules/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/wmiRules/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/wmiRules/_composables/useCollection.js index 3171962e3371..b9dbfcffcfbf 100644 --- a/html/pfappserver/root/src/views/Configuration/wmiRules/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/wmiRules/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'wmiRules' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'wmiRule', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneWmiRule', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -57,10 +42,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_wmi_rules/updateWmiRule', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/wmiRules/_router.js b/html/pfappserver/root/src/views/Configuration/wmiRules/_router.js index ceb4c95835ce..93c720c3d624 100644 --- a/html/pfappserver/root/src/views/Configuration/wmiRules/_router.js +++ b/html/pfappserver/root/src/views/Configuration/wmiRules/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheTabs = () => import(/* webpackChunkName: "Configuration" */ '../_components/ScansTabs') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'wmiRules' }), + goToItem: params => $router + .push({ name: 'wmiRule', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneWmiRule', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_wmi_rules) store.registerModule('$_wmi_rules', StoreModule) diff --git a/html/pfappserver/root/src/views/Configuration/wrix/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/wrix/_components/TheView.js index 83c6098d21fa..e3baafaa9c98 100644 --- a/html/pfappserver/root/src/views/Configuration/wrix/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/wrix/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewCollectionItem, useViewCollectionItemProps as props } from '../../_composables/useViewCollectionItem' -import collection from '../_composables/useCollection' +import * as collection from '../_composables/useCollection' const setup = (props, context) => useViewCollectionItem(collection, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/wrix/_composables/useCollection.js b/html/pfappserver/root/src/views/Configuration/wrix/_composables/useCollection.js index 9fbab7707996..e25c72848028 100644 --- a/html/pfappserver/root/src/views/Configuration/wrix/_composables/useCollection.js +++ b/html/pfappserver/root/src/views/Configuration/wrix/_composables/useCollection.js @@ -1,10 +1,7 @@ import { computed, toRefs } from '@vue/composition-api' import i18n from '@/utils/locale' -import { - defaultsFromMeta as useItemDefaults -} from '../../_config/' -const useItemTitle = (props) => { +export const useItemTitle = (props) => { const { id, isClone, @@ -22,21 +19,9 @@ const useItemTitle = (props) => { }) } -const useRouter = (props, context, form) => { - const { - id - } = toRefs(props) - const { root: { $router } = {} } = context - return { - goToCollection: () => $router.push({ name: 'wrixLocations' }), - goToItem: (item = form.value || {}) => $router - .push({ name: 'wrixLocation', params: { id: item.id } }) - .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), - goToClone: () => $router.push({ name: 'cloneWrixLocation', params: { id: id.value } }), - } -} +export { useRouter } from '../_router' -const useStore = (props, context, form) => { +export const useStore = (props, context, form) => { const { id, isClone @@ -56,10 +41,3 @@ const useStore = (props, context, form) => { updateItem: () => $store.dispatch('$_wrix_locations/updateWrixLocation', form.value), } } - -export default { - useItemDefaults, - useItemTitle, - useRouter, - useStore, -} diff --git a/html/pfappserver/root/src/views/Configuration/wrix/_router.js b/html/pfappserver/root/src/views/Configuration/wrix/_router.js index 038a6cd24841..ca16859579c3 100644 --- a/html/pfappserver/root/src/views/Configuration/wrix/_router.js +++ b/html/pfappserver/root/src/views/Configuration/wrix/_router.js @@ -4,6 +4,16 @@ import StoreModule from './_store' const TheList = () => import(/* webpackChunkName: "Configuration" */ '../_components/WrixLocationsList') const TheView = () => import(/* webpackChunkName: "Configuration" */ './_components/TheView') +export const useRouter = $router => { + return { + goToCollection: () => $router.push({ name: 'wrixLocations' }), + goToItem: params => $router + .push({ name: 'wrixLocation', params }) + .catch(e => { if (e.name !== "NavigationDuplicated") throw e }), + goToClone: params => $router.push({ name: 'cloneWrixLocation', params }), + } +} + export const beforeEnter = (to, from, next = () => {}) => { if (!store.state.$_wrix_locations) store.registerModule('$_wrix_locations', StoreModule) diff --git a/html/pfappserver/root/src/views/Nodes/_components/TheFormCreate.vue b/html/pfappserver/root/src/views/Nodes/_components/TheFormCreate.vue index 8c332307e7ae..e8522fe3ee26 100644 --- a/html/pfappserver/root/src/views/Nodes/_components/TheFormCreate.vue +++ b/html/pfappserver/root/src/views/Nodes/_components/TheFormCreate.vue @@ -37,7 +37,7 @@ @save="onCreate" /> - + @@ -79,7 +79,7 @@ const setup = (props, context) => { const rootRef = ref(null) const form = ref({ ...defaults }) // dereferenced const schema = computed(() => schemaFn(props, form.value)) - + const isValid = useDebouncedWatchHandler( [form], () => ( @@ -95,12 +95,13 @@ const setup = (props, context) => { createItem } = useStore(props, context, form) + const { root: { $router } = {} } = context const { goToCollection, goToItem, - } = useRouter(props, context, form) + } = useRouter($router) - const onClose = () => goToCollection() + const onClose = () => goToCollection(false) const onCreate = () => { if (!isValid.value) diff --git a/html/pfappserver/root/src/views/Nodes/_components/TheFormUpdate.vue b/html/pfappserver/root/src/views/Nodes/_components/TheFormUpdate.vue index a1b42684ef00..920ec385e433 100644 --- a/html/pfappserver/root/src/views/Nodes/_components/TheFormUpdate.vue +++ b/html/pfappserver/root/src/views/Nodes/_components/TheFormUpdate.vue @@ -150,10 +150,11 @@ const { reevaluateAccess } = useStore(props, context, form) + const { root: { $router } = {} } = context const { goToCollection, goToItem, - } = useRouter(props, context, form) + } = useRouter($router) const isDeletable = computed(() => { const { not_deletable: notDeletable = false } = form.value || {} @@ -178,9 +179,9 @@ const { const onRefresh = () => reloadItem() - const onClose = () => goToCollection() + const onClose = () => goToCollection(false) - const onRemove = () => deleteItem().then(() => goToCollection()) + const onRemove = () => deleteItem().then(() => goToCollection(false)) const onReset = () => init() From 7c2d14f78a8d50d48af47ca58a444ffae6fb2064 Mon Sep 17 00:00:00 2001 From: Darren Satkunas Date: Mon, 10 May 2021 17:24:10 -0400 Subject: [PATCH 04/72] adjust resource imports --- .../src/views/Configuration/_config/index.js | 20 ------------------- .../accessDurations/_components/TheView.js | 2 +- .../activeActive/_components/TheView.js | 2 +- .../advanced/_components/TheView.js | 2 +- .../alerting/_components/TheView.js | 2 +- .../captivePortal/_components/TheView.js | 2 +- .../database/advanced/_components/TheView.js | 2 +- .../database/general/_components/TheView.js | 2 +- .../Configuration/dns/_components/TheView.js | 2 +- .../_components/TheView.js | 2 +- .../generalSettings/_components/TheView.js | 2 +- .../general/_components/TheView.js | 2 +- .../networks/fencing/_components/TheView.js | 2 +- .../networks/inline/_components/TheView.js | 2 +- .../networks/network/_components/TheView.js | 2 +- .../networks/parking/_components/TheView.js | 2 +- .../radius/general/_components/TheView.js | 2 +- .../services/_components/TheView.js | 2 +- .../snmpTraps/_components/TheView.js | 2 +- .../webServices/_components/TheView.js | 2 +- 20 files changed, 19 insertions(+), 39 deletions(-) delete mode 100644 html/pfappserver/root/src/views/Configuration/_config/index.js diff --git a/html/pfappserver/root/src/views/Configuration/_config/index.js b/html/pfappserver/root/src/views/Configuration/_config/index.js deleted file mode 100644 index 5613f8e7c762..000000000000 --- a/html/pfappserver/root/src/views/Configuration/_config/index.js +++ /dev/null @@ -1,20 +0,0 @@ -export const defaultsFromMeta = (meta = {}) => { - let defaults = {} - Object.keys(meta).forEach(key => { - if ('properties' in meta[key]) { // handle dot-notation keys ('.') - Object.keys(meta[key].properties).forEach(property => { - if (!(key in defaults)) { - defaults[key] = {} - } - // default w/ object - defaults[key][property] = meta[key].properties[property].default - }) - } else { - defaults[key] = meta[key].default - } - }) - return defaults -} - - - diff --git a/html/pfappserver/root/src/views/Configuration/accessDurations/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/accessDurations/_components/TheView.js index f808aff34b51..4b2bb2b13c42 100644 --- a/html/pfappserver/root/src/views/Configuration/accessDurations/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/accessDurations/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/activeActive/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/activeActive/_components/TheView.js index f808aff34b51..4b2bb2b13c42 100644 --- a/html/pfappserver/root/src/views/Configuration/activeActive/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/activeActive/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/advanced/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/advanced/_components/TheView.js index 881509ee126a..6fd97ba6c867 100644 --- a/html/pfappserver/root/src/views/Configuration/advanced/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/advanced/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewResource, useViewResourceProps as props } from '../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/alerting/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/alerting/_components/TheView.js index f808aff34b51..4b2bb2b13c42 100644 --- a/html/pfappserver/root/src/views/Configuration/alerting/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/alerting/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/captivePortal/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/captivePortal/_components/TheView.js index 881509ee126a..6fd97ba6c867 100644 --- a/html/pfappserver/root/src/views/Configuration/captivePortal/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/captivePortal/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewResource, useViewResourceProps as props } from '../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/database/advanced/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/database/advanced/_components/TheView.js index a52e97a0fb5b..e6080896ae92 100644 --- a/html/pfappserver/root/src/views/Configuration/database/advanced/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/database/advanced/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/database/general/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/database/general/_components/TheView.js index a52e97a0fb5b..e6080896ae92 100644 --- a/html/pfappserver/root/src/views/Configuration/database/general/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/database/general/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/dns/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/dns/_components/TheView.js index 563a811ea114..111cc5fa7f8c 100644 --- a/html/pfappserver/root/src/views/Configuration/dns/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/dns/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/deviceChangeDetection/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/fingerbank/deviceChangeDetection/_components/TheView.js index 1905b6d2aaaa..8e86b56c7641 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/deviceChangeDetection/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/deviceChangeDetection/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/fingerbank/generalSettings/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/fingerbank/generalSettings/_components/TheView.js index 61d21836aa02..4c6da169d91b 100644 --- a/html/pfappserver/root/src/views/Configuration/fingerbank/generalSettings/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/fingerbank/generalSettings/_components/TheView.js @@ -14,7 +14,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewResource, useViewResourceProps as props } from '../../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/general/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/general/_components/TheView.js index 767c8383284e..60ccea23bf36 100644 --- a/html/pfappserver/root/src/views/Configuration/general/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/general/_components/TheView.js @@ -13,7 +13,7 @@ const components = { import { computed } from '@vue/composition-api' import { renderHOCWithScopedSlots } from '@/components/new/' import { useViewResource, useViewResourceProps as props } from '../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => { diff --git a/html/pfappserver/root/src/views/Configuration/networks/fencing/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/networks/fencing/_components/TheView.js index a52e97a0fb5b..e6080896ae92 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/fencing/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/networks/fencing/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/networks/inline/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/networks/inline/_components/TheView.js index a52e97a0fb5b..e6080896ae92 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/inline/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/networks/inline/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/networks/network/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/networks/network/_components/TheView.js index a52e97a0fb5b..e6080896ae92 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/network/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/networks/network/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/networks/parking/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/networks/parking/_components/TheView.js index a52e97a0fb5b..e6080896ae92 100644 --- a/html/pfappserver/root/src/views/Configuration/networks/parking/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/networks/parking/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/radius/general/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/radius/general/_components/TheView.js index 87e4f72d9c32..bbe178792b71 100644 --- a/html/pfappserver/root/src/views/Configuration/radius/general/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/radius/general/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/services/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/services/_components/TheView.js index f808aff34b51..4b2bb2b13c42 100644 --- a/html/pfappserver/root/src/views/Configuration/services/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/services/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/snmpTraps/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/snmpTraps/_components/TheView.js index 563a811ea114..111cc5fa7f8c 100644 --- a/html/pfappserver/root/src/views/Configuration/snmpTraps/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/snmpTraps/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component diff --git a/html/pfappserver/root/src/views/Configuration/webServices/_components/TheView.js b/html/pfappserver/root/src/views/Configuration/webServices/_components/TheView.js index f808aff34b51..4b2bb2b13c42 100644 --- a/html/pfappserver/root/src/views/Configuration/webServices/_components/TheView.js +++ b/html/pfappserver/root/src/views/Configuration/webServices/_components/TheView.js @@ -12,7 +12,7 @@ const components = { import { useViewResource, useViewResourceProps as props } from '../../_composables/useViewResource' -import resource from '../_composables/useResource' +import * as resource from '../_composables/useResource' const setup = (props, context) => useViewResource(resource, props, context) // @vue/component From 0401530f68ff5c100af249a7b2fa9b846c129607 Mon Sep 17 00:00:00 2001 From: Darren Satkunas Date: Wed, 12 May 2021 10:54:51 -0400 Subject: [PATCH 05/72] add pinia --- html/pfappserver/root/package.json | 1 + html/pfappserver/root/src/main.js | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/html/pfappserver/root/package.json b/html/pfappserver/root/package.json index a8e43e3ff34b..c2b920c5afdb 100644 --- a/html/pfappserver/root/package.json +++ b/html/pfappserver/root/package.json @@ -20,6 +20,7 @@ "messageformat": "^2.3.0", "mime-types": "^2.1.30", "papaparse": "5.3.0", + "pinia": "^0.4.1", "plotly.js-basic-dist-min": "^1.58.2", "promised-debounce": "^0.4.2", "typeface-b612-mono": "1.1.13", diff --git a/html/pfappserver/root/src/main.js b/html/pfappserver/root/src/main.js index 160c3ffa857e..432e7eb03195 100644 --- a/html/pfappserver/root/src/main.js +++ b/html/pfappserver/root/src/main.js @@ -97,6 +97,8 @@ import 'vue-awesome/icons/retweet' import 'vue-awesome/icons/ruler-combined' import 'vue-awesome/icons/save' import 'vue-awesome/icons/search' +import 'vue-awesome/icons/search-minus' +import 'vue-awesome/icons/search-plus' import 'vue-awesome/icons/server' import 'vue-awesome/icons/shield-alt' import 'vue-awesome/icons/sign-in-alt' @@ -140,6 +142,7 @@ Icon.register(pfIcons) import './directives/focus' +import { createPinia, PiniaPlugin } from 'pinia' import store from './store' import router from './router' import filters from './utils/filters' @@ -168,6 +171,8 @@ Vue.component('icon', Icon) Vue.use(BootstrapVue) Vue.use(CompositionApi) Vue.use(pfTemplatePlugin) +Vue.use(PiniaPlugin) +const pinia = createPinia() // Register global filters for (const filter of Object.keys(filters)) { @@ -179,6 +184,7 @@ const app = new Vue({ router, store, i18n, + pinia, mounted () { store.dispatch('events/bind') From 2fc12d1368e788f15fc2b5922967239de6a4261e Mon Sep 17 00:00:00 2001 From: Darren Satkunas Date: Fri, 14 May 2021 10:53:45 -0400 Subject: [PATCH 06/72] prototype composable search w/ pinia --- .../src/components/new/BaseButtonHelp.vue | 2 +- .../components/new/BaseButtonSaveSearch.vue | 2 +- .../root/src/components/new/BaseSearch.vue | 194 ++++++++++++++++++ .../components/new/BaseSearchInputBasic.vue | 8 +- .../components/new/BaseSearchInputColumns.vue | 9 +- .../components/new/BaseSearchInputLimit.vue | 6 +- .../components/new/BaseSearchInputPage.vue | 8 +- .../root/src/components/new/index.js | 6 +- .../root/src/composables/useRouter.js | 7 +- .../src/views/Configuration/_store/search.js | 189 +++++++++++++++++ .../views/Configuration/adminRoles/_api.js | 19 +- .../adminRoles/_components/TheList.vue | 165 ++++++++++----- .../adminRoles/_composables/useCollection.js | 63 ++++-- .../views/Configuration/adminRoles/_store.js | 14 +- .../views/Configuration/adminRoles/config.js | 79 ------- 15 files changed, 585 insertions(+), 186 deletions(-) create mode 100644 html/pfappserver/root/src/components/new/BaseSearch.vue create mode 100644 html/pfappserver/root/src/views/Configuration/_store/search.js delete mode 100644 html/pfappserver/root/src/views/Configuration/adminRoles/config.js diff --git a/html/pfappserver/root/src/components/new/BaseButtonHelp.vue b/html/pfappserver/root/src/components/new/BaseButtonHelp.vue index bae6040c2df3..176623142999 100644 --- a/html/pfappserver/root/src/components/new/BaseButtonHelp.vue +++ b/html/pfappserver/root/src/components/new/BaseButtonHelp.vue @@ -1,7 +1,7 @@