@conduction/nextcloud-vue 0.1.0-beta.3 → 0.1.0-beta.4

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 (152) hide show
  1. package/README.md +226 -226
  2. package/dist/nextcloud-vue.cjs.js +60455 -8755
  3. package/dist/nextcloud-vue.cjs.js.map +1 -1
  4. package/dist/nextcloud-vue.css +2062 -528
  5. package/dist/nextcloud-vue.esm.js +60411 -8731
  6. package/dist/nextcloud-vue.esm.js.map +1 -1
  7. package/package.json +75 -62
  8. package/src/components/CnActionsBar/CnActionsBar.vue +235 -225
  9. package/src/components/CnActionsBar/index.js +1 -1
  10. package/src/components/CnAdvancedFormDialog/CnAdvancedFormDialog.vue +579 -0
  11. package/src/components/CnAdvancedFormDialog/CnDataTab.vue +217 -0
  12. package/src/components/CnAdvancedFormDialog/CnMetadataTab.vue +121 -0
  13. package/src/components/CnAdvancedFormDialog/CnPropertiesTab.vue +418 -0
  14. package/src/components/CnAdvancedFormDialog/CnPropertyValueCell.vue +247 -0
  15. package/src/components/CnAdvancedFormDialog/index.js +1 -0
  16. package/src/components/CnCardGrid/CnCardGrid.vue +152 -152
  17. package/src/components/CnCardGrid/index.js +1 -1
  18. package/src/components/CnCellRenderer/CnCellRenderer.vue +132 -132
  19. package/src/components/CnCellRenderer/index.js +1 -1
  20. package/src/components/CnChartWidget/CnChartWidget.vue +320 -0
  21. package/src/components/CnChartWidget/index.js +1 -0
  22. package/src/components/CnConfigurationCard/CnConfigurationCard.vue +77 -77
  23. package/src/components/CnConfigurationCard/index.js +1 -1
  24. package/src/components/CnDashboardGrid/CnDashboardGrid.vue +225 -0
  25. package/src/components/CnDashboardGrid/index.js +1 -0
  26. package/src/components/CnDashboardPage/CnDashboardPage.vue +390 -0
  27. package/src/components/CnDashboardPage/index.js +1 -0
  28. package/src/components/CnDataTable/CnDataTable.vue +349 -349
  29. package/src/components/CnDataTable/index.js +1 -1
  30. package/src/components/CnDetailCard/CnDetailCard.vue +214 -0
  31. package/src/components/CnDetailCard/index.js +1 -0
  32. package/src/components/CnDetailPage/CnDetailPage.vue +281 -0
  33. package/src/components/CnDetailPage/index.js +1 -0
  34. package/src/components/CnFacetSidebar/CnFacetSidebar.vue +231 -223
  35. package/src/components/CnFacetSidebar/index.js +1 -1
  36. package/src/components/CnFilterBar/CnFilterBar.vue +152 -152
  37. package/src/components/CnFilterBar/index.js +1 -1
  38. package/src/components/CnIcon/CnIcon.vue +89 -89
  39. package/src/components/CnIcon/index.js +1 -1
  40. package/src/components/CnIndexPage/CnIndexPage.vue +874 -816
  41. package/src/components/CnIndexPage/index.js +1 -1
  42. package/src/components/CnIndexSidebar/CnIndexSidebar.vue +503 -484
  43. package/src/components/CnIndexSidebar/index.js +1 -1
  44. package/src/components/CnItemCard/CnItemCard.vue +132 -0
  45. package/src/components/CnItemCard/index.js +1 -0
  46. package/src/components/CnKpiGrid/CnKpiGrid.vue +89 -89
  47. package/src/components/CnKpiGrid/index.js +1 -1
  48. package/src/components/CnMassActionBar/CnMassActionBar.vue +160 -160
  49. package/src/components/CnMassActionBar/index.js +1 -1
  50. package/src/components/CnMassCopyDialog/CnMassCopyDialog.vue +320 -320
  51. package/src/components/CnMassCopyDialog/index.js +1 -1
  52. package/src/components/CnMassDeleteDialog/CnMassDeleteDialog.vue +238 -238
  53. package/src/components/CnMassDeleteDialog/index.js +1 -1
  54. package/src/components/CnMassExportDialog/CnMassExportDialog.vue +190 -190
  55. package/src/components/CnMassExportDialog/index.js +1 -1
  56. package/src/components/CnMassImportDialog/CnMassImportDialog.vue +491 -491
  57. package/src/components/CnMassImportDialog/index.js +1 -1
  58. package/src/components/CnNoteCard/CnNoteCard.vue +149 -0
  59. package/src/components/CnNoteCard/index.js +1 -0
  60. package/src/components/CnNotesCard/CnNotesCard.vue +413 -0
  61. package/src/components/CnNotesCard/index.js +1 -0
  62. package/src/components/CnObjectCard/CnObjectCard.vue +292 -292
  63. package/src/components/CnObjectCard/index.js +1 -1
  64. package/src/components/CnObjectSidebar/CnObjectSidebar.vue +876 -0
  65. package/src/components/CnObjectSidebar/index.js +1 -0
  66. package/src/components/CnPageHeader/CnPageHeader.vue +57 -57
  67. package/src/components/CnPageHeader/index.js +1 -1
  68. package/src/components/CnPagination/CnPagination.vue +252 -252
  69. package/src/components/CnPagination/index.js +1 -1
  70. package/src/components/CnRowActions/CnRowActions.vue +73 -73
  71. package/src/components/CnRowActions/index.js +1 -1
  72. package/src/components/CnSchemaFormDialog/CnSchemaConfigurationTab.vue +226 -0
  73. package/src/components/CnSchemaFormDialog/CnSchemaFormDialog.vue +787 -0
  74. package/src/components/CnSchemaFormDialog/CnSchemaPropertiesTab.vue +305 -0
  75. package/src/components/CnSchemaFormDialog/CnSchemaPropertyActions.vue +1398 -0
  76. package/src/components/CnSchemaFormDialog/CnSchemaSecurityTab.vue +236 -0
  77. package/src/components/CnSchemaFormDialog/index.js +1 -0
  78. package/src/components/CnSettingsCard/CnSettingsCard.vue +92 -92
  79. package/src/components/CnSettingsCard/index.js +1 -1
  80. package/src/components/CnSettingsSection/CnSettingsSection.vue +266 -266
  81. package/src/components/CnSettingsSection/index.js +1 -1
  82. package/src/components/CnStatsBlock/CnStatsBlock.vue +420 -366
  83. package/src/components/CnStatsBlock/index.js +1 -1
  84. package/src/components/CnStatusBadge/CnStatusBadge.vue +77 -77
  85. package/src/components/CnStatusBadge/index.js +1 -1
  86. package/src/components/CnTabbedFormDialog/CnTabbedFormDialog.vue +540 -0
  87. package/src/components/CnTabbedFormDialog/index.js +1 -0
  88. package/src/components/CnTasksCard/CnTasksCard.vue +373 -0
  89. package/src/components/CnTasksCard/index.js +1 -0
  90. package/src/components/CnTileWidget/CnTileWidget.vue +159 -0
  91. package/src/components/CnTileWidget/index.js +1 -0
  92. package/src/components/CnTimelineStages/CnTimelineStages.vue +292 -0
  93. package/src/components/CnTimelineStages/index.js +1 -0
  94. package/src/components/CnUserActionMenu/CnUserActionMenu.vue +435 -0
  95. package/src/components/CnUserActionMenu/index.js +1 -0
  96. package/src/components/CnVersionInfoCard/CnVersionInfoCard.vue +312 -312
  97. package/src/components/CnVersionInfoCard/index.js +1 -1
  98. package/src/components/CnWidgetRenderer/CnWidgetRenderer.vue +180 -0
  99. package/src/components/CnWidgetRenderer/index.js +1 -0
  100. package/src/components/CnWidgetWrapper/CnWidgetWrapper.vue +211 -0
  101. package/src/components/CnWidgetWrapper/index.js +1 -0
  102. package/src/components/index.js +43 -29
  103. package/src/composables/index.js +4 -3
  104. package/src/composables/useDashboardView.js +240 -0
  105. package/src/composables/useDetailView.js +289 -132
  106. package/src/composables/useListView.js +363 -362
  107. package/src/composables/useSubResource.js +142 -142
  108. package/src/constants/metadata.js +30 -30
  109. package/src/css/CnSchemaFormDialog.css +546 -0
  110. package/src/css/__sample_nextcloud_tokens.css +110 -0
  111. package/src/css/actions-bar.css +48 -48
  112. package/src/css/badge.css +51 -51
  113. package/src/css/card.css +128 -128
  114. package/src/css/dashboard.css +70 -0
  115. package/src/css/detail-page.css +168 -0
  116. package/src/css/detail.css +68 -68
  117. package/src/css/index-page.css +44 -32
  118. package/src/css/index-sidebar.css +193 -187
  119. package/src/css/index.css +16 -12
  120. package/src/css/layout.css +90 -90
  121. package/src/css/page-header.css +33 -33
  122. package/src/css/pagination.css +72 -72
  123. package/src/css/table.css +142 -142
  124. package/src/css/timeline-stages.css +218 -0
  125. package/src/css/utilities.css +46 -46
  126. package/src/index.js +72 -53
  127. package/src/store/createSubResourcePlugin.js +135 -135
  128. package/src/store/index.js +3 -3
  129. package/src/store/plugins/auditTrails.js +17 -17
  130. package/src/store/plugins/files.js +250 -186
  131. package/src/store/plugins/index.js +7 -5
  132. package/src/store/plugins/lifecycle.js +180 -180
  133. package/src/store/plugins/relations.js +68 -68
  134. package/src/store/plugins/search.js +372 -0
  135. package/src/store/plugins/selection.js +104 -0
  136. package/src/store/useObjectStore.js +829 -686
  137. package/src/types/auditTrail.d.ts +32 -32
  138. package/src/types/file.d.ts +23 -23
  139. package/src/types/index.d.ts +35 -35
  140. package/src/types/notification.d.ts +36 -36
  141. package/src/types/object.d.ts +40 -40
  142. package/src/types/organisation.d.ts +41 -41
  143. package/src/types/register.d.ts +25 -25
  144. package/src/types/schema.d.ts +39 -39
  145. package/src/types/shared.d.ts +79 -79
  146. package/src/types/source.d.ts +14 -14
  147. package/src/types/task.d.ts +31 -31
  148. package/src/utils/errors.js +96 -96
  149. package/src/utils/headers.js +68 -50
  150. package/src/utils/id.js +13 -0
  151. package/src/utils/index.js +3 -3
  152. package/src/utils/schema.js +422 -419
