@arpproject/recrate 0.1.7 → 0.1.8

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 (188) hide show
  1. package/dist/index.d.ts +3 -2
  2. package/dist/recrate.css +4 -4
  3. package/dist/recrate.es.js +34674 -114061
  4. package/package.json +41 -32
  5. package/.eslintrc.json +0 -37
  6. package/.storybook/main.ts +0 -40
  7. package/.storybook/preview.tsx +0 -46
  8. package/babel.config.json +0 -5
  9. package/docker-compose.yml +0 -30
  10. package/docs/.nojekyll +0 -1
  11. package/docs/assets/highlight.css +0 -99
  12. package/docs/assets/icons.js +0 -18
  13. package/docs/assets/icons.svg +0 -1
  14. package/docs/assets/main.js +0 -60
  15. package/docs/assets/navigation.js +0 -1
  16. package/docs/assets/search.js +0 -1
  17. package/docs/assets/style.css +0 -1448
  18. package/docs/classes/src_crate_builder_CrateManager_crate_manager.CrateManager.html +0 -240
  19. package/docs/classes/src_crate_builder_CrateManager_profile_manager.ProfileManager.html +0 -42
  20. package/docs/classes/src_crate_builder_editor_state.EditorState.html +0 -28
  21. package/docs/classes/src_crate_builder_types.CrateManagerType.html +0 -57
  22. package/docs/classes/src_crate_builder_types.ProfileManagerType.html +0 -13
  23. package/docs/functions/src_crate_builder_CrateManager_lib.isURL.html +0 -2
  24. package/docs/functions/src_crate_builder_CrateManager_lib.mintNewCrate.html +0 -3
  25. package/docs/functions/src_crate_builder_CrateManager_lib.normalise.html +0 -5
  26. package/docs/functions/src_crate_builder_CrateManager_lib.normaliseEntityType.html +0 -1
  27. package/docs/index.html +0 -58
  28. package/docs/interfaces/src_crate_builder_types.NormalisedCrate.html +0 -3
  29. package/docs/interfaces/src_crate_builder_types.NormalisedEntityDefinition.html +0 -4
  30. package/docs/interfaces/src_crate_builder_types.NormalisedProfile.html +0 -9
  31. package/docs/interfaces/src_crate_builder_types.ProfileLayout.html +0 -2
  32. package/docs/interfaces/src_crate_builder_types.ProfileLayoutGroup.html +0 -9
  33. package/docs/interfaces/src_crate_builder_types.UnverifiedCrate.html +0 -3
  34. package/docs/interfaces/src_crate_builder_types.UnverifiedEntityDefinition.html +0 -4
  35. package/docs/modules/src_crate_builder_CrateManager_crate_manager.html +0 -2
  36. package/docs/modules/src_crate_builder_CrateManager_lib.html +0 -6
  37. package/docs/modules/src_crate_builder_CrateManager_profile_manager.html +0 -2
  38. package/docs/modules/src_crate_builder_editor_state.html +0 -2
  39. package/docs/modules/src_crate_builder_types.html +0 -16
  40. package/docs/types/src_crate_builder_types.EntityReference.html +0 -1
  41. package/docs/types/src_crate_builder_types.NormalisedContext.html +0 -1
  42. package/docs/types/src_crate_builder_types.PrimitiveType.html +0 -1
  43. package/docs/types/src_crate_builder_types.ProfileAssociation.html +0 -1
  44. package/docs/types/src_crate_builder_types.ProfileInput.html +0 -1
  45. package/docs/types/src_crate_builder_types.UnverifiedContext.html +0 -1
  46. package/docs/variables/src_crate_builder_CrateManager_lib.urlProtocols.html +0 -1
  47. package/index.html +0 -13
  48. package/load-data-packs.cjs +0 -38
  49. package/postcss.config.cjs +0 -6
  50. package/public/favicon.ico +0 -0
  51. package/public/index.html +0 -43
  52. package/public/logo192.png +0 -0
  53. package/public/logo512.png +0 -0
  54. package/public/manifest.json +0 -25
  55. package/public/marker-icon.png +0 -0
  56. package/public/marker-shadow.png +0 -0
  57. package/public/robots.txt +0 -3
  58. package/react-app-env.d.ts +0 -1
  59. package/rollup.config.js +0 -26
  60. package/src/app/App.tsx +0 -13
  61. package/src/app/EmbeddedComponent.tsx +0 -432
  62. package/src/app/index.html +0 -20
  63. package/src/app/index.tsx +0 -19
  64. package/src/app/lookup.ts +0 -141
  65. package/src/app/override-styles.css +0 -96
  66. package/src/crate-builder/CrateManager/contexts/1.1-context.jsonld +0 -2660
  67. package/src/crate-builder/CrateManager/contexts/1.2-DRAFT-context.jsonld +0 -2918
  68. package/src/crate-builder/CrateManager/contexts.ts +0 -42
  69. package/src/crate-builder/CrateManager/crate-manager-benchmarking.spec.ts +0 -31
  70. package/src/crate-builder/CrateManager/crate-manager-loading-exporting.spec.ts +0 -431
  71. package/src/crate-builder/CrateManager/crate-manager-operations.spec.ts +0 -298
  72. package/src/crate-builder/CrateManager/crate-manager.spec.ts +0 -2336
  73. package/src/crate-builder/CrateManager/crate-manager.ts +0 -2111
  74. package/src/crate-builder/CrateManager/lib.spec.ts +0 -133
  75. package/src/crate-builder/CrateManager/lib.ts +0 -170
  76. package/src/crate-builder/CrateManager/profile-manager.spec.ts +0 -593
  77. package/src/crate-builder/CrateManager/profile-manager.ts +0 -367
  78. package/src/crate-builder/CrateManager/schema-type-definitions.json +0 -35122
  79. package/src/crate-builder/CrateManager/validate-identifier.spec.ts +0 -82
  80. package/src/crate-builder/CrateManager/validate-identifier.ts +0 -65
  81. package/src/crate-builder/RenderEntity/Add.tsx +0 -249
  82. package/src/crate-builder/RenderEntity/AddControl.stories.tsx +0 -126
  83. package/src/crate-builder/RenderEntity/AddControl.tsx +0 -84
  84. package/src/crate-builder/RenderEntity/AutoComplete.tsx +0 -215
  85. package/src/crate-builder/RenderEntity/BulkAdd.tsx +0 -136
  86. package/src/crate-builder/RenderEntity/DeleteProperty.tsx +0 -33
  87. package/src/crate-builder/RenderEntity/DialogAddProperty.tsx +0 -83
  88. package/src/crate-builder/RenderEntity/DialogBrowseEntities.tsx +0 -136
  89. package/src/crate-builder/RenderEntity/DialogEditContext.tsx +0 -107
  90. package/src/crate-builder/RenderEntity/DialogPreviewCrate.tsx +0 -54
  91. package/src/crate-builder/RenderEntity/DialogSaveCrateAsTemplate.tsx +0 -65
  92. package/src/crate-builder/RenderEntity/DialogSaveEntityTemplate.tsx +0 -87
  93. package/src/crate-builder/RenderEntity/DisplayPropertyName.stories.tsx +0 -30
  94. package/src/crate-builder/RenderEntity/DisplayPropertyName.tsx +0 -21
  95. package/src/crate-builder/RenderEntity/EntityId.tsx +0 -75
  96. package/src/crate-builder/RenderEntity/EntityName.tsx +0 -49
  97. package/src/crate-builder/RenderEntity/EntityProperty.tsx +0 -188
  98. package/src/crate-builder/RenderEntity/EntityPropertyInstance.tsx +0 -255
  99. package/src/crate-builder/RenderEntity/EntityType.tsx +0 -95
  100. package/src/crate-builder/RenderEntity/ItemLink.tsx +0 -37
  101. package/src/crate-builder/RenderEntity/PaginateLinkedEntities.stories.tsx +0 -43
  102. package/src/crate-builder/RenderEntity/PaginateLinkedEntities.tsx +0 -141
  103. package/src/crate-builder/RenderEntity/PropertyHelp.tsx +0 -39
  104. package/src/crate-builder/RenderEntity/RenderControls.tsx +0 -278
  105. package/src/crate-builder/RenderEntity/RenderLinkedItem.tsx +0 -139
  106. package/src/crate-builder/RenderEntity/RenderPropertyHelp.tsx +0 -41
  107. package/src/crate-builder/RenderEntity/RenderReverseConnections.tsx +0 -150
  108. package/src/crate-builder/RenderEntity/RenderTypes.tsx +0 -102
  109. package/src/crate-builder/RenderEntity/Shell2.tsx +0 -576
  110. package/src/crate-builder/RenderEntity/UnlinkEntity.tsx +0 -30
  111. package/src/crate-builder/RenderEntity/auto-complete.lib.ts +0 -184
  112. package/src/crate-builder/RenderEntity/keys.ts +0 -4
  113. package/src/crate-builder/RenderEntity/layout.spec.js +0 -593
  114. package/src/crate-builder/RenderEntity/layout.ts +0 -220
  115. package/src/crate-builder/Shell.tsx +0 -337
  116. package/src/crate-builder/component.css +0 -65
  117. package/src/crate-builder/editor-state.ts +0 -114
  118. package/src/crate-builder/emotionCache.ts +0 -8
  119. package/src/crate-builder/helpers.ts +0 -16
  120. package/src/crate-builder/i18n.ts +0 -22
  121. package/src/crate-builder/lib/validate-iri.js +0 -69
  122. package/src/crate-builder/lib/validate-iri.ts +0 -57
  123. package/src/crate-builder/locales/en.js +0 -149
  124. package/src/crate-builder/locales/hu.js +0 -147
  125. package/src/crate-builder/primitives/Boolean.stories.tsx +0 -33
  126. package/src/crate-builder/primitives/Boolean.tsx +0 -67
  127. package/src/crate-builder/primitives/Date.stories.tsx +0 -32
  128. package/src/crate-builder/primitives/Date.tsx +0 -58
  129. package/src/crate-builder/primitives/DateTime.stories.tsx +0 -32
  130. package/src/crate-builder/primitives/DateTime.tsx +0 -64
  131. package/src/crate-builder/primitives/Geo.stories.tsx +0 -57
  132. package/src/crate-builder/primitives/Geo.tsx +0 -225
  133. package/src/crate-builder/primitives/Map.SelectArea.js +0 -359
  134. package/src/crate-builder/primitives/Map.stories.tsx +0 -61
  135. package/src/crate-builder/primitives/Map.tsx +0 -124
  136. package/src/crate-builder/primitives/Number.stories.tsx +0 -74
  137. package/src/crate-builder/primitives/Number.tsx +0 -166
  138. package/src/crate-builder/primitives/Select.stories.tsx +0 -66
  139. package/src/crate-builder/primitives/Select.tsx +0 -121
  140. package/src/crate-builder/primitives/SelectObject.stories.tsx +0 -29
  141. package/src/crate-builder/primitives/SelectObject.tsx +0 -105
  142. package/src/crate-builder/primitives/SelectUrl.stories.tsx +0 -42
  143. package/src/crate-builder/primitives/SelectUrl.tsx +0 -110
  144. package/src/crate-builder/primitives/Text.stories.tsx +0 -106
  145. package/src/crate-builder/primitives/Text.tsx +0 -197
  146. package/src/crate-builder/primitives/Time.stories.tsx +0 -38
  147. package/src/crate-builder/primitives/Time.tsx +0 -71
  148. package/src/crate-builder/primitives/Url.stories.tsx +0 -43
  149. package/src/crate-builder/primitives/Url.tsx +0 -75
  150. package/src/crate-builder/primitives/Value.stories.tsx +0 -37
  151. package/src/crate-builder/primitives/Value.tsx +0 -30
  152. package/src/crate-builder/primitives/date-libs.ts +0 -12
  153. package/src/crate-builder/profile-schema.json +0 -145
  154. package/src/crate-builder/property-definitions.ts +0 -78
  155. package/src/crate-builder/recrate.css +0 -3
  156. package/src/crate-builder/store.ts +0 -14
  157. package/src/crate-builder/tailwind.css +0 -5
  158. package/src/crate-builder/types.d.ts +0 -318
  159. package/src/examples/collection/collections-entity-example.json +0 -131
  160. package/src/examples/collection/crate-builder-entity-example.json +0 -33
  161. package/src/examples/item/complex-collection/ro-crate-metadata.json +0 -174
  162. package/src/examples/item/complex-item/ro-crate-metadata.json +0 -769
  163. package/src/examples/item/crate-with-language.json +0 -38
  164. package/src/examples/item/empty/ro-crate-metadata.json +0 -20
  165. package/src/examples/item/item-with-relationship-and-action/ro-crate-metadata.json +0 -66
  166. package/src/examples/item/large-crate/ro-crate-metadata.json +0 -5762
  167. package/src/examples/item/multiple-types/ro-crate-metadata.json +0 -20
  168. package/src/examples/item/ridiculously-big-collection/ro-crate-metadata.json +0 -162977
  169. package/src/examples/profile/aroma.complex.profile.json +0 -11098
  170. package/src/examples/profile/aroma.profile.json +0 -9158
  171. package/src/examples/profile/nyingarn-item-profile.json +0 -426
  172. package/src/examples/profile/profile-to-test-inverse-associations.json +0 -73
  173. package/src/examples/profile/profile-to-test-multiple-types.json +0 -31
  174. package/src/examples/profile/profile-with-all-primitives-and-groups.json +0 -207
  175. package/src/examples/profile/profile-with-all-primitives.json +0 -244
  176. package/src/examples/profile/profile-with-constraints.json +0 -446
  177. package/src/examples/profile/profile-with-resolve.json +0 -57
  178. package/src/examples/profile/vocabulary-creation-profile.json +0 -231
  179. package/src/images.d.ts +0 -5
  180. package/src/index.ts +0 -12
  181. package/src/types.ts +0 -104
  182. package/tailwind.config.js +0 -21
  183. package/tsconfig.app.json +0 -31
  184. package/tsconfig.json +0 -26
  185. package/typedoc.json +0 -11
  186. package/update-deps.sh +0 -4
  187. package/vite-env.d.ts +0 -1
  188. package/vite.config.ts +0 -46
