@meeovi/layer-shared 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/app/composables/mappers/createMapper.ts +11 -0
  2. package/app/composables/mappers/errors.ts +13 -0
  3. package/app/composables/mappers/index.ts +7 -0
  4. package/app/composables/mappers/registry.ts +28 -0
  5. package/app/composables/mappers/testHarness.ts +142 -0
  6. package/app/composables/mappers/types.ts +6 -0
  7. package/app/composables/mappers/zodMapper.ts +37 -0
  8. package/app/composables/schema/commerce/attributes.ts +10 -0
  9. package/app/composables/schema/commerce/blocks.ts +7 -0
  10. package/app/composables/schema/commerce/bundleProduts.ts +12 -0
  11. package/app/composables/schema/commerce/cart.ts +35 -0
  12. package/app/composables/schema/commerce/category.ts +15 -0
  13. package/app/composables/schema/commerce/checkout.ts +11 -0
  14. package/app/composables/schema/commerce/company.ts +8 -0
  15. package/app/composables/schema/commerce/configurableProducts.ts +11 -0
  16. package/app/composables/schema/commerce/coupons.ts +10 -0
  17. package/app/composables/schema/commerce/credit-memos.ts +50 -0
  18. package/app/composables/schema/commerce/digitalProducts.ts +13 -0
  19. package/app/composables/schema/commerce/directory.ts +8 -0
  20. package/app/composables/schema/commerce/events.ts +30 -0
  21. package/app/composables/schema/commerce/gift-registry.ts +9 -0
  22. package/app/composables/schema/commerce/guest-cart.ts +6 -0
  23. package/app/composables/schema/commerce/inventory.ts +9 -0
  24. package/app/composables/schema/commerce/invoices.ts +49 -0
  25. package/app/composables/schema/commerce/orders.ts +39 -0
  26. package/app/composables/schema/commerce/payments.ts +11 -0
  27. package/app/composables/schema/commerce/price.ts +12 -0
  28. package/app/composables/schema/commerce/product-types.ts +9 -0
  29. package/app/composables/schema/commerce/product.ts +23 -0
  30. package/app/composables/schema/commerce/quotes.ts +10 -0
  31. package/app/composables/schema/commerce/requisition-lists.ts +7 -0
  32. package/app/composables/schema/commerce/returns.ts +11 -0
  33. package/app/composables/schema/commerce/reward.ts +8 -0
  34. package/app/composables/schema/commerce/rules.ts +8 -0
  35. package/app/composables/schema/commerce/shipment.ts +21 -0
  36. package/app/composables/schema/commerce/shops.ts +10 -0
  37. package/app/composables/schema/commerce/stockItems.ts +8 -0
  38. package/app/composables/schema/commerce/store.ts +8 -0
  39. package/app/composables/schema/commerce/subscriptons.ts +11 -0
  40. package/app/composables/schema/commerce/taxRates.ts +9 -0
  41. package/app/composables/schema/commerce/taxRules.ts +8 -0
  42. package/app/composables/schema/commerce/teams.ts +7 -0
  43. package/app/composables/schema/commerce/transactions.ts +13 -0
  44. package/app/composables/schema/identity/customerGroup.ts +8 -0
  45. package/app/composables/schema/identity/user.ts +47 -0
  46. package/app/composables/schema/media/asset.ts +31 -0
  47. package/app/composables/schema/social/post.ts +28 -0
  48. package/app/composables/schema/social/profile.ts +25 -0
  49. package/app/composables/schema/social/space.ts +19 -0
  50. package/app/composables/utils/assert.ts +8 -0
  51. package/app/composables/utils/deepMerge.ts +21 -0
  52. package/app/composables/utils/index.ts +4 -0
  53. package/app/composables/utils/isObject.ts +7 -0
  54. package/app/composables/utils/module.ts +19 -0
  55. package/app/composables/utils/safeGet.ts +8 -0
  56. package/nuxt.config.ts +12 -2
  57. package/package.json +2 -1
  58. package/app/types/api/global-search.ts +0 -8
  59. package/app/types/blocks/block-button-group.ts +0 -7
  60. package/app/types/blocks/block-button.ts +0 -14
  61. package/app/types/blocks/block-column.ts +0 -20
  62. package/app/types/blocks/block-cta.ts +0 -10
  63. package/app/types/blocks/block-divider.ts +0 -4
  64. package/app/types/blocks/block-faq.ts +0 -12
  65. package/app/types/blocks/block-form.ts +0 -8
  66. package/app/types/blocks/block-gallery.ts +0 -14
  67. package/app/types/blocks/block-hero.ts +0 -12
  68. package/app/types/blocks/block-html.ts +0 -4
  69. package/app/types/blocks/block-logocloud.ts +0 -14
  70. package/app/types/blocks/block-quote.ts +0 -11
  71. package/app/types/blocks/block-richtext.ts +0 -7
  72. package/app/types/blocks/block-steps.ts +0 -22
  73. package/app/types/blocks/block-team.ts +0 -6
  74. package/app/types/blocks/block-testimonial.ts +0 -14
  75. package/app/types/blocks/block-video.ts +0 -10
  76. package/app/types/blocks/block.ts +0 -49
  77. package/app/types/blocks/index.ts +0 -18
  78. package/app/types/componentMap.ts +0 -15
  79. package/app/types/content/category.ts +0 -11
  80. package/app/types/content/form.ts +0 -20
  81. package/app/types/content/index.ts +0 -6
  82. package/app/types/content/page.ts +0 -76
  83. package/app/types/content/post.ts +0 -39
  84. package/app/types/content/team.ts +0 -16
  85. package/app/types/content/testimonial.ts +0 -19
  86. package/app/types/directus.d.ts +0 -47
  87. package/app/types/env.d.ts +0 -8
  88. package/app/types/help/index.ts +0 -53
  89. package/app/types/index.d.ts +0 -9
  90. package/app/types/index.ts +0 -7
  91. package/app/types/meta/analytics.ts +0 -18
  92. package/app/types/meta/config.ts +0 -21
  93. package/app/types/meta/globals.ts +0 -30
  94. package/app/types/meta/index.ts +0 -6
  95. package/app/types/meta/navigation.ts +0 -32
  96. package/app/types/meta/redirect.ts +0 -13
  97. package/app/types/meta/seo.ts +0 -19
  98. package/app/types/os/contact.ts +0 -23
  99. package/app/types/os/conversation.ts +0 -25
  100. package/app/types/os/index.ts +0 -16
  101. package/app/types/os/organization.ts +0 -54
  102. package/app/types/os/os-activity.ts +0 -28
  103. package/app/types/os/os-deal.ts +0 -45
  104. package/app/types/os/os-expense.ts +0 -22
  105. package/app/types/os/os-invoice.ts +0 -48
  106. package/app/types/os/os-item.ts +0 -18
  107. package/app/types/os/os-payment.ts +0 -29
  108. package/app/types/os/os-project.ts +0 -47
  109. package/app/types/os/os-proposal.ts +0 -84
  110. package/app/types/os/os-settings.ts +0 -19
  111. package/app/types/os/os-subscription.ts +0 -12
  112. package/app/types/os/os-task.ts +0 -34
  113. package/app/types/os/os-tax-rate.ts +0 -13
  114. package/app/types/pageComponentMap.ts +0 -8
  115. package/app/types/schema.d.ts +0 -39
  116. package/app/types/schema.ts +0 -151
  117. package/app/types/system/file.ts +0 -46
  118. package/app/types/system/folder.ts +0 -8
  119. package/app/types/system/index.ts +0 -4
  120. package/app/types/system/role.ts +0 -21
  121. package/app/types/system/user.ts +0 -56
