@arpproject/recrate 0.1.7-test5 → 0.1.7-test6

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 (276) hide show
  1. package/dist/app/App.d.ts +2 -0
  2. package/dist/app/EmbeddedComponent.d.ts +3 -0
  3. package/dist/app/index.d.ts +0 -0
  4. package/dist/app/lookup.d.ts +82 -0
  5. package/dist/crate-builder/CrateManager/contexts.d.ts +6 -0
  6. package/dist/crate-builder/CrateManager/crate-manager-benchmarking.spec.d.ts +1 -0
  7. package/dist/crate-builder/CrateManager/crate-manager-loading-exporting.spec.d.ts +1 -0
  8. package/dist/crate-builder/CrateManager/crate-manager-operations.spec.d.ts +0 -0
  9. package/dist/crate-builder/CrateManager/crate-manager.d.ts +641 -0
  10. package/dist/crate-builder/CrateManager/crate-manager.spec.d.ts +1 -0
  11. package/dist/crate-builder/CrateManager/lib.d.ts +26 -0
  12. package/dist/crate-builder/CrateManager/lib.spec.d.ts +1 -0
  13. package/dist/crate-builder/CrateManager/profile-manager.d.ts +143 -0
  14. package/dist/crate-builder/CrateManager/profile-manager.spec.d.ts +1 -0
  15. package/{src/crate-builder/CrateManager/schema-type-definitions.json → dist/crate-builder/CrateManager/schema-type-definitions.json.d.ts} +4 -1
  16. package/dist/crate-builder/CrateManager/validate-identifier.d.ts +10 -0
  17. package/dist/crate-builder/CrateManager/validate-identifier.spec.d.ts +1 -0
  18. package/dist/crate-builder/RenderEntity/Add.d.ts +26 -0
  19. package/dist/crate-builder/RenderEntity/AddControl.d.ts +14 -0
  20. package/dist/crate-builder/RenderEntity/AddControl.stories.d.ts +29 -0
  21. package/dist/crate-builder/RenderEntity/AutoComplete.d.ts +12 -0
  22. package/dist/crate-builder/RenderEntity/BulkAdd.d.ts +10 -0
  23. package/dist/crate-builder/RenderEntity/DeleteProperty.d.ts +8 -0
  24. package/dist/crate-builder/RenderEntity/DialogAddProperty.d.ts +9 -0
  25. package/dist/crate-builder/RenderEntity/DialogBrowseEntities.d.ts +8 -0
  26. package/dist/crate-builder/RenderEntity/DialogEditContext.d.ts +8 -0
  27. package/dist/crate-builder/RenderEntity/DialogPreviewCrate.d.ts +7 -0
  28. package/dist/crate-builder/RenderEntity/DialogSaveCrateAsTemplate.d.ts +13 -0
  29. package/dist/crate-builder/RenderEntity/DialogSaveEntityTemplate.d.ts +14 -0
  30. package/dist/crate-builder/RenderEntity/DisplayPropertyName.d.ts +8 -0
  31. package/dist/crate-builder/RenderEntity/DisplayPropertyName.stories.d.ts +6 -0
  32. package/dist/crate-builder/RenderEntity/EntityId.d.ts +13 -0
  33. package/dist/crate-builder/RenderEntity/EntityName.d.ts +13 -0
  34. package/dist/crate-builder/RenderEntity/EntityProperty.d.ts +19 -0
  35. package/dist/crate-builder/RenderEntity/EntityPropertyInstance.d.ts +25 -0
  36. package/dist/crate-builder/RenderEntity/EntityType.d.ts +12 -0
  37. package/dist/crate-builder/RenderEntity/ItemLink.d.ts +14 -0
  38. package/dist/crate-builder/RenderEntity/PaginateLinkedEntities.d.ts +23 -0
  39. package/dist/crate-builder/RenderEntity/PaginateLinkedEntities.stories.d.ts +7 -0
  40. package/dist/crate-builder/RenderEntity/PropertyHelp.d.ts +6 -0
  41. package/dist/crate-builder/RenderEntity/RenderControls.d.ts +22 -0
  42. package/dist/crate-builder/RenderEntity/RenderLinkedItem.d.ts +20 -0
  43. package/dist/crate-builder/RenderEntity/RenderPropertyHelp.d.ts +6 -0
  44. package/dist/crate-builder/RenderEntity/RenderReverseConnections.d.ts +16 -0
  45. package/dist/crate-builder/RenderEntity/RenderTypes.d.ts +6 -0
  46. package/dist/crate-builder/RenderEntity/Shell2.d.ts +14 -0
  47. package/dist/crate-builder/RenderEntity/UnlinkEntity.d.ts +14 -0
  48. package/dist/crate-builder/RenderEntity/auto-complete.lib.d.ts +25 -0
  49. package/dist/crate-builder/RenderEntity/keys.d.ts +4 -0
  50. package/dist/crate-builder/RenderEntity/layout.d.ts +14 -0
  51. package/dist/crate-builder/RenderEntity/layout.spec.d.ts +1 -0
  52. package/dist/crate-builder/Shell.d.ts +40 -0
  53. package/dist/crate-builder/editor-state.d.ts +72 -0
  54. package/dist/crate-builder/emotionCache.d.ts +1 -0
  55. package/dist/crate-builder/helpers.d.ts +9 -0
  56. package/dist/crate-builder/i18n.d.ts +2 -0
  57. package/dist/crate-builder/lib/validate-iri.d.ts +6 -0
  58. package/dist/crate-builder/locales/en.d.ts +79 -0
  59. package/dist/crate-builder/locales/hu.d.ts +79 -0
  60. package/dist/crate-builder/primitives/Boolean.d.ts +11 -0
  61. package/dist/crate-builder/primitives/Boolean.stories.d.ts +7 -0
  62. package/dist/crate-builder/primitives/Date.d.ts +11 -0
  63. package/dist/crate-builder/primitives/Date.stories.d.ts +5 -0
  64. package/dist/crate-builder/primitives/DateTime.d.ts +11 -0
  65. package/dist/crate-builder/primitives/DateTime.stories.d.ts +5 -0
  66. package/dist/crate-builder/primitives/Geo.d.ts +12 -0
  67. package/dist/crate-builder/primitives/Geo.stories.d.ts +26 -0
  68. package/dist/crate-builder/primitives/Map.SelectArea.d.ts +9 -0
  69. package/dist/crate-builder/primitives/Map.d.ts +15 -0
  70. package/dist/crate-builder/primitives/Map.stories.d.ts +6 -0
  71. package/dist/crate-builder/primitives/Number.d.ts +16 -0
  72. package/dist/crate-builder/primitives/Number.stories.d.ts +10 -0
  73. package/dist/crate-builder/primitives/Select.d.ts +15 -0
  74. package/dist/crate-builder/primitives/Select.stories.d.ts +9 -0
  75. package/dist/crate-builder/primitives/SelectObject.d.ts +13 -0
  76. package/dist/crate-builder/primitives/SelectObject.stories.d.ts +5 -0
  77. package/dist/crate-builder/primitives/SelectUrl.d.ts +14 -0
  78. package/dist/crate-builder/primitives/SelectUrl.stories.d.ts +7 -0
  79. package/dist/crate-builder/primitives/Text.d.ts +19 -0
  80. package/dist/crate-builder/primitives/Text.stories.d.ts +13 -0
  81. package/dist/crate-builder/primitives/Time.d.ts +11 -0
  82. package/dist/crate-builder/primitives/Time.stories.d.ts +7 -0
  83. package/dist/crate-builder/primitives/Url.d.ts +11 -0
  84. package/dist/crate-builder/primitives/Url.stories.d.ts +7 -0
  85. package/dist/crate-builder/primitives/Value.d.ts +7 -0
  86. package/dist/crate-builder/primitives/Value.stories.d.ts +7 -0
  87. package/dist/crate-builder/primitives/date-libs.d.ts +1 -0
  88. package/dist/crate-builder/property-definitions.d.ts +78 -0
  89. package/dist/crate-builder/store.d.ts +8 -0
  90. package/dist/index.d.ts +5 -0
  91. package/dist/recrate.css +1896 -0
  92. package/dist/recrate.es.js +38508 -0
  93. package/dist/types.d.ts +42 -0
  94. package/package.json +31 -24
  95. package/.eslintrc.json +0 -37
  96. package/.storybook/main.ts +0 -40
  97. package/.storybook/preview.tsx +0 -46
  98. package/babel.config.json +0 -5
  99. package/docker-compose.yml +0 -30
  100. package/docs/.nojekyll +0 -1
  101. package/docs/assets/highlight.css +0 -99
  102. package/docs/assets/icons.js +0 -18
  103. package/docs/assets/icons.svg +0 -1
  104. package/docs/assets/main.js +0 -60
  105. package/docs/assets/navigation.js +0 -1
  106. package/docs/assets/search.js +0 -1
  107. package/docs/assets/style.css +0 -1448
  108. package/docs/classes/src_crate_builder_CrateManager_crate_manager.CrateManager.html +0 -240
  109. package/docs/classes/src_crate_builder_CrateManager_profile_manager.ProfileManager.html +0 -42
  110. package/docs/classes/src_crate_builder_editor_state.EditorState.html +0 -28
  111. package/docs/classes/src_crate_builder_types.CrateManagerType.html +0 -57
  112. package/docs/classes/src_crate_builder_types.ProfileManagerType.html +0 -13
  113. package/docs/functions/src_crate_builder_CrateManager_lib.isURL.html +0 -2
  114. package/docs/functions/src_crate_builder_CrateManager_lib.mintNewCrate.html +0 -3
  115. package/docs/functions/src_crate_builder_CrateManager_lib.normalise.html +0 -5
  116. package/docs/functions/src_crate_builder_CrateManager_lib.normaliseEntityType.html +0 -1
  117. package/docs/index.html +0 -58
  118. package/docs/interfaces/src_crate_builder_types.NormalisedCrate.html +0 -3
  119. package/docs/interfaces/src_crate_builder_types.NormalisedEntityDefinition.html +0 -4
  120. package/docs/interfaces/src_crate_builder_types.NormalisedProfile.html +0 -9
  121. package/docs/interfaces/src_crate_builder_types.ProfileLayout.html +0 -2
  122. package/docs/interfaces/src_crate_builder_types.ProfileLayoutGroup.html +0 -9
  123. package/docs/interfaces/src_crate_builder_types.UnverifiedCrate.html +0 -3
  124. package/docs/interfaces/src_crate_builder_types.UnverifiedEntityDefinition.html +0 -4
  125. package/docs/modules/src_crate_builder_CrateManager_crate_manager.html +0 -2
  126. package/docs/modules/src_crate_builder_CrateManager_lib.html +0 -6
  127. package/docs/modules/src_crate_builder_CrateManager_profile_manager.html +0 -2
  128. package/docs/modules/src_crate_builder_editor_state.html +0 -2
  129. package/docs/modules/src_crate_builder_types.html +0 -16
  130. package/docs/types/src_crate_builder_types.EntityReference.html +0 -1
  131. package/docs/types/src_crate_builder_types.NormalisedContext.html +0 -1
  132. package/docs/types/src_crate_builder_types.PrimitiveType.html +0 -1
  133. package/docs/types/src_crate_builder_types.ProfileAssociation.html +0 -1
  134. package/docs/types/src_crate_builder_types.ProfileInput.html +0 -1
  135. package/docs/types/src_crate_builder_types.UnverifiedContext.html +0 -1
  136. package/docs/variables/src_crate_builder_CrateManager_lib.urlProtocols.html +0 -1
  137. package/index.html +0 -13
  138. package/load-data-packs.cjs +0 -38
  139. package/postcss.config.cjs +0 -6
  140. package/react-app-env.d.ts +0 -1
  141. package/rollup.config.js +0 -26
  142. package/src/app/App.tsx +0 -13
  143. package/src/app/EmbeddedComponent.tsx +0 -432
  144. package/src/app/index.html +0 -20
  145. package/src/app/index.tsx +0 -19
  146. package/src/app/lookup.ts +0 -141
  147. package/src/app/override-styles.css +0 -96
  148. package/src/crate-builder/CrateManager/contexts/1.1-context.jsonld +0 -2660
  149. package/src/crate-builder/CrateManager/contexts/1.2-DRAFT-context.jsonld +0 -2918
  150. package/src/crate-builder/CrateManager/contexts.ts +0 -42
  151. package/src/crate-builder/CrateManager/crate-manager-benchmarking.spec.ts +0 -31
  152. package/src/crate-builder/CrateManager/crate-manager-loading-exporting.spec.ts +0 -431
  153. package/src/crate-builder/CrateManager/crate-manager-operations.spec.ts +0 -298
  154. package/src/crate-builder/CrateManager/crate-manager.spec.ts +0 -2336
  155. package/src/crate-builder/CrateManager/crate-manager.ts +0 -2111
  156. package/src/crate-builder/CrateManager/lib.spec.ts +0 -133
  157. package/src/crate-builder/CrateManager/lib.ts +0 -170
  158. package/src/crate-builder/CrateManager/profile-manager.spec.ts +0 -593
  159. package/src/crate-builder/CrateManager/profile-manager.ts +0 -367
  160. package/src/crate-builder/CrateManager/validate-identifier.spec.ts +0 -82
  161. package/src/crate-builder/CrateManager/validate-identifier.ts +0 -65
  162. package/src/crate-builder/RenderEntity/Add.tsx +0 -249
  163. package/src/crate-builder/RenderEntity/AddControl.stories.tsx +0 -126
  164. package/src/crate-builder/RenderEntity/AddControl.tsx +0 -84
  165. package/src/crate-builder/RenderEntity/AutoComplete.tsx +0 -215
  166. package/src/crate-builder/RenderEntity/BulkAdd.tsx +0 -136
  167. package/src/crate-builder/RenderEntity/DeleteProperty.tsx +0 -33
  168. package/src/crate-builder/RenderEntity/DialogAddProperty.tsx +0 -83
  169. package/src/crate-builder/RenderEntity/DialogBrowseEntities.tsx +0 -136
  170. package/src/crate-builder/RenderEntity/DialogEditContext.tsx +0 -107
  171. package/src/crate-builder/RenderEntity/DialogPreviewCrate.tsx +0 -54
  172. package/src/crate-builder/RenderEntity/DialogSaveCrateAsTemplate.tsx +0 -65
  173. package/src/crate-builder/RenderEntity/DialogSaveEntityTemplate.tsx +0 -87
  174. package/src/crate-builder/RenderEntity/DisplayPropertyName.stories.tsx +0 -30
  175. package/src/crate-builder/RenderEntity/DisplayPropertyName.tsx +0 -21
  176. package/src/crate-builder/RenderEntity/EntityId.tsx +0 -75
  177. package/src/crate-builder/RenderEntity/EntityName.tsx +0 -49
  178. package/src/crate-builder/RenderEntity/EntityProperty.tsx +0 -188
  179. package/src/crate-builder/RenderEntity/EntityPropertyInstance.tsx +0 -255
  180. package/src/crate-builder/RenderEntity/EntityType.tsx +0 -95
  181. package/src/crate-builder/RenderEntity/ItemLink.tsx +0 -37
  182. package/src/crate-builder/RenderEntity/PaginateLinkedEntities.stories.tsx +0 -43
  183. package/src/crate-builder/RenderEntity/PaginateLinkedEntities.tsx +0 -141
  184. package/src/crate-builder/RenderEntity/PropertyHelp.tsx +0 -39
  185. package/src/crate-builder/RenderEntity/RenderControls.tsx +0 -278
  186. package/src/crate-builder/RenderEntity/RenderLinkedItem.tsx +0 -139
  187. package/src/crate-builder/RenderEntity/RenderPropertyHelp.tsx +0 -41
  188. package/src/crate-builder/RenderEntity/RenderReverseConnections.tsx +0 -150
  189. package/src/crate-builder/RenderEntity/RenderTypes.tsx +0 -102
  190. package/src/crate-builder/RenderEntity/Shell2.tsx +0 -576
  191. package/src/crate-builder/RenderEntity/UnlinkEntity.tsx +0 -30
  192. package/src/crate-builder/RenderEntity/auto-complete.lib.ts +0 -184
  193. package/src/crate-builder/RenderEntity/keys.ts +0 -4
  194. package/src/crate-builder/RenderEntity/layout.spec.js +0 -593
  195. package/src/crate-builder/RenderEntity/layout.ts +0 -220
  196. package/src/crate-builder/Shell.tsx +0 -337
  197. package/src/crate-builder/component.css +0 -65
  198. package/src/crate-builder/editor-state.ts +0 -114
  199. package/src/crate-builder/emotionCache.ts +0 -8
  200. package/src/crate-builder/helpers.ts +0 -16
  201. package/src/crate-builder/i18n.ts +0 -22
  202. package/src/crate-builder/lib/validate-iri.ts +0 -57
  203. package/src/crate-builder/locales/en.js +0 -149
  204. package/src/crate-builder/locales/hu.js +0 -147
  205. package/src/crate-builder/primitives/Boolean.stories.tsx +0 -33
  206. package/src/crate-builder/primitives/Boolean.tsx +0 -67
  207. package/src/crate-builder/primitives/Date.stories.tsx +0 -32
  208. package/src/crate-builder/primitives/Date.tsx +0 -58
  209. package/src/crate-builder/primitives/DateTime.stories.tsx +0 -32
  210. package/src/crate-builder/primitives/DateTime.tsx +0 -64
  211. package/src/crate-builder/primitives/Geo.stories.tsx +0 -57
  212. package/src/crate-builder/primitives/Geo.tsx +0 -225
  213. package/src/crate-builder/primitives/Map.SelectArea.js +0 -359
  214. package/src/crate-builder/primitives/Map.stories.tsx +0 -61
  215. package/src/crate-builder/primitives/Map.tsx +0 -124
  216. package/src/crate-builder/primitives/Number.stories.tsx +0 -74
  217. package/src/crate-builder/primitives/Number.tsx +0 -166
  218. package/src/crate-builder/primitives/Select.stories.tsx +0 -66
  219. package/src/crate-builder/primitives/Select.tsx +0 -121
  220. package/src/crate-builder/primitives/SelectObject.stories.tsx +0 -29
  221. package/src/crate-builder/primitives/SelectObject.tsx +0 -105
  222. package/src/crate-builder/primitives/SelectUrl.stories.tsx +0 -42
  223. package/src/crate-builder/primitives/SelectUrl.tsx +0 -110
  224. package/src/crate-builder/primitives/Text.stories.tsx +0 -106
  225. package/src/crate-builder/primitives/Text.tsx +0 -197
  226. package/src/crate-builder/primitives/Time.stories.tsx +0 -38
  227. package/src/crate-builder/primitives/Time.tsx +0 -71
  228. package/src/crate-builder/primitives/Url.stories.tsx +0 -43
  229. package/src/crate-builder/primitives/Url.tsx +0 -75
  230. package/src/crate-builder/primitives/Value.stories.tsx +0 -37
  231. package/src/crate-builder/primitives/Value.tsx +0 -30
  232. package/src/crate-builder/primitives/date-libs.ts +0 -12
  233. package/src/crate-builder/profile-schema.json +0 -145
  234. package/src/crate-builder/property-definitions.ts +0 -78
  235. package/src/crate-builder/recrate.css +0 -3
  236. package/src/crate-builder/store.ts +0 -14
  237. package/src/crate-builder/tailwind.css +0 -5
  238. package/src/crate-builder/types.d.ts +0 -318
  239. package/src/examples/collection/collections-entity-example.json +0 -131
  240. package/src/examples/collection/crate-builder-entity-example.json +0 -33
  241. package/src/examples/item/complex-collection/ro-crate-metadata.json +0 -174
  242. package/src/examples/item/complex-item/ro-crate-metadata.json +0 -769
  243. package/src/examples/item/crate-with-language.json +0 -38
  244. package/src/examples/item/empty/ro-crate-metadata.json +0 -20
  245. package/src/examples/item/item-with-relationship-and-action/ro-crate-metadata.json +0 -66
  246. package/src/examples/item/large-crate/ro-crate-metadata.json +0 -5762
  247. package/src/examples/item/multiple-types/ro-crate-metadata.json +0 -20
  248. package/src/examples/item/ridiculously-big-collection/ro-crate-metadata.json +0 -162977
  249. package/src/examples/profile/aroma.complex.profile.json +0 -11098
  250. package/src/examples/profile/aroma.profile.json +0 -9158
  251. package/src/examples/profile/nyingarn-item-profile.json +0 -426
  252. package/src/examples/profile/profile-to-test-inverse-associations.json +0 -73
  253. package/src/examples/profile/profile-to-test-multiple-types.json +0 -31
  254. package/src/examples/profile/profile-with-all-primitives-and-groups.json +0 -207
  255. package/src/examples/profile/profile-with-all-primitives.json +0 -244
  256. package/src/examples/profile/profile-with-constraints.json +0 -446
  257. package/src/examples/profile/profile-with-resolve.json +0 -57
  258. package/src/examples/profile/vocabulary-creation-profile.json +0 -231
  259. package/src/images.d.ts +0 -5
  260. package/src/index.ts +0 -12
  261. package/src/types.ts +0 -104
  262. package/tailwind.config.js +0 -21
  263. package/tsconfig.app.json +0 -31
  264. package/tsconfig.json +0 -26
  265. package/typedoc.json +0 -11
  266. package/update-deps.sh +0 -4
  267. package/vite-env.d.ts +0 -1
  268. package/vite.config.ts +0 -67
  269. /package/{public → dist}/favicon.ico +0 -0
  270. /package/{public → dist}/index.html +0 -0
  271. /package/{public → dist}/logo192.png +0 -0
  272. /package/{public → dist}/logo512.png +0 -0
  273. /package/{public → dist}/manifest.json +0 -0
  274. /package/{public → dist}/marker-icon.png +0 -0
  275. /package/{public → dist}/marker-shadow.png +0 -0
  276. /package/{public → dist}/robots.txt +0 -0