@@ -1,32 +1,32 @@
1
- /**
2
- * OpenRegister Audit Trail entity type.
3
- *
4
- * Records changes made to objects for compliance and history tracking.
5
- */
6
- export interface TAuditTrail {
7
- id: number
8
- uuid: string
9
- schema: number
10
- register: number
11
- object: number
12
- objectUuid: string | null
13
- registerUuid: string | null
14
- schemaUuid: string | null
15
- action: string
16
- changed: Record<string, unknown> | unknown[]
17
- user: string
18
- userName: string
19
- session: string
20
- request: string
21
- ipAddress: string
22
- version: string | null
23
- created: string
24
- organisationId: string | null
25
- organisationIdType: string | null
26
- processingActivityId: string | null
27
- processingActivityUrl: string | null
28
- processingId: string | null
29
- confidentiality: string | null
30
- retentionPeriod: string | null
31
- size: number
32
- }
1
+ /**
2
+ * OpenRegister Audit Trail entity type.
3
+ *
4
+ * Records changes made to objects for compliance and history tracking.
5
+ */
6
+ export interface TAuditTrail {
7
+ id: number
8
+ uuid: string
9
+ schema: number
10
+ register: number
11
+ object: number
12
+ objectUuid: string | null
13
+ registerUuid: string | null
14
+ schemaUuid: string | null
15
+ action: string
16
+ changed: Record<string, unknown> | unknown[]
17
+ user: string
18
+ userName: string
19
+ session: string
20
+ request: string
21
+ ipAddress: string
22
+ version: string | null
23
+ created: string
24
+ organisationId: string | null
25
+ organisationIdType: string | null
26
+ processingActivityId: string | null
27
+ processingActivityUrl: string | null
28
+ processingId: string | null
29
+ confidentiality: string | null
30
+ retentionPeriod: string | null
31
+ size: number
32
+ }
@@ -1,23 +1,23 @@
1
- /**
2
- * OpenRegister File entity type.
3
- *
4
- * Represents a file attached to an object. Files are stored in Nextcloud's
5
- * file system and referenced by the object's files sub-resource.
6
- */
7
- export interface TFile {
8
- id: string | number
9
- uuid?: string
10
- name: string
11
- mimeType: string
12
- size: number
13
- path?: string
14
- url?: string
15
- downloadUrl?: string
16
- shareUrl?: string | null
17
- tags?: string[]
18
- published?: string | null
19
- depublished?: string | null
20
- owner?: string
21
- created: string
22
- updated?: string
23
- }
1
+ /**
2
+ * OpenRegister File entity type.
3
+ *
4
+ * Represents a file attached to an object. Files are stored in Nextcloud's
5
+ * file system and referenced by the object's files sub-resource.
6
+ */
7
+ export interface TFile {
8
+ id: string | number
9
+ uuid?: string
10
+ name: string
11
+ mimeType: string
12
+ size: number
13
+ path?: string
14
+ url?: string
15
+ downloadUrl?: string
16
+ shareUrl?: string | null
17
+ tags?: string[]
18
+ published?: string | null
19
+ depublished?: string | null
20
+ owner?: string
21
+ created: string
22
+ updated?: string
23
+ }
@@ -1,35 +1,35 @@
1
- /**
2
- * TypeScript type definitions for OpenRegister entities and shared utilities.
3
- *
4
- * @example
5
- * // Import specific types
6
- * import type { TObject, TSchema, TRegister } from '@conduction/nextcloud-vue/src/types'
7
- *
8
- * // Import shared utilities
9
- * import type { TPaginated, TApiError, TQuota } from '@conduction/nextcloud-vue/src/types'
10
- */
11
-
12
- // Shared utility types
13
- export type {
14
- TPaginated,
15
- TEmptyPaginated,
16
- TQuota,
17
- TUsage,
18
- TEntityStats,
19
- TCrudAuthorization,
20
- TApiError,
21
- TObjectPath,
22
- } from './shared'
23
-
24
- // Core entity types
25
- export type { TObject } from './object'
26
- export type { TSchema, TSchemaConfiguration } from './schema'
27
- export type { TRegister } from './register'
28
- export type { TAuditTrail } from './auditTrail'
29
- export type { TSource } from './source'
30
- export type { TOrganisation, TOrganisationAuthorization } from './organisation'
31
-
32
- // Sub-resource entity types
33
- export type { TFile } from './file'
34
- export type { TTask, TTaskPriority, TTaskStatus } from './task'
35
- export type { TNotification, TNotificationType, TNotificationPriority } from './notification'
1
+ /**
2
+ * TypeScript type definitions for OpenRegister entities and shared utilities.
3
+ *
4
+ * @example
5
+ * // Import specific types
6
+ * import type { TObject, TSchema, TRegister } from '@conduction/nextcloud-vue/src/types'
7
+ *
8
+ * // Import shared utilities
9
+ * import type { TPaginated, TApiError, TQuota } from '@conduction/nextcloud-vue/src/types'
10
+ */
11
+
12
+ // Shared utility types
13
+ export type {
14
+ TPaginated,
15
+ TEmptyPaginated,
16
+ TQuota,
17
+ TUsage,
18
+ TEntityStats,
19
+ TCrudAuthorization,
20
+ TApiError,
21
+ TObjectPath,
22
+ } from './shared'
23
+
24
+ // Core entity types
25
+ export type { TObject } from './object'
26
+ export type { TSchema, TSchemaConfiguration } from './schema'
27
+ export type { TRegister } from './register'
28
+ export type { TAuditTrail } from './auditTrail'
29
+ export type { TSource } from './source'
30
+ export type { TOrganisation, TOrganisationAuthorization } from './organisation'
31
+
32
+ // Sub-resource entity types
33
+ export type { TFile } from './file'
34
+ export type { TTask, TTaskPriority, TTaskStatus } from './task'
35
+ export type { TNotification, TNotificationType, TNotificationPriority } from './notification'
@@ -1,36 +1,36 @@
1
- /**
2
- * OpenRegister Notification entity type.
3
- *
4
- * Represents a notification related to an object (e.g., status changes,
5
- * assignments, deadline alerts). Typically delivered via Nextcloud's
6
- * notification system.
7
- */
8
- export interface TNotification {
9
- id: string | number
10
- uuid?: string
11
- type: TNotificationType
12
- title: string
13
- message?: string
14
- objectId?: string
15
- objectUuid?: string
16
- objectType?: string
17
- userId?: string
18
- priority?: TNotificationPriority
19
- read?: boolean
20
- actionUrl?: string | null
21
- created: string
22
- updated?: string
23
- }
24
-
25
- /** Notification type categories. */
26
- export type TNotificationType =
27
- | 'status-change'
28
- | 'assignment'
29
- | 'deadline'
30
- | 'mention'
31
- | 'comment'
32
- | 'system'
33
- | string
34
-
35
- /** Notification priority levels. */
36
- export type TNotificationPriority = 'urgent' | 'high' | 'normal' | 'low'
1
+ /**
2
+ * OpenRegister Notification entity type.
3
+ *
4
+ * Represents a notification related to an object (e.g., status changes,
5
+ * assignments, deadline alerts). Typically delivered via Nextcloud's
6
+ * notification system.
7
+ */
8
+ export interface TNotification {
9
+ id: string | number
10
+ uuid?: string
11
+ type: TNotificationType
12
+ title: string
13
+ message?: string
14
+ objectId?: string
15
+ objectUuid?: string
16
+ objectType?: string
17
+ userId?: string
18
+ priority?: TNotificationPriority
19
+ read?: boolean
20
+ actionUrl?: string | null
21
+ created: string
22
+ updated?: string
23
+ }
24
+
25
+ /** Notification type categories. */
26
+ export type TNotificationType =
27
+ | 'status-change'
28
+ | 'assignment'
29
+ | 'deadline'
30
+ | 'mention'
31
+ | 'comment'
32
+ | 'system'
33
+ | string
34
+
35
+ /** Notification priority levels. */
36
+ export type TNotificationPriority = 'urgent' | 'high' | 'normal' | 'low'
@@ -1,40 +1,40 @@
1
- /**
2
- * OpenRegister Object entity type.
3
- *
4
- * An object is the core data entity stored in a register under a schema.
5
- * The `@self` key contains system metadata, while other keys are schema properties.
6
- */
7
- export interface TObject {
8
- '@self': {
9
- id: string
10
- name: string | null
11
- description: string | null
12
- uuid: string
13
- uri: string
14
- version: string | null
15
- register: string
16
- schema: string
17
- schemaVersion: string | null
18
- relations: string | unknown[] | null
19
- files: string | unknown[] | null
20
- folder: string | null
21
- textRepresentation: string | null
22
- locked: unknown[] | null
23
- owner: string | null
24
- authorization: unknown[] | null
25
- application: string | null
26
- organisation: string | null
27
- groups: unknown[] | null
28
- validation: unknown[] | null
29
- deleted: unknown[] | null
30
- geo: unknown[] | null
31
- retention: unknown[] | null
32
- size: string | null
33
- updated: string
34
- created: string
35
- published: string | null
36
- depublished: string | null
37
- }
38
- /** Schema-defined properties (dynamic keys). */
39
- [key: string]: unknown
40
- }
1
+ /**
2
+ * OpenRegister Object entity type.
3
+ *
4
+ * An object is the core data entity stored in a register under a schema.
5
+ * The `@self` key contains system metadata, while other keys are schema properties.
6
+ */
7
+ export interface TObject {
8
+ '@self': {
9
+ id: string
10
+ name: string | null
11
+ description: string | null
12
+ uuid: string
13
+ uri: string
14
+ version: string | null
15
+ register: string
16
+ schema: string
17
+ schemaVersion: string | null
18
+ relations: string | unknown[] | null
19
+ files: string | unknown[] | null
20
+ folder: string | null
21
+ textRepresentation: string | null
22
+ locked: unknown[] | null
23
+ owner: string | null
24
+ authorization: unknown[] | null
25
+ application: string | null
26
+ organisation: string | null
27
+ groups: unknown[] | null
28
+ validation: unknown[] | null
29
+ deleted: unknown[] | null
30
+ geo: unknown[] | null
31
+ retention: unknown[] | null
32
+ size: string | null
33
+ updated: string
34
+ created: string
35
+ published: string | null
36
+ depublished: string | null
37
+ }
38
+ /** Schema-defined properties (dynamic keys). */
39
+ [key: string]: unknown
40
+ }
@@ -1,41 +1,41 @@
1
- import type { TQuota, TUsage, TCrudAuthorization } from './shared'
2
-
3
- /**
4
- * OpenRegister Organisation entity type.
5
- *
6
- * Organisations group users and control access to registers, schemas, and objects.
7
- */
8
- export interface TOrganisation {
9
- id?: number
10
- uuid?: string
11
- name: string
12
- slug?: string
13
- description?: string
14
- users?: string[]
15
- groups?: string[]
16
- isDefault?: boolean
17
- active?: boolean
18
- owner?: string
19
- parent?: string | null
20
- children?: string[]
21
- quota?: TQuota
22
- usage?: TUsage
23
- authorization?: TOrganisationAuthorization
24
- created?: string
25
- updated?: string
26
- }
27
-
28
- /** Organisation-level authorization with per-entity-type CRUD + special permissions. */
29
- export interface TOrganisationAuthorization {
30
- register?: TCrudAuthorization
31
- schema?: TCrudAuthorization
32
- object?: TCrudAuthorization
33
- view?: TCrudAuthorization
34
- agent?: TCrudAuthorization
35
- configuration?: TCrudAuthorization
36
- application?: TCrudAuthorization
37
- object_publish?: string[]
38
- agent_use?: string[]
39
- dashboard_view?: string[]
40
- llm_use?: string[]
41
- }
1
+ import type { TQuota, TUsage, TCrudAuthorization } from './shared'
2
+
3
+ /**
4
+ * OpenRegister Organisation entity type.
5
+ *
6
+ * Organisations group users and control access to registers, schemas, and objects.
7
+ */
8
+ export interface TOrganisation {
9
+ id?: number
10
+ uuid?: string
11
+ name: string
12
+ slug?: string
13
+ description?: string
14
+ users?: string[]
15
+ groups?: string[]
16
+ isDefault?: boolean
17
+ active?: boolean
18
+ owner?: string
19
+ parent?: string | null
20
+ children?: string[]
21
+ quota?: TQuota
22
+ usage?: TUsage
23
+ authorization?: TOrganisationAuthorization
24
+ created?: string
25
+ updated?: string
26
+ }
27
+
28
+ /** Organisation-level authorization with per-entity-type CRUD + special permissions. */
29
+ export interface TOrganisationAuthorization {
30
+ register?: TCrudAuthorization
31
+ schema?: TCrudAuthorization
32
+ object?: TCrudAuthorization
33
+ view?: TCrudAuthorization
34
+ agent?: TCrudAuthorization
35
+ configuration?: TCrudAuthorization
36
+ application?: TCrudAuthorization
37
+ object_publish?: string[]
38
+ agent_use?: string[]
39
+ dashboard_view?: string[]
40
+ llm_use?: string[]
41
+ }
@@ -1,25 +1,25 @@
1
- import type { TQuota, TUsage, TEntityStats } from './shared'
2
-
3
- /**
4
- * OpenRegister Register entity type.
5
- *
6
- * A register is a collection of schemas and their objects, backed by a data source.
7
- */
8
- export interface TRegister {
9
- id?: string
10
- title: string
11
- description: string
12
- schemas: string[]
13
- source: string
14
- databaseId: string
15
- published?: string | null
16
- depublished?: string | null
17
- tablePrefix?: string
18
- updated?: string
19
- created: string
20
- slug: string
21
- groups?: string[]
22
- quota?: TQuota
23
- usage?: TUsage
24
- stats?: TEntityStats
25
- }
1
+ import type { TQuota, TUsage, TEntityStats } from './shared'
2
+
3
+ /**
4
+ * OpenRegister Register entity type.
5
+ *
6
+ * A register is a collection of schemas and their objects, backed by a data source.
7
+ */
8
+ export interface TRegister {
9
+ id?: string
10
+ title: string
11
+ description: string
12
+ schemas: string[]
13
+ source: string
14
+ databaseId: string
15
+ published?: string | null
16
+ depublished?: string | null
17
+ tablePrefix?: string
18
+ updated?: string
19
+ created: string
20
+ slug: string
21
+ groups?: string[]
22
+ quota?: TQuota
23
+ usage?: TUsage
24
+ stats?: TEntityStats
25
+ }
@@ -1,39 +1,39 @@
1
- import type { TEntityStats } from './shared'
2
-
3
- /**
4
- * OpenRegister Schema entity type.
5
- *
6
- * Defines the structure and validation rules for objects in a register.
7
- */
8
- export interface TSchema {
9
- id?: string
10
- title: string
11
- version: string
12
- description: string
13
- summary: string
14
- required: string[]
15
- properties: Record<string, unknown>
16
- archive: Record<string, unknown>
17
- updated: string
18
- created: string
19
- slug: string
20
- configuration?: TSchemaConfiguration
21
- hardValidation: boolean
22
- maxDepth: number
23
- authorization?: Record<string, string[]>
24
- extend?: string
25
- stats?: TEntityStats
26
- }
27
-
28
- /** Schema configuration options. */
29
- export interface TSchemaConfiguration {
30
- objectNameField?: string
31
- objectDescriptionField?: string
32
- objectSummaryField?: string
33
- objectImageField?: string
34
- allowFiles?: boolean
35
- allowedTags?: string[]
36
- unique?: boolean
37
- facetCacheTtl?: number
38
- autoPublish?: boolean
39
- }
1
+ import type { TEntityStats } from './shared'
2
+
3
+ /**
4
+ * OpenRegister Schema entity type.
5
+ *
6
+ * Defines the structure and validation rules for objects in a register.
7
+ */
8
+ export interface TSchema {
9
+ id?: string
10
+ title: string
11
+ version: string
12
+ description: string
13
+ summary: string
14
+ required: string[]
15
+ properties: Record<string, unknown>
16
+ archive: Record<string, unknown>
17
+ updated: string
18
+ created: string
19
+ slug: string
20
+ configuration?: TSchemaConfiguration
21
+ hardValidation: boolean
22
+ maxDepth: number
23
+ authorization?: Record<string, string[]>
24
+ extend?: string
25
+ stats?: TEntityStats
26
+ }
27
+
28
+ /** Schema configuration options. */
29
+ export interface TSchemaConfiguration {
30
+ objectNameField?: string
31
+ objectDescriptionField?: string
32
+ objectSummaryField?: string
33
+ objectImageField?: string
34
+ allowFiles?: boolean
35
+ allowedTags?: string[]
36
+ unique?: boolean
37
+ facetCacheTtl?: number
38
+ autoPublish?: boolean
39
+ }