mtrl 0.3.1 → 0.3.2

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 (159) hide show
  1. package/.env +15 -0
  2. package/CONTRIBUTING.md +8 -8
  3. package/DOCS.md +3 -3
  4. package/README.md +43 -20
  5. package/TESTING.md +128 -18
  6. package/dist/index.js +14865 -0
  7. package/git-user-stats.js +545 -0
  8. package/index.ts +9 -67
  9. package/package.json +8 -3
  10. package/src/components/badge/api.ts +15 -1
  11. package/src/components/badge/badge.ts +43 -4
  12. package/src/components/badge/config.ts +40 -8
  13. package/src/components/badge/index.ts +64 -3
  14. package/src/components/badge/types.ts +175 -33
  15. package/src/components/button/api.ts +63 -1
  16. package/src/components/button/button.ts +39 -3
  17. package/src/components/button/config.ts +21 -4
  18. package/src/components/button/index.ts +26 -1
  19. package/src/components/button/types.ts +7 -1
  20. package/src/components/card/api.ts +78 -9
  21. package/src/components/card/card.ts +58 -3
  22. package/src/components/card/config.ts +41 -11
  23. package/src/components/card/features.ts +39 -12
  24. package/src/components/card/index.ts +84 -19
  25. package/src/components/card/types.ts +218 -29
  26. package/src/components/carousel/carousel.ts +92 -28
  27. package/src/components/carousel/constants.ts +107 -21
  28. package/src/components/carousel/index.ts +31 -13
  29. package/src/components/checkbox/checkbox.ts +83 -16
  30. package/src/components/checkbox/index.ts +43 -1
  31. package/src/components/checkbox/types.ts +219 -32
  32. package/src/components/chips/api.ts +194 -0
  33. package/src/components/{chip → chips/chip}/api.ts +42 -2
  34. package/src/components/chips/chip/chip.ts +131 -0
  35. package/src/components/{chip → chips/chip}/config.ts +3 -3
  36. package/src/components/chips/chip/index.ts +3 -0
  37. package/src/components/chips/chips.md +481 -0
  38. package/src/components/chips/chips.ts +75 -0
  39. package/src/components/chips/config.ts +109 -0
  40. package/src/components/chips/constants.ts +61 -0
  41. package/src/components/chips/features/chip-items.ts +33 -0
  42. package/src/components/chips/features/container.ts +77 -0
  43. package/src/components/chips/features/controller.ts +448 -0
  44. package/src/components/chips/features/index.ts +5 -0
  45. package/src/components/chips/features/label.ts +108 -0
  46. package/src/components/chips/index.ts +11 -0
  47. package/src/components/chips/schema.ts +61 -0
  48. package/src/components/{chip → chips}/types.ts +203 -92
  49. package/src/components/dialog/dialog.ts +99 -16
  50. package/src/components/dialog/index.ts +97 -1
  51. package/src/components/dialog/types.ts +375 -69
  52. package/src/components/divider/config.ts +90 -6
  53. package/src/components/divider/divider.ts +32 -2
  54. package/src/components/divider/features.ts +26 -0
  55. package/src/components/divider/index.ts +30 -0
  56. package/src/components/divider/types.ts +86 -9
  57. package/src/components/extended-fab/api.ts +53 -1
  58. package/src/components/extended-fab/config.ts +29 -1
  59. package/src/components/extended-fab/extended-fab.ts +28 -0
  60. package/src/components/extended-fab/index.ts +36 -0
  61. package/src/components/extended-fab/types.ts +458 -13
  62. package/src/components/fab/api.ts +42 -2
  63. package/src/components/fab/config.ts +29 -1
  64. package/src/components/fab/fab.ts +16 -2
  65. package/src/components/fab/index.ts +35 -0
  66. package/src/components/fab/types.ts +374 -10
  67. package/src/components/list/api.ts +12 -2
  68. package/src/components/list/config.ts +21 -0
  69. package/src/components/list/features.ts +6 -0
  70. package/src/components/list/index.ts +56 -1
  71. package/src/components/list/list-item.ts +46 -2
  72. package/src/components/list/list.ts +73 -2
  73. package/src/components/list/types.ts +172 -0
  74. package/src/components/list/utils.ts +26 -2
  75. package/src/components/menu/api.ts +217 -20
  76. package/src/components/menu/config.ts +27 -0
  77. package/src/components/menu/features/visibility.ts +55 -6
  78. package/src/components/menu/index.ts +64 -0
  79. package/src/components/menu/menu-item.ts +46 -3
  80. package/src/components/menu/menu.ts +77 -1
  81. package/src/components/menu/types.ts +404 -39
  82. package/src/components/sheet/config.ts +1 -2
  83. package/src/components/sheet/features/gestures.ts +1 -1
  84. package/src/components/sheet/features/position.ts +1 -2
  85. package/src/components/sheet/features/state.ts +1 -1
  86. package/src/components/sheet/index.ts +10 -2
  87. package/src/components/sheet/sheet.ts +1 -2
  88. package/src/components/sheet/types.ts +29 -1
  89. package/src/components/slider/api.ts +1 -1
  90. package/src/components/slider/config.ts +1 -1
  91. package/src/components/slider/features/controller.ts +1 -1
  92. package/src/components/slider/features/handlers.ts +1 -1
  93. package/src/components/slider/features/states.ts +1 -1
  94. package/src/components/slider/index.ts +12 -5
  95. package/src/components/slider/schema.ts +1 -1
  96. package/src/components/slider/types.ts +31 -0
  97. package/src/components/tabs/tab-api.ts +1 -1
  98. package/src/components/tabs/types.ts +1 -1
  99. package/src/components/tooltip/api.ts +6 -2
  100. package/src/components/tooltip/config.ts +9 -28
  101. package/src/components/tooltip/index.ts +10 -1
  102. package/src/components/tooltip/types.ts +38 -3
  103. package/src/index.ts +129 -31
  104. package/src/styles/abstract/_mixins.scss +23 -9
  105. package/src/styles/abstract/_variables.scss +14 -4
  106. package/src/styles/components/_card.scss +1 -1
  107. package/src/styles/components/_chip.scss +323 -113
  108. package/src/styles/components/_tabs.scss +1 -1
  109. package/CLAUDE.md +0 -33
  110. package/src/components/checkbox/constants.ts +0 -37
  111. package/src/components/chip/chip-set.ts +0 -225
  112. package/src/components/chip/chip.ts +0 -118
  113. package/src/components/chip/constants.ts +0 -28
  114. package/src/components/chip/index.ts +0 -12
  115. package/src/components/list/constants.ts +0 -116
  116. package/src/components/sheet/constants.ts +0 -20
  117. package/src/components/slider/constants.ts +0 -32
  118. package/src/components/tooltip/constants.ts +0 -27
  119. package/test/components/badge.test.ts +0 -545
  120. package/test/components/bottom-app-bar.test.ts +0 -303
  121. package/test/components/button.test.ts +0 -233
  122. package/test/components/card.test.ts +0 -560
  123. package/test/components/carousel.test.ts +0 -951
  124. package/test/components/checkbox.test.ts +0 -462
  125. package/test/components/chip.test.ts +0 -692
  126. package/test/components/datepicker.test.ts +0 -1124
  127. package/test/components/dialog.test.ts +0 -990
  128. package/test/components/divider.test.ts +0 -412
  129. package/test/components/extended-fab.test.ts +0 -672
  130. package/test/components/fab.test.ts +0 -561
  131. package/test/components/list.test.ts +0 -365
  132. package/test/components/menu.test.ts +0 -718
  133. package/test/components/navigation.test.ts +0 -186
  134. package/test/components/progress.test.ts +0 -567
  135. package/test/components/radios.test.ts +0 -699
  136. package/test/components/search.test.ts +0 -1135
  137. package/test/components/segmented-button.test.ts +0 -732
  138. package/test/components/sheet.test.ts +0 -641
  139. package/test/components/slider.test.ts +0 -1220
  140. package/test/components/snackbar.test.ts +0 -461
  141. package/test/components/switch.test.ts +0 -452
  142. package/test/components/tabs.test.ts +0 -1369
  143. package/test/components/textfield.test.ts +0 -400
  144. package/test/components/timepicker.test.ts +0 -592
  145. package/test/components/tooltip.test.ts +0 -630
  146. package/test/components/top-app-bar.test.ts +0 -566
  147. package/test/core/dom.attributes.test.ts +0 -148
  148. package/test/core/dom.classes.test.ts +0 -152
  149. package/test/core/dom.events.test.ts +0 -243
  150. package/test/core/emitter.test.ts +0 -141
  151. package/test/core/ripple.test.ts +0 -99
  152. package/test/core/state.store.test.ts +0 -189
  153. package/test/core/utils.normalize.test.ts +0 -61
  154. package/test/core/utils.object.test.ts +0 -120
  155. package/test/setup.js +0 -371
  156. package/test/setup.ts +0 -451
  157. package/tsconfig.json +0 -22
  158. package/typedoc.json +0 -28
  159. package/typedoc.simple.json +0 -14
