@d1vij/jassm 0.1.9 → 0.1.11
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.
- package/dist/index.d.ts +29 -4
- package/dist/index.js +14 -25
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,33 @@
|
|
|
1
1
|
import { MDXComponents } from "mdx/types";
|
|
2
|
-
|
|
2
|
+
type MDXComponent = MDXComponents[number];
|
|
3
|
+
declare const BaseElementTags: readonly ["h1", "h2", "h3", "h4", "h5", "h6", "a", "em", "del", "strong", "code", "blockquote", "pre", "p", "hr", "ol", "ul", "li", "img", "table", "thead", "tbody", "th", "tr", "td"];
|
|
4
|
+
declare const BaseElements: Record<(typeof BaseElementTags)[number], MDXComponent>;
|
|
3
5
|
type JSX = React.JSX.Element | null;
|
|
4
6
|
type HeaderLevels = 1 | 2 | 3 | 4 | 5 | 6;
|
|
5
7
|
import { MDXComponents as MDXComponents2, MDXProps } from "mdx/types";
|
|
8
|
+
type Element2 = MDXComponent | React.FunctionComponent;
|
|
9
|
+
/**
|
|
10
|
+
* Generate Element object passable to {@link MDXFromComponent.components} prop.
|
|
11
|
+
* Its recommended that atleast one Element map contains the base elements.
|
|
12
|
+
* The inbuilt elements
|
|
13
|
+
* @param elements Map of custom elements
|
|
14
|
+
* @param baseElements Include the inbuilt elements in the map set (default `true`)
|
|
15
|
+
* @returns Map of {@link Element}
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* import MapElement from "@/components/Map";
|
|
19
|
+
* import CommentSection from "@/components/CommentSection"
|
|
20
|
+
* const elements = generateElementsFrom({MapElement, CommentSection}); // default baseElements is true, so inbuilt elements would be included.
|
|
21
|
+
*
|
|
22
|
+
* // then later on
|
|
23
|
+
* // defined elements along with inbuilt ones would be available in the .mdx files
|
|
24
|
+
* <MDXFromComponent elements={elements}/>
|
|
25
|
+
*
|
|
26
|
+
*/
|
|
27
|
+
declare function generateElementsFrom<
|
|
28
|
+
E extends Record<string, Element2>,
|
|
29
|
+
B extends boolean = true
|
|
30
|
+
>(elements: E, baseElements?: B): { [K in B extends true ? keyof E | (typeof BaseElementTags)[number] : keyof E] : Element2 };
|
|
6
31
|
/**
|
|
7
32
|
* File extension(s) to accept
|
|
8
33
|
*/
|
|
@@ -133,7 +158,7 @@ declare const StyleContext: React.Context<StyleClassesMap>;
|
|
|
133
158
|
*/
|
|
134
159
|
declare function useStyles(): StyleClassesMap;
|
|
135
160
|
type MDXFromComponentProps = {
|
|
136
|
-
|
|
161
|
+
source: React.ComponentType<MDXProps>;
|
|
137
162
|
styles: StyleClassesMap;
|
|
138
163
|
elements?: MDXComponents2;
|
|
139
164
|
fallback?: React.ReactNode;
|
|
@@ -141,5 +166,5 @@ type MDXFromComponentProps = {
|
|
|
141
166
|
/**
|
|
142
167
|
* Simple way to directly load a component from the Registry
|
|
143
168
|
*/
|
|
144
|
-
declare function MDXFromComponent({ SourceComponent, styles, fallback, elements }: MDXFromComponentProps): JSX;
|
|
145
|
-
export { useStyles, generateRegistries, StyleContext, StyleClassesMap, StyleClassesList, StyleClasses, RegistryOptions, RegistryOf, RegistryKey, Registry, MDXFromComponentProps, MDXFromComponent, MDXFile, HeaderLevels, ExportsRegistry, ExportSingleType, ExportAllType,
|
|
169
|
+
declare function MDXFromComponent({ source: SourceComponent, styles, fallback, elements }: MDXFromComponentProps): JSX;
|
|
170
|
+
export { useStyles, generateRegistries, generateElementsFrom, StyleContext, StyleClassesMap, StyleClassesList, StyleClasses, RegistryOptions, RegistryOf, RegistryKey, Registry, MDXFromComponentProps, MDXFromComponent, MDXFile, HeaderLevels, ExportsRegistry, ExportSingleType, ExportAllType, Element2 as Element, ComponentRegistry, CoalescedRegistry, BaseElements, BaseElementTags };
|
package/dist/index.js
CHANGED
|
@@ -264,7 +264,7 @@ function TableData(props) {
|
|
|
264
264
|
}
|
|
265
265
|
|
|
266
266
|
// src/components/Elements/Elements.tsx
|
|
267
|
-
var
|
|
267
|
+
var BaseElements2 = {
|
|
268
268
|
h1: (props) => Header({ ...props, level: 1 }),
|
|
269
269
|
h2: (props) => Header({ ...props, level: 2 }),
|
|
270
270
|
h3: (props) => Header({ ...props, level: 3 }),
|
|
@@ -291,9 +291,14 @@ var Elements = {
|
|
|
291
291
|
tr: TableRow,
|
|
292
292
|
td: TableData
|
|
293
293
|
};
|
|
294
|
-
// src/components/Loader.tsx
|
|
295
|
-
import { Suspense } from "react";
|
|
296
294
|
|
|
295
|
+
// src/lib/generateElements.ts
|
|
296
|
+
function generateElementsFrom(elements, baseElements = true) {
|
|
297
|
+
if (baseElements) {
|
|
298
|
+
return { ...BaseElements2, ...elements };
|
|
299
|
+
} else
|
|
300
|
+
return { ...elements };
|
|
301
|
+
}
|
|
297
302
|
// src/lib/Registry.ts
|
|
298
303
|
import { lazy } from "react";
|
|
299
304
|
function generateRegistries({
|
|
@@ -311,7 +316,7 @@ function generateRegistries({
|
|
|
311
316
|
throw new Error(`No such file exsits as ${src}`);
|
|
312
317
|
}
|
|
313
318
|
components.push([`${mountOn}${virtual}`, lazy(loader)]);
|
|
314
|
-
exports.push([`${mountOn}${virtual}`,
|
|
319
|
+
exports.push([`${mountOn}${virtual}`, loader()]);
|
|
315
320
|
}
|
|
316
321
|
return [Object.fromEntries(components), Object.fromEntries(exports)];
|
|
317
322
|
}
|
|
@@ -349,31 +354,15 @@ class CoalescedRegistry extends AbstractRegistry {
|
|
|
349
354
|
this.exports = Object.assign({}, ...registries.map((r) => r.getExports()));
|
|
350
355
|
}
|
|
351
356
|
}
|
|
352
|
-
// src/components/Loader.tsx
|
|
353
|
-
import { jsx as jsx14 } from "react/jsx-runtime";
|
|
354
|
-
function MDXFromComponent({
|
|
355
|
-
SourceComponent,
|
|
356
|
-
styles,
|
|
357
|
-
fallback,
|
|
358
|
-
elements = Elements
|
|
359
|
-
}) {
|
|
360
|
-
return /* @__PURE__ */ jsx14(StyleContext, {
|
|
361
|
-
value: styles,
|
|
362
|
-
children: /* @__PURE__ */ jsx14(Suspense, {
|
|
363
|
-
fallback,
|
|
364
|
-
children: /* @__PURE__ */ jsx14(SourceComponent, {
|
|
365
|
-
components: elements
|
|
366
|
-
})
|
|
367
|
-
})
|
|
368
|
-
});
|
|
369
|
-
}
|
|
370
357
|
export {
|
|
371
358
|
useStyles,
|
|
372
359
|
generateRegistries,
|
|
360
|
+
generateElementsFrom,
|
|
373
361
|
StyleContext,
|
|
374
362
|
StyleClassesList,
|
|
375
363
|
Registry,
|
|
376
|
-
MDXFromComponent,
|
|
377
|
-
|
|
378
|
-
|
|
364
|
+
MDXFromComponent2 as MDXFromComponent,
|
|
365
|
+
CoalescedRegistry,
|
|
366
|
+
BaseElements,
|
|
367
|
+
BaseElementTags
|
|
379
368
|
};
|
package/package.json
CHANGED