@@ -1,359 +0,0 @@
1
- /**
2
- * L.Map.SelectArea - Area selection tool for leaflet
3
- *
4
- * @author Alexander Milevski <info@w8r.name>
5
- * @see https://github.com/w8r/leaflet-area-select
6
- * @license MIT
7
- * @preserve
8
- */
9
-
10
- // UMD
11
- export default function AreaSelectInit(L) {
12
- var trueFn = function () {
13
- return true;
14
- };
15
-
16
- /**
17
- * @class L.Map.SelectArea
18
- * @extends {L.Map.BoxZoom}
19
- */
20
- L.Map.SelectArea = L.Map.BoxZoom.extend({
21
- statics: {
22
- /**
23
- * @static
24
- * @type {String}
25
- */
26
- AREA_SELECTED: "areaselected",
27
-
28
- /**
29
- * @static
30
- * @type {String}
31
- */
32
- AREA_SELECT_START: "areaselectstart",
33
-
34
- /**
35
- * @static
36
- * @type {String}
37
- */
38
- AREA_SELECTION_TOGGLED: "areaselecttoggled",
39
- },
40
-
41
- options: {
42
- shiftKey: false,
43
- ctrlKey: true,
44
- validate: trueFn,
45
- autoDisable: false,
46
- cursor: "crosshair",
47
- },
48
-
49
- /**
50
- * @param {L.Map} map
51
- * @constructor
52
- */
53
- initialize: function (map, options) {
54
- L.Util.setOptions(this, options || {});
55
- L.Map.BoxZoom.prototype.initialize.call(this, map);
56
-
57
- /**
58
- * @type {Function}
59
- */
60
- this._validate = null;
61
-
62
- /**
63
- * @type {Boolean}
64
- */
65
- this._moved = false;
66
-
67
- /**
68
- * @type {Boolean}
69
- */
70
- this._autoDisable = !this.options.ctrlKey && this.options.autoDisable;
71
-
72
- /**
73
- * @type {L.Point}
74
- */
75
- this._lastLayerPoint = null;
76
-
77
- /**
78
- * @type {String|Null}
79
- */
80
- this._beforeCursor = null;
81
-
82
- this.setValidate(this.options.validate);
83
- this.setAutoDisable(this.options.autoDisable);
84
- },
85
-
86
- /**
87
- * @param {Function=} validate
88
- * @return {SelectArea}
89
- */
90
- setValidate: function (validate) {
91
- var handler = this;
92
- if (typeof validate !== "function") {
93
- validate = trueFn;
94
- }
95
- this._validate = function (layerPoint) {
96
- return validate.call(handler, layerPoint);
97
- };
98
- return this;
99
- },
100
-
101
- /**
102
- * @param {Boolean} autoDisable
103
- */
104
- setAutoDisable: function (autoDisable) {
105
- this._autoDisable = !!autoDisable;
106
- },
107
-
108
- /**
109
- * @param {Boolean} on
110
- */
111
- setControlKey: function (on) {
112
- var wasEnabled = this._enabled;
113
- if (wasEnabled) this.disable();
114
- this.options.ctrlKey = !!on;
115
- if (on) this.options.shiftKey = false;
116
- if (wasEnabled) this.enable();
117
- },
118
-
119
- /**
120
- * @param {Boolean} on
121
- */
122
- setShiftKey: function (on) {
123
- var wasEnabled = this._enabled;
124
- if (wasEnabled) this.disable();
125
- this.options.shiftKey = !!on;
126
- if (on) this.options.ctrlKey = false;
127
- if (wasEnabled) this.enable();
128
- },
129
-
130
- /**
131
- * Disable dragging or zoombox
132
- * @param {Function=} validate
133
- * @param {Boolean=} autoDisable
134
- */
135
- enable: function (validate, autoDisable) {
136
- if (this.options.shiftKey) {
137
- if (this._map.boxZoom) {
138
- this._map.boxZoom.disable();
139
- }
140
- } else if (!this.options.ctrlKey) {
141
- this._map.dragging.disable();
142
- }
143
- L.Map.BoxZoom.prototype.enable.call(this);
144
-
145
- if (!this.options.ctrlKey) this._setCursor();
146
-
147
- if (validate) this.setValidate(validate);
148
- this.setAutoDisable(autoDisable);
149
-
150
- this._map.fire(L.Map.SelectArea.AREA_SELECTION_TOGGLED);
151
- },
152
-
153
- /**
154
- * Re-enable box zoom or dragging
155
- */
156
- disable: function () {
157
- L.Map.BoxZoom.prototype.disable.call(this);
158
-
159
- if (!this.options.ctrlKey) this._restoreCursor();
160
-
161
- if (this.options.shiftKey) {
162
- if (this._map.boxZoom) {
163
- this._map.boxZoom.enable();
164
- }
165
- } else {
166
- this._map.dragging.enable();
167
- }
168
-
169
- this._map.fire(L.Map.SelectArea.AREA_SELECTION_TOGGLED);
170
- },
171
-
172
- /**
173
- * Also listen to ESC to cancel interaction
174
- * @override
175
- */
176
- addHooks: function () {
177
- L.Map.BoxZoom.prototype.addHooks.call(this);
178
- L.DomEvent.on(document, "keyup", this._onKeyUp, this)
179
- .on(document, "keydown", this._onKeyPress, this)
180
- .on(document, "contextmenu", this._onMouseDown, this)
181
- .on(window, "blur", this._onBlur, this);
182
- this._map.on("dragstart", this._onMouseDown, this);
183
- },
184
-
185
- /**
186
- * @override
187
- */
188
- removeHooks: function () {
189
- L.Map.BoxZoom.prototype.removeHooks.call(this);
190
- L.DomEvent.off(document, "keyup", this._onKeyUp, this)
191
- .off(document, "keydown", this._onKeyPress, this)
192
- .off(document, "contextmenu", this._onMouseDown, this)
193
- .off(window, "blur", this._onBlur, this);
194
- this._map.off("dragstart", this._onMouseDown, this);
195
- },
196
-
197
- /**
198
- * @override
199
- */
200
- _onMouseDown: function (e) {
201
- this._moved = false;
202
- this._lastLayerPoint = null;
203
-
204
- if (
205
- (this.options.shiftKey && !e.shiftKey) ||
206
- (this.options.ctrlKey && !e.ctrlKey) ||
207
- (e.which !== 1 && e.button !== 1)
208
- ) {
209
- return false;
210
- }
211
-
212
- L.DomEvent.stop(e);
213
-
214
- var layerPoint = this._map.mouseEventToLayerPoint(e);
215
- if (!this._validate(layerPoint)) return false;
216
-
217
- L.DomUtil.disableTextSelection();
218
- L.DomUtil.disableImageDrag();
219
-
220
- this._startLayerPoint = layerPoint;
221
-
222
- L.DomEvent.on(document, "mousemove", this._onMouseMove, this)
223
- .on(document, "mouseup", this._onMouseUp, this)
224
- .on(document, "keydown", this._onKeyDown, this);
225
- },
226
-
227
- /**
228
- * @override
229
- */
230
- _onMouseMove: function (e) {
231
- if (!this._moved) {
232
- this._box = L.DomUtil.create("div", "leaflet-zoom-box", this._pane);
233
- L.DomUtil.setPosition(this._box, this._startLayerPoint);
234
- this._map.fire(L.Map.SelectArea.AREA_SELECT_START);
235
- }
236
-
237
- var startPoint = this._startLayerPoint;
238
- var box = this._box;
239
-
240
- var layerPoint = this._map.mouseEventToLayerPoint(e);
241
- var offset = layerPoint.subtract(startPoint);
242
-
243
- if (!this._validate(layerPoint)) return;
244
- this._lastLayerPoint = layerPoint;
245
-
246
- var newPos = new L.Point(
247
- Math.min(layerPoint.x, startPoint.x),
248
- Math.min(layerPoint.y, startPoint.y)
249
- );
250
-
251
- L.DomUtil.setPosition(box, newPos);
252
-
253
- this._moved = true;
254
-
255
- // TODO refactor: remove hardcoded 4 pixels
256
- box.style.width = Math.max(0, Math.abs(offset.x) - 4) + "px";
257
- box.style.height = Math.max(0, Math.abs(offset.y) - 4) + "px";
258
- },
259
-
260
- /**
261
- * General on/off toggle
262
- * @param {KeyboardEvent} e
263
- */
264
- _onKeyUp: function (e) {
265
- if (e.keyCode === 27) {
266
- if (this._moved && this._box) {
267
- this._finish();
268
- }
269
- // this.disable();
270
- } else if (this.options.ctrlKey) {
271
- this._restoreCursor();
272
- this._map.dragging.enable();
273
- }
274
- },
275
-
276
- /**
277
- * Key down listener to enable on ctrl-press
278
- * @param {KeyboardEvent} e
279
- */
280
- _onKeyPress: function (e) {
281
- if (
282
- this.options.ctrlKey &&
283
- (e.ctrlKey || e.type === "dragstart") &&
284
- this._beforeCursor === null
285
- ) {
286
- this._setCursor();
287
- this._map.dragging._draggable._onUp(e); // hardcore
288
- this._map.dragging.disable();
289
- }
290
- },
291
-
292
- /**
293
- * Window blur listener to restore state
294
- * @param {Event} e
295
- */
296
- _onBlur: function (e) {
297
- this._restoreCursor();
298
- this._map.dragging.enable();
299
- },
300
-
301
- /**
302
- * Set crosshair cursor
303
- */
304
- _setCursor: function () {
305
- this._beforeCursor = this._container.style.cursor;
306
- this._container.style.cursor = this.options.cursor;
307
- },
308
-
309
- /**
310
- * Restore status quo cursor
311
- */
312
- _restoreCursor: function () {
313
- this._container.style.cursor = this._beforeCursor;
314
- this._beforeCursor = null;
315
- },
316
-
317
- /**
318
- * @override
319
- */
320
- _onMouseUp: function (e) {
321
- this._finish();
322
-
323
- var map = this._map;
324
- var layerPoint = this._lastLayerPoint; // map.mouseEventToLayerPoint(e);
325
-
326
- if (!layerPoint || this._startLayerPoint.equals(layerPoint)) return;
327
- L.DomEvent.stop(e);
328
-
329
- var bounds = new L.LatLngBounds(
330
- map.layerPointToLatLng(this._startLayerPoint),
331
- map.layerPointToLatLng(layerPoint)
332
- );
333
-
334
- //map.fitBounds(bounds);
335
-
336
- if (this._autoDisable) {
337
- this.disable();
338
- } else {
339
- this._restoreCursor();
340
- }
341
-
342
- this._moved = false;
343
-
344
- L.Util.requestAnimFrame(function () {
345
- map.fire(L.Map.SelectArea.AREA_SELECTED, {
346
- bounds: bounds,
347
- });
348
- });
349
- },
350
- });
351
-
352
- // expose setting
353
- L.Map.mergeOptions({
354
- selectArea: false,
355
- });
356
-
357
- // register hook
358
- L.Map.addInitHook("addHandler", "selectArea", L.Map.SelectArea);
359
- }
@@ -1,61 +0,0 @@
1
- import React from 'react';
2
- import { StoryFn, Meta } from '@storybook/react';
3
- import Map from './Map';
4
-
5
- export default {
6
- title: 'Primitives/Map',
7
- component: Map,
8
- parameters: {
9
- layout: 'centered',
10
- },
11
- } as Meta<typeof Map>;
12
-
13
- const Template: StoryFn<typeof Map> = (args) => <Map {...args} />;
14
-
15
- const entities = [
16
- {
17
- "@id": "#geo_1",
18
- "@type": ["GeoCoordinates"],
19
- name: "geocoordinates",
20
- geojson: [
21
- JSON.stringify({
22
- type: "Feature",
23
- properties: { name: "Nyaki Nyaki / Njaki Njaki" },
24
- geometry: {
25
- type: "Point",
26
- coordinates: ["118.75508272649", "-32.390945191928"]
27
- }
28
- })
29
- ],
30
- },
31
- {
32
- "@id": "#geo_2",
33
- "@type": ["GeoShape"],
34
- name: "geoshape",
35
- geojson: [
36
- JSON.stringify({
37
- type: "Feature",
38
- geometry: {
39
- type: "Polygon",
40
- coordinates: [[[158.76561641693118,-7.710991655433217],[158.76561641693118,-47.040182144806664],[109.54686641693117,-47.040182144806664],[109.54686641693117,-7.710991655433217]]],
41
- }
42
- })
43
- ],
44
- },
45
- ];
46
-
47
- export const GeoJSONPoint = Template.bind({});
48
- GeoJSONPoint.args = {
49
- entity: entities[0],
50
- crateManager: {
51
- getEntity: ({ id }) => entities[0],
52
- },
53
- };
54
-
55
- export const GeoJSONArea = Template.bind({});
56
- GeoJSONArea.args = {
57
- entity: entities[1],
58
- crateManager: {
59
- getEntity: ({ id }) => entities[1],
60
- },
61
- };
@@ -1,124 +0,0 @@
1
- import React, { useEffect, useRef } from 'react';
2
- import "leaflet/dist/leaflet.css";
3
- import L from "leaflet";
4
- import { wktToGeoJSON } from "@terraformer/wkt";
5
-
6
- export interface MapProps {
7
- entity: {
8
- "@id": string;
9
- asWKT?: string[];
10
- geojson?: string[];
11
- };
12
- crateManager: {
13
- getEntity: (params: { id: string }) => any;
14
- };
15
- }
16
-
17
- const Map: React.FC<MapProps> = ({ entity, crateManager }) => {
18
- const mapRef = useRef<HTMLDivElement>(null);
19
- const mapInstance = useRef<L.Map | null>(null);
20
- const layers = useRef<L.Layer[]>([]);
21
- const mapId = btoa(entity["@id"]);
22
-
23
- useEffect(() => {
24
- if (!mapRef.current || !crateManager) return;
25
-
26
- // Initialize map
27
- const map = L.map(mapRef.current, {
28
- center: [0, 0],
29
- zoom: 1,
30
- scrollWheelZoom: false,
31
- touchZoom: false,
32
- });
33
-
34
- // Set default icon
35
- const DefaultIcon = L.icon({
36
- iconUrl: '/marker-icon.png',
37
- shadowUrl: '/marker-shadow.png',
38
- });
39
- L.Marker.prototype.options.icon = DefaultIcon;
40
-
41
- mapInstance.current = map;
42
- initMap(); // This will now have access to crateManager
43
-
44
- return () => {
45
- map.off();
46
- map.remove();
47
- };
48
- }, [crateManager]); // Add crateManager to dependencies
49
-
50
- const removeExistingLayers = () => {
51
- layers.current.forEach((layer) => mapInstance.current?.removeLayer(layer));
52
- layers.current = [];
53
- };
54
-
55
- const addFeatureGroup = (geoJSON: any[]) => {
56
- try {
57
- if (!mapInstance.current) return;
58
-
59
- const fg = L.featureGroup(
60
- geoJSON.map((json) =>
61
- L.geoJSON(json, {
62
- pointToLayer: (feature, latlng) => L.marker(latlng),
63
- })
64
- )
65
- );
66
-
67
- fg.setStyle({ color: "#334155", weight: 2, fill: false });
68
- fg.addTo(mapInstance.current);
69
- layers.current.push(fg);
70
-
71
- setTimeout(() => {
72
- try {
73
- mapInstance.current?.flyToBounds(fg.getBounds(), { maxZoom: 3, duration: 2 });
74
- } catch (error) {
75
- // swallow zoom errors as it's most likely to be because the map is no longer showing
76
- }
77
- }, 1500);
78
-
79
- return fg;
80
- } catch (error) {
81
- console.error(error);
82
- }
83
- };
84
-
85
- const initMap = async () => {
86
- if (!mapInstance.current || !crateManager) return;
87
-
88
- const currentEntity = crateManager.getEntity({ id: entity["@id"] });
89
- if (!currentEntity) return;
90
-
91
- // Add tile layer
92
- L.tileLayer(
93
- "https://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer/tile/{z}/{y}/{x}",
94
- {
95
- attribution:
96
- "Tiles &copy; Esri &mdash; Source: Esri, DeLorme, NAVTEQ, USGS, Intermap, iPC, NRCAN, Esri Japan, METI, Esri China (Hong Kong), Esri (Thailand), TomTom, 2012",
97
- minZoom: 1,
98
- maxZoom: 16,
99
- }
100
- ).addTo(mapInstance.current);
101
-
102
- // we need to give leaflet and react and the dom a couple seconds before continuing
103
- await new Promise((resolve) => setTimeout(resolve, 200));
104
-
105
- // preference WKT in order to be conformant with the spec...
106
- if (currentEntity?.asWKT) {
107
- removeExistingLayers();
108
- await new Promise((resolve) => setTimeout(resolve, 200));
109
- const geojsons = currentEntity.asWKT.map((wkt: string) => wktToGeoJSON(wkt));
110
- addFeatureGroup(geojsons);
111
- } else if (currentEntity?.geojson) {
112
- const geojson = JSON.parse(currentEntity.geojson[0]);
113
- removeExistingLayers();
114
- await new Promise((resolve) => setTimeout(resolve, 200));
115
- addFeatureGroup([geojson]);
116
- }
117
- };
118
-
119
- return (
120
- <div id={mapId} className="w-[600px] h-[520px] describo-property-type-map" ref={mapRef} />
121
- );
122
- };
123
-
124
- export default Map;
@@ -1,74 +0,0 @@
1
- import React from 'react';
2
- import { Meta, StoryObj } from '@storybook/react';
3
- import NumberComponent from './Number';
4
-
5
- // Update i18n translations for number component
6
- import i18next from 'i18next';
7
-
8
- // Add translations if not already present
9
- if (!i18next.exists('invalid_number_value')) {
10
- i18next.addResourceBundle('en', 'translation', {
11
- invalid_number_value: 'Invalid number value: {{value}}',
12
- number_constraints_error_message: 'Number constraints not met: {{value}}'
13
- }, true, true);
14
- }
15
-
16
- const meta: Meta<typeof NumberComponent> = {
17
- component: NumberComponent,
18
- title: 'Primitives/Number',
19
- argTypes: {
20
- value: {
21
- control: { type: 'text' }
22
- },
23
- onSaveProperty: { action: 'saveProperty' },
24
- definition: { control: 'object' }
25
- }
26
- };
27
-
28
- export default meta;
29
-
30
- type Story = StoryObj<typeof NumberComponent>;
31
-
32
- export const SimpleNumber: Story = {
33
- args: {
34
- property: 'number',
35
- value: 1
36
- }
37
- };
38
-
39
- export const InvalidNumber: Story = {
40
- args: {
41
- property: 'number',
42
- value: 'not a number'
43
- }
44
- };
45
-
46
- export const WithMinValue: Story = {
47
- args: {
48
- property: 'number',
49
- value: 5,
50
- definition: {
51
- minValue: 10
52
- }
53
- }
54
- };
55
-
56
- export const WithMaxValue: Story = {
57
- args: {
58
- property: 'number',
59
- value: 15,
60
- definition: {
61
- maxValue: 10
62
- }
63
- }
64
- };
65
-
66
- export const WithNumberType: Story = {
67
- args: {
68
- property: 'number',
69
- value: 10.5,
70
- definition: {
71
- numberType: ['int'] // Only integers allowed
72
- }
73
- }
74
- };