@@ -1,145 +0,0 @@
1
- {
2
- "title": "Validate Profile",
3
- "description": "Validate a describo profile",
4
- "type": "object",
5
- "properties": {
6
- "metadata": {
7
- "description": "Metadata about this profile",
8
- "type": "object",
9
- "properties": {
10
- "name": { "type": "string" },
11
- "description": { "type": "string" },
12
- "version": { "type": "number" },
13
- "keywords": { "type": "array", "items": { "type": "string" } },
14
- "warnMissingProperty": { "type": "boolean" },
15
- "enableEntityTimestamps": { "type": "boolean" }
16
- },
17
- "required": ["name", "description", "version"],
18
- "additionalProperties": false
19
- },
20
- "context": {
21
- "anyOf": [{ "type": "array" }, { "type": "string" }, { "type": "object" }]
22
- },
23
- "propertyAssociations": {
24
- "type": "array",
25
- "items": {
26
- "type": "object",
27
- "properties": {
28
- "property": { "type": "string" },
29
- "propertyId": { "type": "string" },
30
- "inverse": {
31
- "type": "object",
32
- "properties": {
33
- "property": { "type": "string" },
34
- "propertyId": { "type": "string" }
35
- }
36
- }
37
- }
38
- }
39
- },
40
- "layouts": {
41
- "description": "Layout definitions for property groups",
42
- "type": "array",
43
- "items": {
44
- "type": "object",
45
- "properties": {
46
- "appliesTo": { "type": "array", "items": { "type": "string" } },
47
- "^[A-Z,a-z]*": {
48
- "type": "object",
49
- "properties": {
50
- "label": { "type": "string" },
51
- "description": { "type": "string" },
52
- "order": { "type": "string" }
53
- },
54
- "required": ["label", "description", "order"]
55
- }
56
- }
57
- }
58
- },
59
- "resolve": {
60
- "description": "Configuration to resolve property associations",
61
- "type": "array",
62
- "items": {
63
- "type": "object",
64
- "properties": {
65
- "types": { "type": "array", "items": { "type": "string" } },
66
- "properties": { "type": "array", "items": { "type": "string" } }
67
- },
68
- "required": ["types", "properties"],
69
- "additionalProperties": false
70
- }
71
- },
72
- "localisation": {
73
- "description": "Configuration to localise class names",
74
- "type": "object",
75
- "patternProperties": {
76
- "^[A-Z,a-z]*": {
77
- "type": "string"
78
- }
79
- }
80
- },
81
- "classes": {
82
- "description": "Class definitions",
83
- "type": "object",
84
- "patternProperties": {
85
- "^[A-Z,a-z]*": {
86
- "type": "object",
87
- "properties": {
88
- "definition": {
89
- "type": "string",
90
- "enum": ["inherit", "override"]
91
- },
92
- "subClassOf": { "type": "array", "items": { "type": "string" } },
93
- "inputs": {
94
- "type": "array",
95
- "items": {
96
- "type": "object",
97
- "properties": {
98
- "id": { "type": "string" },
99
- "name": { "type": "string" },
100
- "label": { "type": "string" },
101
- "multiple": { "type": "boolean" },
102
- "required": { "type": "boolean" },
103
- "hide": { "type": "boolean" },
104
- "readonly": { "type": "boolean" },
105
- "group": { "type": "string" },
106
- "type": {
107
- "anyOf": [
108
- { "type": "array", "items": { "type": "string" } },
109
- {
110
- "type": "string",
111
- "enum": ["Select", "MultiSelect", "Value"]
112
- }
113
- ]
114
- }
115
- },
116
- "required": ["id", "name", "type"],
117
- "additionalProperties": true
118
- }
119
- },
120
- "label": { "type": "string" }
121
- },
122
- "required": ["definition", "subClassOf", "inputs"],
123
- "additionalProperties": false
124
- }
125
- }
126
- },
127
- "lookup": {
128
- "description": "Lookup definitions",
129
- "type": "object",
130
- "patternProperties": {
131
- "^[A-Z,a-z]*": {
132
- "type": "object",
133
- "properties": {
134
- "fields": { "type": "array" },
135
- "datapacks": { "type": "array", "items": { "type": "string" } }
136
- },
137
- "required": ["fields", "datapacks"],
138
- "additionalProperties": false
139
- }
140
- }
141
- }
142
- },
143
- "required": ["metadata", "classes"],
144
- "additionalProperties": false
145
- }
@@ -1,78 +0,0 @@
1
- export const propertyDefinitions = {
2
- crate: {
3
- type: [Object, undefined],
4
- },
5
- profile: {
6
- type: [Object, undefined],
7
- },
8
- entityId: {
9
- type: [String, undefined],
10
- },
11
- lookup: {
12
- type: [Object, undefined],
13
- },
14
- enableContextEditor: {
15
- type: Boolean,
16
- default: true,
17
- validator: (val: boolean) => [true, false].includes(val),
18
- },
19
- enableCratePreview: {
20
- type: Boolean,
21
- default: true,
22
- validator: (val: boolean) => [true, false].includes(val),
23
- },
24
- enableBrowseEntities: {
25
- type: Boolean,
26
- default: true,
27
- validator: (val: boolean) => [true, false].includes(val),
28
- },
29
- enableTemplateSave: {
30
- type: Boolean,
31
- default: false,
32
- validator: (val: boolean) => [true, false].includes(val),
33
- },
34
- enableReverseLinkBrowser: {
35
- type: Boolean,
36
- default: false,
37
- validator: (val: boolean) => [true, false].includes(val),
38
- },
39
- enableUrlMarkup: {
40
- type: Boolean,
41
- default: true,
42
- validator: (val: boolean) => [true, false].includes(val),
43
- },
44
- enableEntityTimestamps: {
45
- type: Boolean,
46
- default: false,
47
- validator: (val: boolean) => [true, false].includes(val),
48
- },
49
- purgeUnlinkedEntities: {
50
- type: Boolean,
51
- default: true,
52
- validator: (val: boolean) => [true, false].includes(val),
53
- },
54
- readonly: {
55
- type: Boolean,
56
- default: false,
57
- validator: (val: boolean) => [true, false].includes(val),
58
- },
59
- webComponent: {
60
- type: Boolean,
61
- default: false,
62
- validator: (val: boolean) => [true, false].includes(val),
63
- },
64
- tabLocation: {
65
- type: String,
66
- default: "left",
67
- validator: (val: string) => ["top", "bottom", "left", "right"].includes(val),
68
- },
69
- showControls: {
70
- type: Boolean,
71
- default: true,
72
- validator: (val: boolean) => [true, false].includes(val),
73
- },
74
- language: {
75
- type: String,
76
- default: "en",
77
- },
78
- };
@@ -1,3 +0,0 @@
1
- .recrate {
2
- all: revert-layer; /* neutralizes global resets before applying your own */
3
- }
@@ -1,14 +0,0 @@
1
- import { create } from 'zustand';
2
- import { EditorState } from "./editor-state";
3
-
4
- interface Store {
5
- configuration: Record<string, any>;
6
- editorState: EditorState;
7
- setConfiguration: (config: Record<string, any>) => void;
8
- }
9
-
10
- export const useStateStore = create<Store>((set) => ({
11
- configuration: {},
12
- editorState: new EditorState(),
13
- setConfiguration: (config) => set({ configuration: config }),
14
- }));
@@ -1,5 +0,0 @@
1
- @import "tailwindcss";
2
-
3
- /* a {
4
- @apply text-blue-600 text-lg tracking-wide;
5
- } */
@@ -1,318 +0,0 @@
1
- // CRATE RELATED DEFINITIONS
2
- // Entity Type Definition
3
- export type PrimitiveType = string | number | boolean;
4
-
5
- export type EntityReference = {
6
- "@id": string;
7
- };
8
-
9
- export interface UnverifiedEntityDefinition {
10
- "@id"?: string;
11
- "@type"?: (string | number | boolean)[] | string | number | boolean;
12
- name?: string;
13
- [key: string]:
14
- | (PrimitiveType | EntityReference | undefined | null)[]
15
- | PrimitiveType
16
- | EntityReference;
17
- }
18
-
19
- export interface NormalisedEntityDefinition {
20
- "@id": string;
21
- "@type": string[];
22
- name: string;
23
- [key: string]: (PrimitiveType | EntityReference)[];
24
- }
25
-
26
- // Context Type Definition
27
- export type UnverifiedContext = any;
28
-
29
- type NormalisedContext = [
30
- ...string[],
31
- {
32
- [key: string]: string;
33
- },
34
- ];
35
-
36
- // Crate Type Definition
37
- export interface UnverifiedCrate {
38
- "@context": UnverifiedContext;
39
- "@graph": UnverifiedEntityDefinition[];
40
- }
41
-
42
- export interface NormalisedCrate {
43
- "@context": NormalisedContext;
44
- "@graph": NormalisedEntityDefinition[];
45
- }
46
-
47
- export class CrateManagerType {
48
- crate: {
49
- "@context": NormalisedContext;
50
- "@graph": Array<NormalisedEntityDefinition | undefined>;
51
- };
52
- pm: ProfileManagerType;
53
- reverse: {
54
- [key: string]: any;
55
- };
56
- graphLength: number;
57
- rootDescriptor?: number;
58
- rootDataset?: number;
59
- entityIdIndex: {
60
- [key: string]: number;
61
- };
62
- providedContext: UnverifiedContext;
63
- contextDefinitions: { [key: string]: boolean };
64
- localContext: { [key: string]: string };
65
- entityTypes: { [key: string]: number };
66
- entityTimestamps: Boolean;
67
- blankNodes: string[];
68
- coreProperties: string[];
69
- errors: {
70
- hasError: Boolean;
71
- init: { description: string; messages: string[] };
72
- missingIdentifier: { description: string; entity: UnverifiedEntityDefinition[] };
73
- missingTypeDefinition: { description: string; entity: UnverifiedEntityDefinition[] };
74
- invalidIdentifier: { description: string; entity: UnverifiedEntityDefinition[] };
75
- };
76
- warnings: {
77
- hasWarning: Boolean;
78
- init: { description: string; messages: string[] };
79
- invalidIdentifier: { description: string; entity: UnverifiedEntityDefinition[] };
80
- };
81
- constructor({
82
- crate,
83
- pm,
84
- context = undefined,
85
- entityTimestamps = false,
86
- }: {
87
- crate: UnverifiedCrate;
88
- pm: ProfileManagerType;
89
- context: UnverifiedContext;
90
- entityTimestamps: Boolean;
91
- });
92
- getContext(): NormalisedContext;
93
- setContext(context: NormalisedContext);
94
- setProfileManager(pm: ProfileManagerType);
95
- getRootDataset(): NormalisedEntityDefinition;
96
- getEntity({
97
- id,
98
- stub = false,
99
- link = true,
100
- materialise = true,
101
- }: {
102
- id: string;
103
- stub?: boolean;
104
- link?: boolean;
105
- materialise?: boolean;
106
- }): NormalisedEntityDefinition | undefined;
107
- getEntityTypes(): string[];
108
- *getEntities(
109
- params: { limit?: number; query?: string; type?: string } = {
110
- limit: undefined,
111
- query: undefined,
112
- type: undefined,
113
- }
114
- ): Generator<NormalisedEntityDefinition>;
115
- locateEntity({
116
- entityIds,
117
- strict = true,
118
- }: {
119
- entityIds: string[];
120
- strict?: boolean;
121
- }): NormalisedEntityDefinition[] | undefined;
122
- resolveLinkedEntityAssociations({
123
- entity,
124
- profile,
125
- }: {
126
- entity: NormalisedEntityDefinition;
127
- profile: NormalisedProfile;
128
- }):
129
- | {
130
- property: string;
131
- "@id": string;
132
- "@type": string[];
133
- name: string;
134
- }[]
135
- | [];
136
- addEntity(entity: UnverifiedEntityDefinition): NormalisedEntityDefinition;
137
- addBlankNode(type: string): NormalisedEntityDefinition;
138
- addFileOrFolder({
139
- path,
140
- type = "File",
141
- }: {
142
- path: string;
143
- type: string;
144
- }): NormalisedEntityDefinition;
145
- addFile(path: string): NormalisedEntityDefinition;
146
- addFolder(path: string): NormalisedEntityDefinition;
147
- deleteEntity({ id }: { id: string });
148
- setProperty({
149
- id,
150
- property,
151
- propertyId,
152
- value,
153
- }: {
154
- id: string;
155
- property: string;
156
- propertyId?: string;
157
- value: PrimitiveType | EntityReference;
158
- }): boolean | undefined;
159
- updateProperty({
160
- id,
161
- property,
162
- idx,
163
- value,
164
- }: {
165
- id: string;
166
- property: string;
167
- idx?: number;
168
- value: PrimitiveType | PrimitiveType[] | EntityReference;
169
- }): NormalisedEntityDefinition | undefined | string;
170
- deleteProperty({ id, property, idx }: { id: string; property: string; idx?: number });
171
- ingestAndLink({
172
- id = undefined,
173
- property = undefined,
174
- propertyId = undefined,
175
- json = {},
176
- }: {
177
- id: string | undefined;
178
- property: string | undefined;
179
- propertyId: string | undefined;
180
- json: UnverifiedEntityDefinition;
181
- });
182
- flatten(json: UnverifiedEntityDefinition): NormalisedEntityDefinition[];
183
- linkEntity({
184
- id,
185
- property,
186
- propertyId = undefined,
187
- value,
188
- }: {
189
- id: string;
190
- property: string;
191
- propertyId?: string;
192
- value: { "@id": string };
193
- }): void;
194
- unlinkEntity({
195
- id = undefined,
196
- property = undefined,
197
- value = undefined,
198
- stop = false,
199
- }: {
200
- id: string | undefined;
201
- property: string | undefined;
202
- value: { "@id": string } | undefined;
203
- stop?: boolean;
204
- });
205
- purgeUnlinkedEntities(): void;
206
- exportCrate(): NormalisedCrate;
207
- exportEntityTemplate({
208
- id,
209
- resolveDepth = 0,
210
- }: {
211
- id: string;
212
- resolveDepth: number;
213
- }): NormalisedEntityDefinition;
214
- getErrors(): errorsInterface;
215
- getWarnings(): warningsInterface;
216
- __updateContext({ name, id }: { name: string; id?: string }): void;
217
- __normaliseContext(context: UnverifiedContext): NormalisedContext;
218
- __storeEntityType(entity: NormalisedEntityDefinition): void;
219
- __removeEntityType(entity: NormalisedEntityDefinition);
220
- __collectAllDefinitions(context: NormalisedContext): { [key: string]: boolean };
221
- __setError(error: keyof typeof this.errors, entity: string | UnverifiedEntityDefinition);
222
- __setWarning(warning: keyof typeof this.warnings, entity: string | UnverifiedEntityDefinition);
223
- __materialiseEntity({ id }: { id: string }): NormalisedEntityDefinition;
224
- __confirmNoClash({
225
- entity,
226
- mintNewId = true,
227
- }: {
228
- entity: NormalisedEntityDefinition;
229
- mintNewId?: boolean;
230
- }): NormalisedEntityDefinition | boolean;
231
- __updateEntityId({ oldId, newId }: { oldId: string; newId: string });
232
- __addReverse({ id, property, value }: { id: string; property: string; value: EntityReference });
233
- __removeAssociations(entity: NormalisedEntityDefinition): NormalisedEntityDefinition;
234
- }
235
-
236
- // PROFILE RELATED DEFINITIONS
237
- export interface ProfileLayoutGroup {
238
- name: string;
239
- label: string;
240
- description?: string;
241
- order?: number;
242
- inputs: ProfileInput[];
243
- properties?: string[];
244
- hasData?: boolean;
245
- missingRequiredData?: boolean;
246
- }
247
- export interface ProfileLayout {
248
- appliesTo: string[];
249
- [key: string]: ProfileLayoutGroup;
250
- }
251
-
252
- export type ProfileAssociation = {
253
- property: string;
254
- propertyId: string;
255
- inverse: { property: string; propertyId: string };
256
- };
257
-
258
- export type ProfileInput = {
259
- id: string;
260
- name: string;
261
- label?: string;
262
- help?: string;
263
- required?: boolean;
264
- multiple?: boolean;
265
- hide?: boolean;
266
- group?: string;
267
- type: string[];
268
- style?: "checkbox" | "radio" | "dropdown";
269
- handledMultipleValues?: boolean;
270
- values?: string[] | { "@id": string; "@type": string; name: string }[];
271
- };
272
- export interface NormalisedProfile {
273
- metadata: {
274
- name: string;
275
- id: string;
276
- description: string;
277
- version: number | string;
278
- keywords: string | string[];
279
- warnMissingProperty: boolean;
280
- };
281
- context?: string | (string | { [key: string]: string })[] | { [key: string]: string };
282
- layouts?: ProfileLayout[];
283
- resolve?: {
284
- types: string[];
285
- properties: string[];
286
- }[];
287
- propertyAssociations?: ProfileAssociation[];
288
- localisation?: { [key: string]: string };
289
- lookup?: {
290
- [key: string]: { fields: stringp[]; datapacks: string[] };
291
- };
292
- classes: {
293
- [className: string]: {
294
- definition: "override" | "inherit";
295
- subClassOf: string[];
296
- inputs: ProfileInput[];
297
- };
298
- };
299
- }
300
-
301
- export class ProfileManagerType {
302
- profile: Profile;
303
- context?: any;
304
- $key?: number;
305
- constructor({ profile }: { profile: Profile });
306
- getLayout({ entity }: { entity: Entity }): Layout | null;
307
- getPropertyAssociations(): { [key: string]: { property: string; propertyId?: string } };
308
- getClasses(): string[];
309
- getEntityTypeHierarchy({ entity }: { entity: Entity }): string[];
310
- getPropertyDefinition({ property, entity }: { property: string; entity: Entity }): {
311
- propertyDefinition: any;
312
- };
313
- mapTypeHierarchies({ types }: { types: string[] }): string[];
314
- getInputsFromProfile({ entity }: { entity: Entity }): any[];
315
- getAllInputs({ entity }: { entity: Entity }): { inputs: any[] };
316
- getTypeDefinition({ entity }: { entity: Entity }): "inherit" | "override";
317
- getTypeLabel(type: string): string;
318
- }