diff --git a/packages/nc-gui/components.d.ts b/packages/nc-gui/components.d.ts index 023966715d..41be648f73 100644 --- a/packages/nc-gui/components.d.ts +++ b/packages/nc-gui/components.d.ts @@ -239,6 +239,7 @@ declare module '@vue/runtime-core' { MdiTableColumnPlusBefore: typeof import('~icons/mdi/table-column-plus-before')['default'] MdiTableKey: typeof import('~icons/mdi/table-key')['default'] MdiTableLarge: typeof import('~icons/mdi/table-large')['default'] + MdiTestTube: typeof import('~icons/mdi/test-tube')['default'] MdiText: typeof import('~icons/mdi/text')['default'] MdiThumbUp: typeof import('~icons/mdi/thumb-up')['default'] MdiTrashCan: typeof import('~icons/mdi/trash-can')['default'] diff --git a/packages/nc-gui/components/smartsheet/column/EditOrAdd.vue b/packages/nc-gui/components/smartsheet/column/EditOrAdd.vue index cf7404f03e..50369d7324 100644 --- a/packages/nc-gui/components/smartsheet/column/EditOrAdd.vue +++ b/packages/nc-gui/components/smartsheet/column/EditOrAdd.vue @@ -41,6 +41,8 @@ const { $e } = useNuxtApp() const { appInfo } = useGlobal() +const { betaFeatureToggleState } = useBetaFeatureToggle() + const meta = inject(MetaInj, ref()) const isForm = inject(IsFormInj, ref(false)) @@ -58,7 +60,7 @@ const columnToValidate = [UITypes.Email, UITypes.URL, UITypes.PhoneNumber] const onlyNameUpdateOnEditColumns = [UITypes.LinkToAnotherRecord, UITypes.Lookup, UITypes.Rollup] const geoDataToggleCondition = (t) => { - return geodataToggleState.show ? geodataToggleState.show : !t.name.includes(UITypes.GeoData) + return betaFeatureToggleState.show ? betaFeatureToggleState.show : !t.name.includes(UITypes.GeoData) } const uiTypesOptions = computed(() => { diff --git a/packages/nc-gui/components/smartsheet/sidebar/MenuBottom.vue b/packages/nc-gui/components/smartsheet/sidebar/MenuBottom.vue index 8984a6a3c5..b9edd2ef30 100644 --- a/packages/nc-gui/components/smartsheet/sidebar/MenuBottom.vue +++ b/packages/nc-gui/components/smartsheet/sidebar/MenuBottom.vue @@ -12,6 +12,8 @@ const { $e } = useNuxtApp() const { isSqlView } = useSmartsheetStoreOrThrow() +const { betaFeatureToggleState } = useBetaFeatureToggle() + function onOpenModal(type: ViewTypes, title = '') { $e('c:view:create', { view: type }) emits('openModal', { type, title }) @@ -113,7 +115,7 @@ function onOpenModal(type: ViewTypes, title = '') { +const { toggleBetaFeature } = useBetaFeatureToggle() + + + diff --git a/packages/nc-gui/components/smartsheet/sidebar/toolbar/GeodataSwitcher.vue b/packages/nc-gui/components/smartsheet/sidebar/toolbar/GeodataSwitcher.vue deleted file mode 100644 index 74b82098a4..0000000000 --- a/packages/nc-gui/components/smartsheet/sidebar/toolbar/GeodataSwitcher.vue +++ /dev/null @@ -1,15 +0,0 @@ - - - diff --git a/packages/nc-gui/components/smartsheet/sidebar/toolbar/index.vue b/packages/nc-gui/components/smartsheet/sidebar/toolbar/index.vue index 90abdf857e..3c4311d450 100644 --- a/packages/nc-gui/components/smartsheet/sidebar/toolbar/index.vue +++ b/packages/nc-gui/components/smartsheet/sidebar/toolbar/index.vue @@ -30,7 +30,7 @@ const onClick = () => {
- +
diff --git a/packages/nc-gui/composables/useBetaFeatureToggle.ts b/packages/nc-gui/composables/useBetaFeatureToggle.ts new file mode 100644 index 0000000000..f40cbd5c41 --- /dev/null +++ b/packages/nc-gui/composables/useBetaFeatureToggle.ts @@ -0,0 +1,22 @@ +import { reactive } from 'vue' + +const storedValue = localStorage.getItem('betaFeatureToggleState') + +const initialToggleState = storedValue ? JSON.parse(storedValue) : false + +const betaFeatureToggleState = reactive({ show: initialToggleState }) + +const toggleBetaFeature = () => { + betaFeatureToggleState.show = !betaFeatureToggleState.show + localStorage.setItem('betaFeatureToggleState', JSON.stringify(betaFeatureToggleState.show)) +} + +const _useBetaFeatureToggle = () => { + return { + betaFeatureToggleState, + toggleBetaFeature, + } +} + +const useBetaFeatureToggle = createSharedComposable(_useBetaFeatureToggle) +export { useBetaFeatureToggle } diff --git a/packages/nc-gui/composables/useMapViewDataStore.ts b/packages/nc-gui/composables/useMapViewDataStore.ts index 33ba440c04..5ca4162888 100644 --- a/packages/nc-gui/composables/useMapViewDataStore.ts +++ b/packages/nc-gui/composables/useMapViewDataStore.ts @@ -1,15 +1,9 @@ -import { reactive } from 'vue' +// import { reactive } from 'vue' import type { ComputedRef, Ref } from 'vue' import type { ColumnType, MapType, PaginatedType, TableType, ViewType } from 'nocodb-sdk' import { IsPublicInj, ref, storeToRefs, useInjectionState, useMetas, useProject } from '#imports' import type { Row } from '~/lib' -const storedValue = localStorage.getItem('geodataToggleState') - -const initialState = storedValue ? JSON.parse(storedValue) : false - -export const geodataToggleState = reactive({ show: initialState }) - const formatData = (list: Record[]) => list.map( (row) => @@ -161,7 +155,6 @@ const [useProvideMapViewStore, useMapViewStore] = useInjectionState( geoDataFieldColumn, addEmptyRow, insertRow, - geodataToggleState, syncCount, paginationData, } diff --git a/packages/nc-gui/pages/[projectType]/[projectId]/index.vue b/packages/nc-gui/pages/[projectType]/[projectId]/index.vue index 22d842d7bd..97f630e6f3 100644 --- a/packages/nc-gui/pages/[projectType]/[projectId]/index.vue +++ b/packages/nc-gui/pages/[projectType]/[projectId]/index.vue @@ -42,6 +42,8 @@ const { t } = useI18n() const { $e } = useNuxtApp() +const { betaFeatureToggleState } = useBetaFeatureToggle() + const route = useRoute() const router = useRouter() @@ -399,7 +401,7 @@ useEventListener(document, 'keydown', async (e: KeyboardEvent) => { - +