diff --git a/.github/workflows/publish-api-docs.yml b/.github/workflows/publish-api-docs.yml index ebf714d7ec..89470ae73a 100644 --- a/.github/workflows/publish-api-docs.yml +++ b/.github/workflows/publish-api-docs.yml @@ -35,7 +35,7 @@ jobs: env: API_TOKEN_GITHUB: ${{ secrets.GH_TOKEN }} with: - source_file: 'packages/nocodb/src/schema/swagger.json' + source_file: 'packages/nocodb/src/schema/swagger-v2.json' destination_repo: 'nocodb/noco-apis-doc' destination_folder: 'data-apis-v2' user_email: 'oof1lab@gmail.com' diff --git a/packages/nc-gui/assets/style/fonts.css b/packages/nc-gui/assets/style/fonts.css index 1040373031..3ea76e9a67 100644 --- a/packages/nc-gui/assets/style/fonts.css +++ b/packages/nc-gui/assets/style/fonts.css @@ -2,6 +2,7 @@ @font-face { font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */ font-family: 'Manrope'; + font-weight: 450 900; src: url('./manrope/Manrope-VariableFont_wght.ttf') format('truetype') } diff --git a/packages/nc-gui/components/cell/Json.vue b/packages/nc-gui/components/cell/Json.vue index b6e327ef3e..18326296f9 100644 --- a/packages/nc-gui/components/cell/Json.vue +++ b/packages/nc-gui/components/cell/Json.vue @@ -6,6 +6,7 @@ import { IsFormInj, JsonExpandInj, ReadonlyInj, + RowHeightInj, computed, inject, ref, @@ -46,6 +47,8 @@ const _isExpanded = inject(JsonExpandInj, ref(false)) const isExpanded = ref(false) +const rowHeight = inject(RowHeightInj, ref(undefined)) + const localValue = computed | undefined>({ get: () => localValueState.value, set: (val: undefined | string | Record) => { @@ -140,6 +143,13 @@ useSelectedCellKeyupListener(active, (e) => { } }) +const inputWrapperRef = ref(null) + +onClickOutside(inputWrapperRef, (e) => { + if ((e.target as HTMLElement)?.closest('.nc-json-action')) return + editEnabled.value = false +}) + watch(isExpanded, () => { _isExpanded.value = isExpanded.value }) @@ -148,7 +158,7 @@ watch(isExpanded, () => { diff --git a/packages/nc-gui/components/cell/MultiSelect.vue b/packages/nc-gui/components/cell/MultiSelect.vue index 3a9d02aba9..7a64c35a1a 100644 --- a/packages/nc-gui/components/cell/MultiSelect.vue +++ b/packages/nc-gui/components/cell/MultiSelect.vue @@ -43,6 +43,8 @@ const { modelValue, disableOptionCreation } = defineProps() const emit = defineEmits(['update:modelValue']) +const { isMobileMode } = useGlobal() + const column = inject(ColumnInj)! const readOnly = inject(ReadonlyInj)! @@ -383,7 +385,7 @@ const selectedOpts = computed(() => { :placeholder="isEditColumn ? $t('labels.optional') : ''" :bordered="false" clear-icon - show-search + :show-search="!isMobileMode" :show-arrow="editAllowed && !(readOnly || isLockedMode)" :open="isOpen && editAllowed" :disabled="readOnly || !editAllowed || isLockedMode" @@ -392,6 +394,9 @@ const selectedOpts = computed(() => { @search="search" @keydown.stop > + () const emit = defineEmits(['update:modelValue']) +const { isMobileMode } = useGlobal() + const column = inject(ColumnInj)! const readOnly = inject(ReadonlyInj)! @@ -202,6 +204,8 @@ async function addIfMissingAndSave() { } const search = () => { + if (isMobileMode.value) return + searchVal.value = aselect.value?.$el?.querySelector('.ant-select-selection-search-input')?.value } @@ -285,7 +289,7 @@ const selectedOpt = computed(() => { v-else ref="aselect" v-model:value="vModel" - class="w-full overflow-hidden" + class="w-full overflow-hidden xs:min-h-12" :class="{ 'caret-transparent': !hasEditRoles }" :placeholder="isEditColumn ? $t('labels.optional') : ''" :allow-clear="!column.rqd && editAllowed" @@ -294,7 +298,7 @@ const selectedOpt = computed(() => { :disabled="readOnly || !editAllowed || isLockedMode" :show-arrow="hasEditRoles && !(readOnly || isLockedMode) && active && vModel === null" :dropdown-class-name="`nc-dropdown-single-select-cell ${isOpen && active ? 'active' : ''}`" - :show-search="isOpen && active" + :show-search="!isMobileMode && isOpen && active" @select="onSelect" @keydown="onKeydown($event)" @search="search" diff --git a/packages/nc-gui/components/cell/attachment/Carousel.vue b/packages/nc-gui/components/cell/attachment/Carousel.vue index 55c4f8a48e..e42eba2bfb 100644 --- a/packages/nc-gui/components/cell/attachment/Carousel.vue +++ b/packages/nc-gui/components/cell/attachment/Carousel.vue @@ -55,7 +55,7 @@ useEventListener(container, 'click', (e) => {