@@ -0,0 +1,7 @@
1
+ export interface MeeoviRequisitionList {
2
+ id: string
3
+ ownerId?: string | null
4
+ items: Array<{ productId: string; quantity: number }>
5
+ metadata?: Record<string, unknown>
6
+ }
7
+
@@ -0,0 +1,11 @@
1
+ export interface MeeoviReturn {
2
+ id: number
3
+ status?: string | null
4
+ date_created?: string | null
5
+ date_updated?: string | null
6
+ return_number?: string | null
7
+ reason?: string | null
8
+ // relations omitted: returns_orders[], returns_products[]
9
+ }
10
+
11
+
@@ -0,0 +1,8 @@
1
+ export interface MeeoviReward {
2
+ id: string
3
+ userId: string
4
+ points: number
5
+ balance?: number
6
+ metadata?: Record<string, unknown>
7
+ }
8
+
@@ -0,0 +1,8 @@
1
+ export interface MeeoviRule {
2
+ id: string
3
+ name: string
4
+ condition?: string | null
5
+ action?: string | null
6
+ metadata?: Record<string, unknown>
7
+ }
8
+
@@ -0,0 +1,21 @@
1
+ export interface MeeoviShipment {
2
+ id: number
3
+ created_at?: string | null
4
+ updated_at?: string | null
5
+ email_sent?: number | null
6
+ user?: string | null
7
+ order?: number | null
8
+ shipment_status?: string | null
9
+ shipping_label?: string | null
10
+ store_id?: number | null
11
+ total_qty?: number | null
12
+ total_weight?: number | null
13
+ code?: string | null
14
+ cost?: number | null
15
+ delivery_time?: string | null
16
+ delivery_window?: string | null
17
+ carrier_matrix?: Record<string, unknown> | null
18
+ // relations omitted: shipment_address[], shipment_comments[], shipment_products[], shipment_tracking[]
19
+ }
20
+
21
+
@@ -0,0 +1,10 @@
1
+ export interface MeeoviShop {
2
+ id: string
3
+ name: string
4
+ domain?: string | null
5
+ currency?: string | null
6
+ productsCount?: number
7
+ metadata?: Record<string, unknown>
8
+ }
9
+
10
+
@@ -0,0 +1,8 @@
1
+ export interface MeeoviStockItem {
2
+ productId: string
3
+ sku?: string | null
4
+ qty: number
5
+ isInStock: boolean
6
+ metadata?: Record<string, unknown>
7
+ }
8
+
@@ -0,0 +1,8 @@
1
+ export interface MeeoviStore {
2
+ id: string
3
+ name: string
4
+ currency: string
5
+ defaultLocale?: string | null
6
+ metadata?: Record<string, unknown>
7
+ }
8
+
@@ -0,0 +1,11 @@
1
+ export interface MeeoviSubscription {
2
+ id: number
3
+ status?: string | null
4
+ date_created?: string | null
5
+ date_updated?: string | null
6
+ subscription_number?: string | null
7
+ start_date?: string | null
8
+ end_date?: string | null
9
+ // relations omitted: subscriptions_directus_users[], subscriptions_products[]
10
+ }
11
+
@@ -0,0 +1,9 @@
1
+ export interface MeeoviTaxRate {
2
+ id: number
3
+ rate?: number | null
4
+ tax_class?: string | null
5
+ certifications?: Record<string, unknown> | null
6
+ age_gating?: string | null
7
+ // relations omitted: taxes_countries[], taxes_states[]
8
+ }
9
+
@@ -0,0 +1,8 @@
1
+ export interface MeeoviTaxRule {
2
+ id: string
3
+ name: string
4
+ taxRateId?: string | null
5
+ priority?: number
6
+ metadata?: Record<string, unknown>
7
+ }
8
+
@@ -0,0 +1,7 @@
1
+ export interface MeeoviTeam {
2
+ id: string
3
+ name: string
4
+ members?: string[]
5
+ metadata?: Record<string, unknown>
6
+ }
7
+
@@ -0,0 +1,13 @@
1
+ export interface MeeoviTransaction {
2
+ id: string
3
+ status?: string | null
4
+ date_created?: string | null
5
+ date_updated?: string | null
6
+ order?: number | null
7
+ payment_method?: string | null
8
+ transactions_parent_id?: string | null
9
+ type?: string | null
10
+ amount?: number | null
11
+ // relations omitted: transactions_currency[]
12
+ }
13
+
@@ -0,0 +1,8 @@
1
+ export interface MeeoviCustomerGroup {
2
+ id: string
3
+ name: string
4
+ description?: string | null
5
+ memberIds?: string[]
6
+ metadata?: Record<string, unknown>
7
+ }
8
+
@@ -0,0 +1,47 @@
1
+ export interface MeeoviUser {
2
+ instance_id?: string | null
3
+ id: string
4
+ aud?: string | null
5
+ role?: string | null
6
+ email?: string | null
7
+ encrypted_password?: string | null
8
+ email_confirmed_at?: string | null
9
+ invited_at?: string | null
10
+ confirmation_token?: string | null
11
+ confirmation_sent_at?: string | null
12
+ recovery_token?: string | null
13
+ recovery_sent_at?: string | null
14
+ email_change_token_new?: string | null
15
+ email_change?: string | null
16
+ email_change_sent_at?: string | null
17
+ last_sign_in_at?: string | null
18
+ raw_app_meta_data?: Record<string, unknown> | null
19
+ raw_user_meta_data?: Record<string, unknown> | null
20
+ is_super_admin?: boolean | null
21
+ created_at?: string | null
22
+ updated_at?: string | null
23
+ phone?: string | null
24
+ phone_confirmed_at?: string | null
25
+ phone_change?: string | null
26
+ phone_change_token?: string | null
27
+ phone_change_sent_at?: string | null
28
+ confirmed_at?: string | null
29
+ email_change_token_current?: string | null
30
+ email_change_confirm_status?: number | null
31
+ banned_until?: string | null
32
+ reauthentication_token?: string | null
33
+ reauthentication_sent_at?: string | null
34
+ is_sso_user?: boolean
35
+ deleted_at?: string | null
36
+ is_anonymous?: boolean
37
+ identities?: Record<string, unknown>[]
38
+ mfa_factors?: Record<string, unknown>[]
39
+ oauth_authorizations?: Record<string, unknown>[]
40
+ oauth_consents?: Record<string, unknown>[]
41
+ one_time_tokens?: Record<string, unknown>[]
42
+ sessions?: Record<string, unknown>[]
43
+ emoji_reactions?: Record<string, unknown>[]
44
+ profiles?: Record<string, unknown> | null
45
+ }
46
+
47
+
@@ -0,0 +1,31 @@
1
+ export interface MeeoviAsset {
2
+ id: string
3
+ storage: string
4
+ filename_disk?: string | null
5
+ filename_download: string
6
+ title?: string | null
7
+ type?: string | null
8
+ folder?: string | null
9
+ uploaded_by?: string | null
10
+ created_on: string
11
+ modified_by?: string | null
12
+ modified_on?: string
13
+ charset?: string | null
14
+ filesize?: string | null
15
+ width?: number | null
16
+ height?: number | null
17
+ duration?: number | null
18
+ embed?: string | null
19
+ description?: string | null
20
+ location?: string | null
21
+ tags?: string | null
22
+ metadata?: Record<string, unknown> | null
23
+ focal_point_x?: number | null
24
+ focal_point_y?: number | null
25
+ tus_id?: string | null
26
+ tus_data?: Record<string, unknown> | null
27
+ uploaded_on?: string | null
28
+ // relations omitted: arrays of connected records (announcements, brands, etc.)
29
+ }
30
+
31
+
@@ -0,0 +1,28 @@
1
+ export interface MeeoviPost {
2
+ id: number
3
+ user_created?: string | null
4
+ date_created?: string | null
5
+ content?: string | null
6
+ file?: string | null
7
+ username?: string | null
8
+ user_avatar?: string | null
9
+ image?: string | null
10
+ title?: string | null
11
+ type?: string | null
12
+ status?: string | null
13
+ audio?: string | null
14
+ slug?: string | null
15
+ author?: string | null
16
+ pinned_post?: boolean | null
17
+ auto_publish?: boolean | null
18
+ mastodon_id?: string | null
19
+ blsky_id?: string | null
20
+ target_audience?: string | null
21
+ visibility_scope?: string | null
22
+ link_preview?: Record<string, unknown> | null
23
+ content_type?: string | null
24
+ views?: number | null
25
+ // relations omitted: arrays and relation objects
26
+ }
27
+
28
+
@@ -0,0 +1,25 @@
1
+ export interface MeeoviProfile {
2
+ id: string
3
+ username?: string | null
4
+ birth_date?: string | null
5
+ description?: string | null
6
+ slug?: string | null
7
+ company?: string | null
8
+ activitypub_handle?: string | null
9
+ dropshipping_partner_id?: string | null
10
+ user?: string | null
11
+ commerce_auth_id?: string | null
12
+ cms_auth_id?: string | null
13
+ keycloak_id?: string | null
14
+ supabase_user_id?: string | null
15
+ role?: string | null
16
+ seller_requested?: boolean | null
17
+ seller_approved?: boolean | null
18
+ position?: string | null
19
+ links?: Record<string, unknown> | null
20
+ magento_customer_id?: string | null
21
+ avatar?: string | null
22
+ // relations omitted: media[], directus_files, users, etc.
23
+ }
24
+
25
+
@@ -0,0 +1,19 @@
1
+ export interface MeeoviSpace {
2
+ id: number
3
+ status: string
4
+ sort?: number | null
5
+ user_created?: string | null
6
+ date_created?: string | null
7
+ user_updated?: string | null
8
+ date_updated?: string | null
9
+ name?: string | null
10
+ description?: string | null
11
+ image?: string | null
12
+ media?: string | null
13
+ numberOfMembers?: string | null
14
+ groupType?: string | null
15
+ creator_id?: string | null
16
+ slug?: string | null
17
+ }
18
+
19
+
@@ -0,0 +1,8 @@
1
+ export function assert(
2
+ condition: unknown,
3
+ message: string
4
+ ): asserts condition {
5
+ if (!condition) {
6
+ throw new Error(message)
7
+ }
8
+ }
@@ -0,0 +1,21 @@
1
+ import { isObject } from './isObject'
2
+
3
+ export function deepMerge<T extends object, U extends object>(
4
+ target: T,
5
+ source: U
6
+ ): T & U {
7
+ const output: any = { ...target }
8
+
9
+ for (const key of Object.keys(source)) {
10
+ const sourceValue = (source as any)[key]
11
+ const targetValue = (target as any)[key]
12
+
13
+ if (isObject(sourceValue) && isObject(targetValue)) {
14
+ output[key] = deepMerge(targetValue, sourceValue)
15
+ } else {
16
+ output[key] = sourceValue
17
+ }
18
+ }
19
+
20
+ return output
21
+ }
@@ -0,0 +1,4 @@
1
+ export * from './deepMerge'
2
+ export * from './safeGet'
3
+ export * from './isObject'
4
+ export * from './assert'
@@ -0,0 +1,7 @@
1
+ export function isObject(value: unknown): value is Record<string, unknown> {
2
+ return (
3
+ typeof value === 'object' &&
4
+ value !== null &&
5
+ !Array.isArray(value)
6
+ )
7
+ }
@@ -0,0 +1,19 @@
1
+ import { defineNuxtModule, addPlugin, createResolver } from '@nuxt/kit'
2
+
3
+ // Module options TypeScript interface definition
4
+ export interface ModuleOptions {}
5
+
6
+ export default defineNuxtModule<ModuleOptions>({
7
+ meta: {
8
+ name: 'meeovi-shared',
9
+ configKey: 'meeoviShared',
10
+ },
11
+ // Default configuration options of the Nuxt module
12
+ defaults: {},
13
+ setup(_options, _nuxt) {
14
+ const resolver = createResolver(import.meta.url)
15
+
16
+ // Do not add the extension since the `.ts` will be transpiled to `.mjs` after `npm run prepack`
17
+ addPlugin(resolver.resolve('./runtime/plugin'))
18
+ },
19
+ })
@@ -0,0 +1,8 @@
1
+ export function safeGet<T, K extends keyof T>(
2
+ obj: T | null | undefined,
3
+ key: K,
4
+ fallback?: T[K]
5
+ ): T[K] | undefined {
6
+ if (obj == null) return fallback
7
+ return obj[key] ?? fallback
8
+ }
package/nuxt.config.ts CHANGED
@@ -1,5 +1,15 @@
1
1
  import {
2
- defineNuxtConfig
2
+ defineNuxtConfig
3
3
  } from 'nuxt/config'
