@krantho/seo 0.0.0-stage → 1.0.0

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 (243) hide show
  1. package/LICENSE +21 -0
  2. package/dist/archetypes/define-archetype.d.ts +23 -0
  3. package/dist/archetypes/define-archetype.d.ts.map +1 -0
  4. package/dist/archetypes/define-archetype.js +51 -0
  5. package/dist/archetypes/define-archetype.js.map +1 -0
  6. package/dist/archetypes/index.d.ts +4 -0
  7. package/dist/archetypes/index.d.ts.map +1 -0
  8. package/dist/archetypes/index.js +3 -0
  9. package/dist/archetypes/index.js.map +1 -0
  10. package/dist/archetypes/presets.d.ts +21 -0
  11. package/dist/archetypes/presets.d.ts.map +1 -0
  12. package/dist/archetypes/presets.js +42 -0
  13. package/dist/archetypes/presets.js.map +1 -0
  14. package/dist/archetypes/types.d.ts +20 -0
  15. package/dist/archetypes/types.d.ts.map +1 -0
  16. package/dist/archetypes/types.js +2 -0
  17. package/dist/archetypes/types.js.map +1 -0
  18. package/dist/catalog/auto-mappings.d.ts +39 -0
  19. package/dist/catalog/auto-mappings.d.ts.map +1 -0
  20. package/dist/catalog/auto-mappings.js +64 -0
  21. package/dist/catalog/auto-mappings.js.map +1 -0
  22. package/dist/catalog/index.d.ts +7 -0
  23. package/dist/catalog/index.d.ts.map +1 -0
  24. package/dist/catalog/index.js +4 -0
  25. package/dist/catalog/index.js.map +1 -0
  26. package/dist/catalog/properties.d.ts +9 -0
  27. package/dist/catalog/properties.d.ts.map +1 -0
  28. package/dist/catalog/properties.js +630 -0
  29. package/dist/catalog/properties.js.map +1 -0
  30. package/dist/catalog/property-atoms.d.ts +53 -0
  31. package/dist/catalog/property-atoms.d.ts.map +1 -0
  32. package/dist/catalog/property-atoms.js +170 -0
  33. package/dist/catalog/property-atoms.js.map +1 -0
  34. package/dist/catalog/types.d.ts +53 -0
  35. package/dist/catalog/types.d.ts.map +1 -0
  36. package/dist/catalog/types.js +423 -0
  37. package/dist/catalog/types.js.map +1 -0
  38. package/dist/create-seo.d.ts +70 -0
  39. package/dist/create-seo.d.ts.map +1 -0
  40. package/dist/create-seo.js +137 -0
  41. package/dist/create-seo.js.map +1 -0
  42. package/dist/decorators/breadcrumb.d.ts +12 -0
  43. package/dist/decorators/breadcrumb.d.ts.map +1 -0
  44. package/dist/decorators/breadcrumb.js +36 -0
  45. package/dist/decorators/breadcrumb.js.map +1 -0
  46. package/dist/decorators/index.d.ts +8 -0
  47. package/dist/decorators/index.d.ts.map +1 -0
  48. package/dist/decorators/index.js +13 -0
  49. package/dist/decorators/index.js.map +1 -0
  50. package/dist/decorators/nodes.d.ts +12 -0
  51. package/dist/decorators/nodes.d.ts.map +1 -0
  52. package/dist/decorators/nodes.js +29 -0
  53. package/dist/decorators/nodes.js.map +1 -0
  54. package/dist/decorators/page.d.ts +13 -0
  55. package/dist/decorators/page.d.ts.map +1 -0
  56. package/dist/decorators/page.js +68 -0
  57. package/dist/decorators/page.js.map +1 -0
  58. package/dist/decorators/registry.d.ts +11 -0
  59. package/dist/decorators/registry.d.ts.map +1 -0
  60. package/dist/decorators/registry.js +29 -0
  61. package/dist/decorators/registry.js.map +1 -0
  62. package/dist/decorators/sequence.d.ts +8 -0
  63. package/dist/decorators/sequence.d.ts.map +1 -0
  64. package/dist/decorators/sequence.js +22 -0
  65. package/dist/decorators/sequence.js.map +1 -0
  66. package/dist/decorators/types.d.ts +30 -0
  67. package/dist/decorators/types.d.ts.map +1 -0
  68. package/dist/decorators/types.js +2 -0
  69. package/dist/decorators/types.js.map +1 -0
  70. package/dist/define-seo.d.ts +21 -0
  71. package/dist/define-seo.d.ts.map +1 -0
  72. package/dist/define-seo.js +31 -0
  73. package/dist/define-seo.js.map +1 -0
  74. package/dist/graph/build-entity.d.ts +47 -0
  75. package/dist/graph/build-entity.d.ts.map +1 -0
  76. package/dist/graph/build-entity.js +69 -0
  77. package/dist/graph/build-entity.js.map +1 -0
  78. package/dist/graph/compose-from-config.d.ts +89 -0
  79. package/dist/graph/compose-from-config.d.ts.map +1 -0
  80. package/dist/graph/compose-from-config.js +189 -0
  81. package/dist/graph/compose-from-config.js.map +1 -0
  82. package/dist/graph/compose-graph.d.ts +40 -0
  83. package/dist/graph/compose-graph.d.ts.map +1 -0
  84. package/dist/graph/compose-graph.js +30 -0
  85. package/dist/graph/compose-graph.js.map +1 -0
  86. package/dist/graph/effective-config.d.ts +36 -0
  87. package/dist/graph/effective-config.d.ts.map +1 -0
  88. package/dist/graph/effective-config.js +84 -0
  89. package/dist/graph/effective-config.js.map +1 -0
  90. package/dist/graph/id-conventions.d.ts +47 -0
  91. package/dist/graph/id-conventions.d.ts.map +1 -0
  92. package/dist/graph/id-conventions.js +78 -0
  93. package/dist/graph/id-conventions.js.map +1 -0
  94. package/dist/graph/index.d.ts +9 -0
  95. package/dist/graph/index.d.ts.map +1 -0
  96. package/dist/graph/index.js +4 -0
  97. package/dist/graph/index.js.map +1 -0
  98. package/dist/graph/resolve-properties.d.ts +36 -0
  99. package/dist/graph/resolve-properties.d.ts.map +1 -0
  100. package/dist/graph/resolve-properties.js +141 -0
  101. package/dist/graph/resolve-properties.js.map +1 -0
  102. package/dist/graph/resolve-references.d.ts +14 -0
  103. package/dist/graph/resolve-references.d.ts.map +1 -0
  104. package/dist/graph/resolve-references.js +49 -0
  105. package/dist/graph/resolve-references.js.map +1 -0
  106. package/dist/graph/typed-value.d.ts +7 -0
  107. package/dist/graph/typed-value.d.ts.map +1 -0
  108. package/dist/graph/typed-value.js +43 -0
  109. package/dist/graph/typed-value.js.map +1 -0
  110. package/dist/graph/types.d.ts +34 -0
  111. package/dist/graph/types.d.ts.map +1 -0
  112. package/dist/graph/types.js +2 -0
  113. package/dist/graph/types.js.map +1 -0
  114. package/dist/graph/value-scope.d.ts +19 -0
  115. package/dist/graph/value-scope.d.ts.map +1 -0
  116. package/dist/graph/value-scope.js +30 -0
  117. package/dist/graph/value-scope.js.map +1 -0
  118. package/dist/index.d.ts +28 -0
  119. package/dist/index.d.ts.map +1 -0
  120. package/dist/index.js +29 -0
  121. package/dist/index.js.map +1 -0
  122. package/dist/json-ld.d.ts +24 -0
  123. package/dist/json-ld.d.ts.map +1 -0
  124. package/dist/json-ld.js +24 -0
  125. package/dist/json-ld.js.map +1 -0
  126. package/dist/profiles/bing.d.ts +10 -0
  127. package/dist/profiles/bing.d.ts.map +1 -0
  128. package/dist/profiles/bing.js +13 -0
  129. package/dist/profiles/bing.js.map +1 -0
  130. package/dist/profiles/check.d.ts +11 -0
  131. package/dist/profiles/check.d.ts.map +1 -0
  132. package/dist/profiles/check.js +66 -0
  133. package/dist/profiles/check.js.map +1 -0
  134. package/dist/profiles/eligibility.d.ts +26 -0
  135. package/dist/profiles/eligibility.d.ts.map +1 -0
  136. package/dist/profiles/eligibility.js +49 -0
  137. package/dist/profiles/eligibility.js.map +1 -0
  138. package/dist/profiles/google.d.ts +4 -0
  139. package/dist/profiles/google.d.ts.map +1 -0
  140. package/dist/profiles/google.js +387 -0
  141. package/dist/profiles/google.js.map +1 -0
  142. package/dist/profiles/index.d.ts +10 -0
  143. package/dist/profiles/index.d.ts.map +1 -0
  144. package/dist/profiles/index.js +13 -0
  145. package/dist/profiles/index.js.map +1 -0
  146. package/dist/profiles/registry.d.ts +16 -0
  147. package/dist/profiles/registry.d.ts.map +1 -0
  148. package/dist/profiles/registry.js +66 -0
  149. package/dist/profiles/registry.js.map +1 -0
  150. package/dist/profiles/types.d.ts +29 -0
  151. package/dist/profiles/types.d.ts.map +1 -0
  152. package/dist/profiles/types.js +2 -0
  153. package/dist/profiles/types.js.map +1 -0
  154. package/dist/seo-graph.d.ts +39 -0
  155. package/dist/seo-graph.d.ts.map +1 -0
  156. package/dist/seo-graph.js +34 -0
  157. package/dist/seo-graph.js.map +1 -0
  158. package/dist/types/built-in/content.d.ts +12 -0
  159. package/dist/types/built-in/content.d.ts.map +1 -0
  160. package/dist/types/built-in/content.js +79 -0
  161. package/dist/types/built-in/content.js.map +1 -0
  162. package/dist/types/built-in/events.d.ts +23 -0
  163. package/dist/types/built-in/events.d.ts.map +1 -0
  164. package/dist/types/built-in/events.js +93 -0
  165. package/dist/types/built-in/events.js.map +1 -0
  166. package/dist/types/built-in/index.d.ts +4 -0
  167. package/dist/types/built-in/index.d.ts.map +1 -0
  168. package/dist/types/built-in/index.js +26 -0
  169. package/dist/types/built-in/index.js.map +1 -0
  170. package/dist/types/built-in/media.d.ts +21 -0
  171. package/dist/types/built-in/media.d.ts.map +1 -0
  172. package/dist/types/built-in/media.js +104 -0
  173. package/dist/types/built-in/media.js.map +1 -0
  174. package/dist/types/built-in/site.d.ts +14 -0
  175. package/dist/types/built-in/site.d.ts.map +1 -0
  176. package/dist/types/built-in/site.js +35 -0
  177. package/dist/types/built-in/site.js.map +1 -0
  178. package/dist/types/context.d.ts +26 -0
  179. package/dist/types/context.d.ts.map +1 -0
  180. package/dist/types/context.js +44 -0
  181. package/dist/types/context.js.map +1 -0
  182. package/dist/types/definition.d.ts +58 -0
  183. package/dist/types/definition.d.ts.map +1 -0
  184. package/dist/types/definition.js +2 -0
  185. package/dist/types/definition.js.map +1 -0
  186. package/dist/types/index.d.ts +4 -0
  187. package/dist/types/index.d.ts.map +1 -0
  188. package/dist/types/index.js +3 -0
  189. package/dist/types/index.js.map +1 -0
  190. package/dist/types/registry.d.ts +14 -0
  191. package/dist/types/registry.d.ts.map +1 -0
  192. package/dist/types/registry.js +37 -0
  193. package/dist/types/registry.js.map +1 -0
  194. package/dist/types/values.d.ts +23 -0
  195. package/dist/types/values.d.ts.map +1 -0
  196. package/dist/types/values.js +52 -0
  197. package/dist/types/values.js.map +1 -0
  198. package/dist/validate/check-terms.d.ts +15 -0
  199. package/dist/validate/check-terms.d.ts.map +1 -0
  200. package/dist/validate/check-terms.js +42 -0
  201. package/dist/validate/check-terms.js.map +1 -0
  202. package/dist/validate/check-value.d.ts +19 -0
  203. package/dist/validate/check-value.d.ts.map +1 -0
  204. package/dist/validate/check-value.js +77 -0
  205. package/dist/validate/check-value.js.map +1 -0
  206. package/dist/validate/graph-nodes.d.ts +22 -0
  207. package/dist/validate/graph-nodes.d.ts.map +1 -0
  208. package/dist/validate/graph-nodes.js +50 -0
  209. package/dist/validate/graph-nodes.js.map +1 -0
  210. package/dist/validate/index.d.ts +4 -0
  211. package/dist/validate/index.d.ts.map +1 -0
  212. package/dist/validate/index.js +2 -0
  213. package/dist/validate/index.js.map +1 -0
  214. package/dist/validate/types.d.ts +22 -0
  215. package/dist/validate/types.d.ts.map +1 -0
  216. package/dist/validate/types.js +2 -0
  217. package/dist/validate/types.js.map +1 -0
  218. package/dist/validate/validate-graph.d.ts +18 -0
  219. package/dist/validate/validate-graph.d.ts.map +1 -0
  220. package/dist/validate/validate-graph.js +109 -0
  221. package/dist/validate/validate-graph.js.map +1 -0
  222. package/dist/vocabulary/datatypes.d.ts +7 -0
  223. package/dist/vocabulary/datatypes.d.ts.map +1 -0
  224. package/dist/vocabulary/datatypes.js +46 -0
  225. package/dist/vocabulary/datatypes.js.map +1 -0
  226. package/dist/vocabulary/index.d.ts +5 -0
  227. package/dist/vocabulary/index.d.ts.map +1 -0
  228. package/dist/vocabulary/index.js +4 -0
  229. package/dist/vocabulary/index.js.map +1 -0
  230. package/dist/vocabulary/schemaorg.generated.d.ts +4 -0
  231. package/dist/vocabulary/schemaorg.generated.d.ts.map +1 -0
  232. package/dist/vocabulary/schemaorg.generated.js +3038 -0
  233. package/dist/vocabulary/schemaorg.generated.js.map +1 -0
  234. package/dist/vocabulary/types.d.ts +38 -0
  235. package/dist/vocabulary/types.d.ts.map +1 -0
  236. package/dist/vocabulary/types.js +2 -0
  237. package/dist/vocabulary/types.js.map +1 -0
  238. package/dist/vocabulary/vocabulary.d.ts +28 -0
  239. package/dist/vocabulary/vocabulary.d.ts.map +1 -0
  240. package/dist/vocabulary/vocabulary.js +89 -0
  241. package/dist/vocabulary/vocabulary.js.map +1 -0
  242. package/package.json +40 -3
  243. package/README.md +0 -3