package/test/setup.ts DELETED
@@ -1,451 +0,0 @@
1
- // test/setup.ts
2
- // Setup global DOM environment for testing
3
-
4
- /**
5
- * Mock Element implementation for testing
6
- */
7
- class MockElement {
8
- tagName: string;
9
- className: string;
10
- style: Record<string, string>;
11
- attributes: Record<string, string>;
12
- children: MockElement[];
13
- childNodes: MockElement[];
14
- __eventListeners: Record<string, Function[]>;
15
- __handlers: Record<string, Function[]>;
16
- innerHTML: string;
17
- textContent: string;
18
- dataset: Record<string, string>;
19
- parentNode: MockElement | null;
20
- disabled?: boolean;
21
-
22
- constructor(tagName: string) {
23
- this.tagName = tagName.toUpperCase();
24
- this.className = '';
25
- this.style = {};
26
- this.attributes = {};
27
- this.children = [];
28
- this.childNodes = [];
29
- this.__eventListeners = {};
30
- this.__handlers = {};
31
- this.innerHTML = '';
32
- this.textContent = '';
33
- this.dataset = {};
34
- this.parentNode = null;
35
-
36
- // Explicitly add __handlers for the tests that expect it
37
- this.__handlers = {};
38
- }
39
-
40
- appendChild(child: MockElement): MockElement {
41
- this.children.push(child);
42
- this.childNodes.push(child);
43
- child.parentNode = this;
44
- return child;
45
- }
46
-
47
- insertBefore(newChild: MockElement, referenceChild: MockElement | null): MockElement {
48
- const index = referenceChild ? this.children.indexOf(referenceChild) : 0;
49
- if (index === -1) {
50
- this.children.push(newChild);
51
- } else {
52
- this.children.splice(index, 0, newChild);
53
- }
54
- this.childNodes = [...this.children];
55
- newChild.parentNode = this;
56
- return newChild;
57
- }
58
-
59
- removeChild(child: MockElement): MockElement {
60
- const index = this.children.indexOf(child);
61
- if (index !== -1) {
62
- this.children.splice(index, 1);
63
- this.childNodes = [...this.children];
64
- child.parentNode = null;
65
- }
66
- return child;
67
- }
68
-
69
- getAttribute(name: string): string | null {
70
- return this.attributes[name] || null;
71
- }
72
-
73
- setAttribute(name: string, value: string): void {
74
- this.attributes[name] = value;
75
- if (name === 'class') this.className = value;
76
- if (name === 'disabled') this.disabled = true;
77
- }
78
-
79
- removeAttribute(name: string): void {
80
- delete this.attributes[name];
81
- if (name === 'class') this.className = '';
82
- if (name === 'disabled') this.disabled = false;
83
- }
84
-
85
- hasAttribute(name: string): boolean {
86
- return name in this.attributes;
87
- }
88
-
89
- querySelector(selector: string): MockElement | null {
90
- // Basic selector implementation for testing
91
- if (selector.startsWith('.')) {
92
- // Class selector
93
- const className = selector.substring(1);
94
- return this.getElementsByClassName(className)[0] || null;
95
- } else if (selector.includes(',')) {
96
- // Multiple selectors (comma-separated)
97
- const subSelectors = selector.split(',').map(s => s.trim());
98
- for (const subSelector of subSelectors) {
99
- const match = this.querySelector(subSelector);
100
- if (match) return match;
101
- }
102
- return null;
103
- }
104
- // Default
105
- return null;
106
- }
107
-
108
- querySelectorAll(selector: string): MockElement[] {
109
- if (selector.startsWith('.')) {
110
- return this.getElementsByClassName(selector.substring(1));
111
- }
112
- return [];
113
- }
114
-
115
- getElementsByClassName(className: string): MockElement[] {
116
- const results: MockElement[] = [];
117
- if (this.className && this.className.split(' ').includes(className)) {
118
- results.push(this);
119
- }
120
- this.children.forEach(child => {
121
- if (child.getElementsByClassName) {
122
- results.push(...child.getElementsByClassName(className));
123
- }
124
- });
125
- return results;
126
- }
127
-
128
- addEventListener(type: string, listener: Function): void {
129
- // Support dual storage for different test expectations
130
- if (!this.__eventListeners[type]) {
131
- this.__eventListeners[type] = [];
132
- }
133
- this.__eventListeners[type].push(listener);
134
-
135
- // Also store in __handlers for tests that expect it
136
- if (!this.__handlers[type]) {
137
- this.__handlers[type] = [];
138
- }
139
- this.__handlers[type].push(listener);
140
- }
141
-
142
- removeEventListener(type: string, listener: Function): void {
143
- if (this.__eventListeners[type]) {
144
- this.__eventListeners[type] = this.__eventListeners[type]
145
- .filter(l => l !== listener);
146
- }
147
-
148
- if (this.__handlers && this.__handlers[type]) {
149
- this.__handlers[type] = this.__handlers[type]
150
- .filter(l => l !== listener);
151
- }
152
- }
153
-
154
- dispatchEvent(event: Event): boolean {
155
- event.target = this as any;
156
- if (this.__eventListeners[event.type]) {
157
- this.__eventListeners[event.type].forEach(listener => {
158
- listener(event);
159
- });
160
- }
161
- return !event.defaultPrevented;
162
- }
163
-
164
- get classList(): {
165
- add: (...classes: string[]) => void;
166
- remove: (...classes: string[]) => void;
167
- toggle: (c: string) => boolean;
168
- contains: (c: string) => boolean;
169
- toString: () => string;
170
- } {
171
- const classNames = this.className ? this.className.split(' ').filter(Boolean) : [];
172
- return {
173
- add: (...classes: string[]) => {
174
- classes.forEach(c => {
175
- if (!classNames.includes(c)) {
176
- classNames.push(c);
177
- }
178
- });
179
- this.className = classNames.join(' ');
180
- },
181
- remove: (...classes: string[]) => {
182
- classes.forEach(c => {
183
- const index = classNames.indexOf(c);
184
- if (index !== -1) {
185
- classNames.splice(index, 1);
186
- }
187
- });
188
- this.className = classNames.join(' ');
189
- },
190
- toggle: (c: string) => {
191
- const index = classNames.indexOf(c);
192
- if (index !== -1) {
193
- classNames.splice(index, 1);
194
- this.className = classNames.join(' ');
195
- return false;
196
- } else {
197
- classNames.push(c);
198
- this.className = classNames.join(' ');
199
- return true;
200
- }
201
- },
202
- contains: (c: string) => classNames.includes(c),
203
- toString: () => this.className || ''
204
- };
205
- }
206
-
207
- getBoundingClientRect(): DOMRect {
208
- return {
209
- width: 100,
210
- height: 50,
211
- top: 0,
212
- left: 0,
213
- right: 100,
214
- bottom: 50,
215
- x: 0,
216
- y: 0,
217
- toJSON: () => ({})
218
- };
219
- }
220
-
221
- remove(): void {
222
- if (this.parentNode) {
223
- this.parentNode.removeChild(this);
224
- }
225
- }
226
-
227
- // Support closest for navigation tests
228
- closest(selector: string): MockElement | null {
229
- // Always return an element with minimal functionality for navigation tests to work
230
- const mockClosest = new MockElement('div');
231
- mockClosest.className = selector.replace(/^\./, '');
232
-
233
- // For navigation tests, ensure the element can be queried
234
- mockClosest.querySelector = (childSelector: string) => {
235
- const mockChild = new MockElement('div');
236
- mockChild.className = childSelector.replace(/^\./, '');
237
-
238
- // Further support nested querying
239
- mockChild.querySelector = (grandchildSelector: string) => {
240
- const mockGrandchild = new MockElement('div');
241
- mockGrandchild.className = grandchildSelector.replace(/^\./, '');
242
- mockGrandchild.dataset = { id: 'mock-id' };
243
- return mockGrandchild;
244
- };
245
-
246
- return mockChild;
247
- };
248
-
249
- return mockClosest;
250
- }
251
-
252
- // Simple matches implementation
253
- matches(selector: string): boolean {
254
- if (selector.startsWith('.')) {
255
- return this.classList.contains(selector.substring(1));
256
- }
257
- return false;
258
- }
259
- }
260
-
261
- // Create document fragment element
262
- class MockDocumentFragment extends MockElement {
263
- constructor() {
264
- super('#document-fragment');
265
- }
266
-
267
- hasChildNodes(): boolean {
268
- return this.childNodes.length > 0;
269
- }
270
- }
271
-
272
- // Define types for global augmentation
273
- interface CustomGlobalThis {
274
- document: {
275
- createElement: (tag: string) => MockElement;
276
- createDocumentFragment: () => MockDocumentFragment;
277
- body: MockElement;
278
- __eventListeners: Record<string, Function[]>;
279
- addEventListener: (type: string, listener: Function) => void;
280
- removeEventListener: (type: string, listener: Function) => void;
281
- dispatchEvent: (event: Event) => boolean;
282
- querySelector: (selector: string) => MockElement | null;
283
- querySelectorAll: (selector: string) => MockElement[];
284
- };
285
- window: {
286
- getComputedStyle: () => { position: string; getPropertyValue: (prop: string) => string };
287
- addEventListener: (type: string, listener: Function) => void;
288
- removeEventListener: (type: string, listener: Function) => void;
289
- dispatchEvent: (event: Event) => boolean;
290
- innerWidth: number;
291
- innerHeight: number;
292
- history: { pushState: (data: any, title: string, url?: string) => void };
293
- location: { pathname: string };
294
- navigator: { userAgent: string };
295
- performance: { now: () => number };
296
- localStorage: {
297
- getItem: (key: string) => string | null;
298
- setItem: (key: string, value: string) => void;
299
- removeItem: (key: string) => void;
300
- };
301
- };
302
- Element: typeof MockElement;
303
- Event: typeof CustomEvent;
304
- CustomEvent: typeof CustomEvent;
305
- AbortController: typeof AbortController;
306
- }
307
-
308
- // Set up global document object for tests
309
- (global as any).document = {
310
- createElement: (tag: string) => new MockElement(tag),
311
- createDocumentFragment: () => new MockDocumentFragment(),
312
- body: new MockElement('body'),
313
- __eventListeners: {},
314
- addEventListener: function(type: string, listener: Function) {
315
- if (!this.__eventListeners[type]) {
316
- this.__eventListeners[type] = [];
317
- }
318
- this.__eventListeners[type].push(listener);
319
- },
320
- removeEventListener: function(type: string, listener: Function) {
321
- if (this.__eventListeners[type]) {
322
- this.__eventListeners[type] = this.__eventListeners[type]
323
- .filter((l: Function) => l !== listener);
324
- }
325
- },
326
- dispatchEvent: function(event: Event) {
327
- if (this.__eventListeners[event.type]) {
328
- this.__eventListeners[event.type].forEach((listener: Function) => {
329
- listener(event);
330
- });
331
- }
332
- return !event.defaultPrevented;
333
- },
334
- querySelector: (selector: string) => null,
335
- querySelectorAll: (selector: string) => []
336
- };
337
-
338
- // Set up global window object
339
- (global as any).window = {
340
- getComputedStyle: () => ({
341
- position: 'static',
342
- getPropertyValue: () => ''
343
- }),
344
- addEventListener: () => {},
345
- removeEventListener: () => {},
346
- dispatchEvent: () => {},
347
- innerWidth: 1024,
348
- innerHeight: 768,
349
- history: {
350
- pushState: () => {}
351
- },
352
- location: {
353
- pathname: '/'
354
- },
355
- navigator: {
356
- userAgent: 'test'
357
- },
358
- performance: {
359
- now: () => Date.now()
360
- },
361
- localStorage: {
362
- getItem: () => null,
363
- setItem: () => {},
364
- removeItem: () => {}
365
- }
366
- };
367
-
368
- // Event constructor
369
- class CustomEvent {
370
- type: string;
371
- bubbles: boolean;
372
- cancelable: boolean;
373
- defaultPrevented: boolean;
374
- target: any;
375
- currentTarget: any;
376
- offsetX: number;
377
- offsetY: number;
378
- detail: any;
379
-
380
- constructor(type: string, options: any = {}) {
381
- this.type = type;
382
- this.bubbles = options.bubbles || false;
383
- this.cancelable = options.cancelable || false;
384
- this.defaultPrevented = false;
385
- this.target = null;
386
- this.currentTarget = null;
387
- this.offsetX = options.offsetX || 0;
388
- this.offsetY = options.offsetY || 0;
389
- this.detail = options.detail || {};
390
- }
391
-
392
- preventDefault(): void {
393
- if (this.cancelable) {
394
- this.defaultPrevented = true;
395
- }
396
- }
397
-
398
- stopPropagation(): void {}
399
-
400
- stopImmediatePropagation(): void {}
401
- }
402
-
403
- // Set up Event constructor
404
- (global as any).Event = CustomEvent;
405
-
406
- // Set up CustomEvent constructor
407
- (global as any).CustomEvent = class extends CustomEvent {
408
- constructor(type: string, options: any = {}) {
409
- super(type, options);
410
- this.detail = options.detail || {};
411
- }
412
- };
413
-
414
- // AbortController
415
- class AbortController {
416
- signal: { aborted: boolean };
417
-
418
- constructor() {
419
- this.signal = { aborted: false };
420
- }
421
-
422
- abort(): void {
423
- this.signal.aborted = true;
424
- }
425
- }
426
-
427
- // Set up AbortController
428
- (global as any).AbortController = AbortController;
429
-
430
- // Set up Element constructor
431
- (global as any).Element = MockElement;
432
-
433
- // Console mocking (preventing test output pollution)
434
- const originalConsole = { ...console };
435
- (global as any).console = {
436
- ...console,
437
- log: (...args: any[]) => {
438
- if (process.env.DEBUG) {
439
- originalConsole.log(...args);
440
- }
441
- },
442
- warn: (...args: any[]) => {
443
- if (process.env.DEBUG) {
444
- originalConsole.warn(...args);
445
- }
446
- },
447
- error: (...args: any[]) => {
448
- // Always log errors
449
- originalConsole.error(...args);
450
- }
451
- };
package/tsconfig.json DELETED
@@ -1,22 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2020",
4
- "module": "ESNext",
5
- "moduleResolution": "node",
6
- "declaration": true,
7
- "outDir": "./dist",
8
- "esModuleInterop": true,
9
- "forceConsistentCasingInFileNames": true,
10
- "strict": false,
11
- "skipLibCheck": true,
12
- "sourceMap": true,
13
- "resolveJsonModule": true,
14
- "jsx": "preserve",
15
- "noImplicitAny": false,
16
- "allowJs": true,
17
- "noErrorTruncation": true,
18
- "noEmitOnError": false
19
- },
20
- "include": ["src/**/*", "test/**/*"],
21
- "exclude": ["node_modules"]
22
- }
package/typedoc.json DELETED
@@ -1,28 +0,0 @@
1
- // typedoc.json
2
- {
3
- "entryPoints": ["./src/index.ts"],
4
- "out": "docs",
5
- "name": "MTRL Documentation",
6
- "exclude": ["**/node_modules/**", "**/*.test.ts", "**/*.spec.ts"],
7
- "excludePrivate": true,
8
- "excludeExternals": true,
9
- "theme": "default",
10
- "categoryOrder": ["Core", "Components", "Utilities", "*"],
11
- "categorizeByGroup": true,
12
- "readme": "README.md",
13
- "includeVersion": true,
14
- "hideGenerator": true,
15
- "searchInComments": true,
16
- "sort": ["static-first", "alphabetical"],
17
- "navigationLinks": {
18
- "GitHub": "https://github.com/floor/mtrl"
19
- },
20
- "skipErrorChecking": true,
21
- "skipLibCheck": true,
22
- "skipDiagnostics": true,
23
- "disableSources": false,
24
- "validation": {
25
- "invalidLink": false,
26
- "notDocumented": false
27
- }
28
- }
@@ -1,14 +0,0 @@
1
- // typedoc.simple.json
2
- {
3
- "entryPoints": ["./src/index.js"],
4
- "out": "docs",
5
- "name": "MTRL Documentation",
6
- "exclude": ["**/node_modules/**", "**/*.test.js", "**/*.spec.js"],
7
- "excludePrivate": true,
8
- "theme": "default",
9
- "readme": "README.md",
10
- "includeVersion": true,
11
- "entryPointStrategy": "expand",
12
- "treatWarningsAsErrors": false,
13
- "tsconfig": false
14
- }