4
4
 
5
- export default defineNuxtConfig({})
5
+ export default defineNuxtConfig({
6
+ $meta: {
7
+ name: 'shared',
8
+ },
9
+
10
+ modules: [
11
+ 'nuxt-tiptap-editor',
12
+ ],
13
+
14
+ runtimeConfig: {}
15
+ })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meeovi/layer-shared",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "Shared Layer for the Alternate Framework",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1",
@@ -21,6 +21,7 @@
21
21
  "lg-video": "^1.4.0",
22
22
  "lg-zoom": "^1.3.0",
23
23
  "lightgallery": "^2.9.0",
24
+ "nuxt-tiptap-editor": "^3.2.0",
24
25
  "tailwindcss": "^4.1.18",
25
26
  "vuetify-nuxt-module": "^0.18.8"
26
27
  },
@@ -1,8 +0,0 @@
1
- export interface GlobalSearchResult {
2
- id?: string;
3
- title?: string;
4
- type?: string;
5
- description?: string;
6
- image?: string;
7
- url?: string;
8
- }
@@ -1,7 +0,0 @@
1
- import type { BlockButton } from './block-button';
2
-
3
- export interface BlockButtonGroup {
4
- id: string;
5
- buttons: (string | BlockButton)[] | null;
6
- alignment: 'left' | 'center' | null;
7
- }
@@ -1,14 +0,0 @@
1
- import type { Post, Page } from '../content';
2
-
3
- export interface BlockButton {
4
- id: string;
5
- sort: number | null;
6
- type: ('pages' | 'posts' | 'external') | null;
7
- label: string | null;
8
- color: 'primary' | 'white' | 'gray' | 'white' | 'black';
9
- variant: 'solid' | 'outline' | 'ghost' | 'link' | 'soft';
10
- page: string | Page | null;
11
- post: string | Post | null;
12
- external_url: string | null;
13
- icon: string | null;
14
- }
@@ -1,20 +0,0 @@
1
- import type { File } from '../system';
2
- import type { BlockButtonGroup } from '.';
3
-
4
- export interface BlockColumn {
5
- headline?: string | null;
6
- id?: string;
7
- title?: string | null;
8
- rows?: (number | BlockColumnRow)[];
9
- }
10
-
11
- export interface BlockColumnRow {
12
- block_columns?: (string | BlockColumn) | null;
13
- content?: string | null;
14
- headline?: string | null;
15
- id?: string;
16
- image?: (string | File) | null;
17
- image_position?: string | null;
18
- title?: string | null;
19
- button_group?: (string | BlockButtonGroup) | null;
20
- }
@@ -1,10 +0,0 @@
1
- import type { BlockButtonGroup } from '.';
2
-
3
- export interface BlockCta {
4
- buttons?: { [key: string]: any } | null;
5
- content?: string | null;
6
- headline?: string | null;
7
- id?: string;
8
- title?: string | null;
9
- button_group?: (string | BlockButtonGroup) | null;
10
- }
@@ -1,4 +0,0 @@
1
- export interface BlockDivider {
2
- id?: string;
3
- title?: string | null;
4
- }
@@ -1,12 +0,0 @@
1
- export interface BlockFaq {
2
- faqs?: BlockFaqQuestion[] | null;
3
- headline?: string | null;
4
- id?: string;
5
- title?: string | null;
6
- alignment?: 'left' | 'center' | null;
7
- }
8
-
9
- export interface BlockFaqQuestion {
10
- title: string | null;
11
- answer: string | null;
12
- }
@@ -1,8 +0,0 @@
1
- import type { Form } from '../content';
2
-
3
- export interface BlockForm {
4
- form?: (string | Form) | null;
5
- headline?: string | null;
6
- id?: string;
7
- title?: string | null;
8
- }
@@ -1,14 +0,0 @@
1
- import type { File } from '../system';
2
-
3
- export interface BlockGallery {
4
- headline?: string | null;
5
- id?: string;
6
- title?: string | null;
7
- gallery_items?: BlockGalleryFile[] | null;
8
- }
9
- export interface BlockGalleryFile {
10
- block_gallery?: (string | BlockGallery) | null;
11
- directus_files_id?: (string | File) | null;
12
- id?: number;
13
- sort?: number | null;
14
- }
@@ -1,12 +0,0 @@
1
- import type { File } from '../system';
2
- import type { BlockButtonGroup } from '.';
3
-
4
- export interface BlockHero {
5
- id?: string;
6
- title?: string | null;
7
- headline?: string | null;
8
- content?: string | null;
9
- image?: (string | File) | null;
10
- image_position?: 'left' | 'right' | null;
11
- button_group?: (string | BlockButtonGroup) | null;
12
- }
@@ -1,4 +0,0 @@
1
- export interface BlockHtml {
2
- id?: string;
3
- raw_html?: string | null;
4
- }
@@ -1,14 +0,0 @@
1
- import type { File } from '../system';
2
-
3
- export interface BlockLogocloud {
4
- headline?: string | null;
5
- id?: string;
6
- title?: string | null;
7
- logos?: (string | BlockLogocloudFile)[];
8
- }
9
- export interface BlockLogocloudFile {
10
- id?: string;
11
- sort?: number | null;
12
- block_logocloud_id?: (string | BlockLogocloud) | null;
13
- directus_files_id?: (string | File) | null;
14
- }
@@ -1,11 +0,0 @@
1
- import type { File } from '../system';
2
-
3
- export interface BlockQuote {
4
- background_color?: string | null;
5
- content?: string | null;
6
- headline?: string | null;
7
- id?: string;
8
- image?: (string | File) | null;
9
- subtitle?: string | null;
10
- title?: string | null;
11
- }
@@ -1,7 +0,0 @@
1
- export interface BlockRichtext {
2
- content?: string | null;
3
- headline?: string | null;
4
- id?: string;
5
- title?: string | null;
6
- alignment?: 'left' | 'center' | null;
7
- }
@@ -1,22 +0,0 @@
1
- import type { File } from '../system';
2
- import type { BlockButtonGroup } from '.';
3
-
4
- export interface BlockStep {
5
- id?: string;
6
- title?: string | null;
7
- headline?: string | null;
8
- /** If enabled, image position is alternated between left and right. */
9
- alternate_image_position?: boolean;
10
- /** Show the step numbers on the website. For example: (Step 1, Step 2, etc) */
11
- show_step_numbers?: boolean | null;
12
- steps?: (number | BlockStepItem)[];
13
- }
14
- export interface BlockStepItem {
15
- id?: string;
16
- title?: string | null;
17
- content?: string | null;
18
- image?: (string | File) | null;
19
- sort?: number | null;
20
- block_steps?: (string | BlockStep) | null;
21
- button_group?: (string | BlockButtonGroup) | null;
22
- }
@@ -1,6 +0,0 @@
1
- export interface BlockTeam {
2
- content?: string | null;
3
- headline?: string | null;
4
- id?: string;
5
- title?: string | null;
6
- }
@@ -1,14 +0,0 @@
1
- import type { Testimonial } from '../content';
2
-
3
- export interface BlockTestimonial {
4
- headline?: string | null;
5
- id?: string;
6
- title?: string | null;
7
- testimonials?: (string | BlockTestimonialItem)[];
8
- }
9
- export interface BlockTestimonialItem {
10
- block_testimonials_slider_id?: (string | BlockTestimonial) | null;
11
- id?: string;
12
- sort?: number | null;
13
- testimonials_id?: (string | Testimonial) | null;
14
- }
@@ -1,10 +0,0 @@
1
- import type { File } from '../system';
2
-
3
- export interface BlockVideo {
4
- headline?: string | null;
5
- id?: string;
6
- title?: string | null;
7
- type?: string | null;
8
- video_file?: (string | File) | null;
9
- video_url?: string | null;
10
- }