@@ -0,0 +1,28 @@
1
+ import type { Lifecycle, VocabularyProperty, VocabularyType } from './types.js';
2
+ /** A term's name without a Schema.org prefix: `https://schema.org/InStock` → `InStock` */
3
+ export declare function termName(value: string): string;
4
+ /** The Schema.org class of that name, if the pinned release has it */
5
+ export declare function getVocabularyType(type: string): VocabularyType | undefined;
6
+ /** The Schema.org property of that name, if the pinned release has it */
7
+ export declare function getVocabularyProperty(property: string): VocabularyProperty | undefined;
8
+ /** The type and every class it inherits from; empty for a type the vocabulary does not have */
9
+ export declare function ancestorsOf(type: string): ReadonlySet<string>;
10
+ /** Whether `type` is `ancestor` or inherits from it */
11
+ export declare function isSubtypeOf(type: string, ancestor: string): boolean;
12
+ /** Whether the type is a data type (Text, URL, Integer …) */
13
+ export declare function isDatatype(type: string): boolean;
14
+ /** Whether the type is an enumeration, whose values are its members */
15
+ export declare function isEnumeration(type: string): boolean;
16
+ /** The enumerations a member belongs to; empty when the name is not a member */
17
+ export declare function enumerationsOf(member: string): readonly string[];
18
+ /** Whether the property may be used on the type, directly or through a superclass */
19
+ export declare function isPropertyOfType(property: string, type: string): boolean;
20
+ /** Every property the type may carry, its own and inherited */
21
+ export declare function propertiesOf(type: string): readonly string[];
22
+ /** Whether a value of the type fits the property's range */
23
+ export declare function rangeAcceptsType(property: string, type: string): boolean;
24
+ /** Where a type, property or enumeration member stands; undefined for a current term */
25
+ export declare function lifecycleOf(term: string): Lifecycle | undefined;
26
+ /** Whether the name is a term of the pinned release — a type, property or enumeration member */
27
+ export declare function isVocabularyTerm(term: string): boolean;
28
+ //# sourceMappingURL=vocabulary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocabulary.d.ts","sourceRoot":"","sources":["../../src/vocabulary/vocabulary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAI/E,0FAA0F;AAC1F,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAK9C;AAED,sEAAsE;AACtE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAE1E;AAED,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAItF;AAID,+FAA+F;AAC/F,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAY7D;AAED,uDAAuD;AACvD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEnE;AAED,6DAA6D;AAC7D,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAKhD;AAED,uEAAuE;AACvE,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAGhE;AAED,qFAAqF;AACrF,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAIxE;AAED,+DAA+D;AAC/D,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAE5D;AAED,4DAA4D;AAC5D,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAIxE;AAED,wFAAwF;AACxF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAO/D;AAED,gGAAgG;AAChG,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAOtD"}
@@ -0,0 +1,89 @@
1
+ import { VOCABULARY } from './schemaorg.generated.js';
2
+ const SCHEMA_PREFIXES = ['https://schema.org/', 'http://schema.org/', 'schema:'];
3
+ /** A term's name without a Schema.org prefix: `https://schema.org/InStock` → `InStock` */
4
+ export function termName(value) {
5
+ for (const prefix of SCHEMA_PREFIXES) {
6
+ if (value.startsWith(prefix))
7
+ return value.slice(prefix.length);
8
+ }
9
+ return value;
10
+ }
11
+ /** The Schema.org class of that name, if the pinned release has it */
12
+ export function getVocabularyType(type) {
13
+ return Object.hasOwn(VOCABULARY.types, type) ? VOCABULARY.types[type] : undefined;
14
+ }
15
+ /** The Schema.org property of that name, if the pinned release has it */
16
+ export function getVocabularyProperty(property) {
17
+ return Object.hasOwn(VOCABULARY.properties, property)
18
+ ? VOCABULARY.properties[property]
19
+ : undefined;
20
+ }
21
+ const ancestorCache = new Map();
22
+ /** The type and every class it inherits from; empty for a type the vocabulary does not have */
23
+ export function ancestorsOf(type) {
24
+ const cached = ancestorCache.get(type);
25
+ if (cached)
26
+ return cached;
27
+ const ancestors = new Set();
28
+ const pending = getVocabularyType(type) ? [type] : [];
29
+ for (let next = pending.pop(); next !== undefined; next = pending.pop()) {
30
+ if (ancestors.has(next))
31
+ continue;
32
+ ancestors.add(next);
33
+ pending.push(...(getVocabularyType(next)?.parents ?? []));
34
+ }
35
+ ancestorCache.set(type, ancestors);
36
+ return ancestors;
37
+ }
38
+ /** Whether `type` is `ancestor` or inherits from it */
39
+ export function isSubtypeOf(type, ancestor) {
40
+ return ancestorsOf(type).has(ancestor);
41
+ }
42
+ /** Whether the type is a data type (Text, URL, Integer …) */
43
+ export function isDatatype(type) {
44
+ for (const ancestor of ancestorsOf(type)) {
45
+ if (getVocabularyType(ancestor)?.datatype)
46
+ return true;
47
+ }
48
+ return false;
49
+ }
50
+ /** Whether the type is an enumeration, whose values are its members */
51
+ export function isEnumeration(type) {
52
+ return isSubtypeOf(type, 'Enumeration');
53
+ }
54
+ /** The enumerations a member belongs to; empty when the name is not a member */
55
+ export function enumerationsOf(member) {
56
+ const name = termName(member);
57
+ return Object.hasOwn(VOCABULARY.members, name) ? (VOCABULARY.members[name]?.types ?? []) : [];
58
+ }
59
+ /** Whether the property may be used on the type, directly or through a superclass */
60
+ export function isPropertyOfType(property, type) {
61
+ const domain = getVocabularyProperty(property)?.domain ?? [];
62
+ const ancestors = ancestorsOf(type);
63
+ return domain.some((owner) => ancestors.has(owner));
64
+ }
65
+ /** Every property the type may carry, its own and inherited */
66
+ export function propertiesOf(type) {
67
+ return Object.keys(VOCABULARY.properties).filter((property) => isPropertyOfType(property, type));
68
+ }
69
+ /** Whether a value of the type fits the property's range */
70
+ export function rangeAcceptsType(property, type) {
71
+ const range = getVocabularyProperty(property)?.range ?? [];
72
+ const ancestors = ancestorsOf(type);
73
+ return range.some((accepted) => ancestors.has(accepted));
74
+ }
75
+ /** Where a type, property or enumeration member stands; undefined for a current term */
76
+ export function lifecycleOf(term) {
77
+ const name = termName(term);
78
+ return (getVocabularyType(name)?.lifecycle ??
79
+ getVocabularyProperty(name)?.lifecycle ??
80
+ (Object.hasOwn(VOCABULARY.members, name) ? VOCABULARY.members[name]?.lifecycle : undefined));
81
+ }
82
+ /** Whether the name is a term of the pinned release — a type, property or enumeration member */
83
+ export function isVocabularyTerm(term) {
84
+ const name = termName(term);
85
+ return (getVocabularyType(name) !== undefined ||
86
+ getVocabularyProperty(name) !== undefined ||
87
+ Object.hasOwn(VOCABULARY.members, name));
88
+ }
89
+ //# sourceMappingURL=vocabulary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocabulary.js","sourceRoot":"","sources":["../../src/vocabulary/vocabulary.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,43 @@
1
1
  {
2
2
  "name": "@krantho/seo",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
3
+ "version": "1.0.0",
4
+ "license": "MIT",
5
+ "homepage": "https://krantho.com",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/descoped/krantho.git",
9
+ "directory": "packages/seo"
10
+ },
11
+ "bugs": {
12
+ "url": "https://github.com/descoped/krantho/issues"
13
+ },
14
+ "type": "module",
15
+ "exports": {
16
+ ".": {
17
+ "types": "./dist/index.d.ts",
18
+ "import": "./dist/index.js"
19
+ }
20
+ },
21
+ "files": [
22
+ "dist"
23
+ ],
24
+ "dependencies": {
25
+ "@krantho/core": "1.0.0",
26
+ "@krantho/seo-shared": "1.0.0"
27
+ },
28
+ "devDependencies": {
29
+ "@adobe/structured-data-validator": "^1.7.0",
30
+ "@types/node": "^25.9.9",
31
+ "@types/react": "^19.2.18",
32
+ "typescript": "^6.0.3"
33
+ },
34
+ "peerDependencies": {
35
+ "react": ">=19.0.0"
36
+ },
37
+ "scripts": {
38
+ "build": "tsc",
39
+ "typecheck": "tsc --noEmit",
40
+ "clean": "rm -rf dist",
41
+ "vocabulary": "node scripts/generate-vocabulary.mjs"
42
+ }
6
43
  }
package/README.md DELETED
@@ -1,3 +0,0 @@
1
- # Temporary Holding Version
2
-
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.