pdap-design-system 2.7.0-beta.2 → 2.7.0-beta.4

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 (35) hide show
  1. package/README.md +39 -47
  2. package/dist/components/Breadcrumbs/PdapBreadcrumbs.vue.d.ts +9 -0
  3. package/dist/components/Breadcrumbs/index.d.ts +1 -2
  4. package/dist/components/Button/PdapButton.vue.d.ts +9 -0
  5. package/dist/components/Button/index.d.ts +1 -2
  6. package/dist/components/Dropdown/PdapDropdown.vue.d.ts +56 -0
  7. package/dist/components/Dropdown/index.d.ts +1 -0
  8. package/dist/components/Dropdown/types.d.ts +9 -0
  9. package/dist/components/ErrorBoundary/PdapErrorBoundary.vue.d.ts +82 -16
  10. package/dist/components/ErrorBoundary/index.d.ts +1 -0
  11. package/dist/components/ErrorBoundary/types.d.ts +11 -0
  12. package/dist/components/Footer/PdapFooter.vue.d.ts +8 -0
  13. package/dist/components/Form/PdapForm.vue.d.ts +105 -2
  14. package/dist/components/Header/PdapHeader.vue.d.ts +11 -0
  15. package/dist/components/Nav/PdapNav.vue.d.ts +37 -0
  16. package/dist/components/QuickSearchForm/QuickSearchForm.vue.d.ts +14 -0
  17. package/dist/components/TileIcon/TileIcon.vue.d.ts +3 -0
  18. package/dist/components/index.d.ts +2 -3
  19. package/dist/directives/click-outside.d.ts +16 -0
  20. package/dist/directives/index.d.ts +1 -0
  21. package/dist/index.cjs +2 -2
  22. package/dist/index.d.ts +3 -3
  23. package/dist/index.js +961 -879
  24. package/dist/styles.css +1 -1
  25. package/docs/components.md +13 -584
  26. package/package.json +3 -2
  27. package/dist/components/FlexContainer/FlexContainer.vue.d.ts +0 -37
  28. package/dist/components/FlexContainer/index.d.ts +0 -2
  29. package/dist/components/FlexContainer/types.d.ts +0 -4
  30. package/dist/components/GridContainer/GridContainer.vue.d.ts +0 -40
  31. package/dist/components/GridContainer/index.d.ts +0 -2
  32. package/dist/components/GridContainer/types.d.ts +0 -7
  33. package/dist/components/GridItem/GridItem.vue.d.ts +0 -40
  34. package/dist/components/GridItem/index.d.ts +0 -2
  35. package/dist/components/GridItem/types.d.ts +0 -5
@@ -1,584 +1,13 @@
1
- # PDAP Component Documentation
2
-
3
- Documentation for PDAP component usage
4
-
5
- ## Table of Contents
6
-
7
- - [Breadcrumbs](#breadcrumbs)
8
-
9
- - [Props](#props)
10
- - [Example](#example)
11
-
12
- - [Button](#button)
13
-
14
- - [Props](#props-1)
15
- - [Example](#example-1)
16
-
17
- - [FlexContainer](#flexcontainer)
18
-
19
- - [Props](#props-2)
20
- - [Example](#example-2)
21
-
22
- - [Footer](#footer)
23
-
24
- - [Props](#props-3)
25
- - [Example](#example-3)
26
-
27
- - [Form](#form)
28
-
29
- - [Props](#props-4)
30
- - [Example](#example-4)
31
-
32
- - [GridContainer](#gridcontainer)
33
-
34
- - [Props](#props-5)
35
- - [Example](#example-5)
36
-
37
- - [GridItem](#griditem)
38
-
39
- - [Props](#props-6)
40
- - [Example](#example-6)
41
-
42
- - [Header](#header)
43
-
44
- - [Props](#props-7)
45
- - [Example](#example-7)
46
-
47
- - [Input](#input)
48
-
49
- - [Nav](#nav)
50
-
51
- - [Example](#example-8)
52
-
53
- - [QuickSearchForm](#quicksearchform)
54
-
55
- - [Props](#props-8)
56
-
57
- - [TileIcon](#tileicon)
58
-
59
- - [Props](#props-9)
60
- - [Example](#example-9)
61
-
62
- ## Button
63
-
64
- ### _Props_
65
-
66
- None
67
-
68
- ### _Example_
69
-
70
- See the Demo application [page](../src/demo/pages/ComponentDemo.vue) and [router](../src/demo/router.js)
71
-
72
- ## Button
73
-
74
- ### _Props_
75
-
76
- name | required? | types | description | default
77
- ----------- | --------- | ----------- | ------------- | --------------------------
78
- `isLoading` | no | `boolean` | Request state | `false`
79
- `intent` | yes | `primary` \ | `secondary` | Determines style of button | `primary`
80
-
81
- ### _Example_
82
-
83
- ```
84
- <template>
85
- <Button class="custom-btn-class" intent="primary" @click="() => console.log('hello world')" type="button">Click me</Button>
86
- </template>
87
-
88
- ...
89
-
90
- <script>
91
- import { Button } from 'pdap-design-system';
92
-
93
- ...
94
-
95
- export default {
96
- components: ['Button'],
97
- ...
98
- }
99
- </script>
100
-
101
- ...
102
-
103
- <style>
104
- .custom-btn-class {
105
- padding: 12px;
106
- }
107
- </style>
108
- ```
109
-
110
- ## FlexContainer
111
-
112
- _DEPRECATED_ All container components are designed to be dynamic and take any `HTMLElement` tag as the component to be rendered. `FlexContainer` can itself be passed as the element type for `GridItem`, for example, or vice versa, allowing us to easily compose complex layouts (more on this later with the `GridContainer` and `GridItem` documentation).
113
-
114
- ### _Props_
115
-
116
- name | required? | types | description | default
117
- ----------- | --------- | --------- | ----------------------------------- | ----------------------
118
- `component` | no | `string` | HTML Element to render as container | `'div'`
119
- `alignment` | no | `start` \ | `center` | Flex alignment presets | `start`
120
-
121
- ### _Example_
122
-
123
- ```
124
- <template>
125
- <FlexContainer alignment="center" component="card">
126
- <h2>Some content goes here</h2>
127
- <p>More content goes here.</p>
128
- <Button class="custom-button-class-name" :isLoading="isLoading" @click="() => console.log('hello world')">
129
- Say hello with this button
130
- </Button>
131
- </FlexContainer>
132
- </template>
133
-
134
- ...
135
-
136
- <script>
137
- import { Button, FlexContainer } from 'pdap-design-system';
138
-
139
- ...
140
-
141
- export default {
142
- components: ['Button', 'FlexContainer'],
143
- props: ['requestPending', ...],
144
- data() {
145
- return {
146
- isLoading: this.requestPending
147
- }
148
- }
149
- ...
150
- }
151
- </script>
152
- ```
153
-
154
- ## Footer
155
-
156
- ### _Props_
157
-
158
- name | required? | types | description | default
159
- --------------------- | --------- | -------- | ---------------------- | -----------------------------------------------------------
160
- `logoImageSrc` | no | `string` | Source of logo image | `'node_modules/pdap-design-system/dist/images/acronym.svg'`
161
- `logoImageAnchorPath` | no | `string` | Flex alignment presets | `/`
162
-
163
- ### _Notes_
164
-
165
- The `Footer` component provides support for overriding the default social links. The `links` variable is `inject`ed by the component, using the following defaults:
166
-
167
- ```
168
- export default {
169
- ...
170
- inject: {
171
- footerLinks: {
172
- default: [
173
- {
174
- to: 'https://github.com/orgs/Police-Data-Accessibility-Project',
175
- text: 'Github',
176
- },
177
- {
178
- to: 'ttps://discord.gg/wMqex8nKZJ',
179
- text: 'Discord',
180
- },
181
- {
182
- to: 'https://www.linkedin.com/company/pdap',
183
- text: 'LinkedIn',
184
- },
185
- ]
186
- }
187
- },
188
- data() {
189
- return {
190
- links: this.footerLinks;
191
- }
192
- }
193
- }
194
- ```
195
-
196
- If we desire different links somewhere that `Footer` is rendered, simply `provide` an overriding array from a parent component, like so:
197
-
198
- ### _Example_
199
-
200
- ```
201
- <template>
202
- <Header />
203
- <router-view />
204
- <Footer />
205
- </template>
206
-
207
- ...
208
-
209
- <script>
210
- import { Header, Footer } from 'pdap-design-system';
211
- import { RouterView } from 'vue-router'
212
-
213
- ...
214
-
215
- export default {
216
- name: 'Layout',
217
- components: ['Header', 'Footer'],
218
- ...
219
- provide: {
220
- navLinks: [...]
221
- }
222
- }
223
- </script>
224
- ```
225
-
226
- ## Form
227
-
228
- The `Form` component is powerful. All you need to do is pass a few props, and the component will generate inputs and render them in the UI, complete with customizable form validation and both form-level and input-level error states.
229
-
230
- ### _Props_
231
-
232
- name | required? | types | description | default
233
- -------- | --------- | ---------------- | ---------------------------------- | -------
234
- `error` | no | `string` \ | `undefined` \ | `null` | Error state | `undefined`
235
- `id` | yes | `string` | Form id | none
236
- `name` | yes | `string` | Form name | none
237
- `schema` | yes | `PdapFormSchema` | Array of schema entries for inputs | none
238
-
239
- ### _Notes_
240
-
241
- - Form schema entries can look different depending on the type of input. We currently only use text inputs, so the example only displays these.
242
- - To properly submit the form, you must render a button with `type="submit"` _inside_ of the `Form` component.
243
- - `Form` emits a `submit` event and passes all values to the handler you pass to `on-submit`
244
- - Currently available form validations are defined by the `PdapFormValidators` interface:
245
-
246
- ```
247
- PdapFormValidators {
248
- maxLength: {
249
- message?: string;
250
- value: number;
251
- };
252
- minLength: {
253
- message?: string;
254
- value: number;
255
- };
256
- required: {
257
- message?: string;
258
- value: boolean;
259
- };
260
- }
261
- ```
262
-
263
- - The `message` property is optional. If it is not passed, Vuelidate will default to a generic error message. The `value` property is the value you want to validate against. (i.e. for a required field with a max length of 12 characters, we might pass:
264
-
265
- ```
266
- // For a custom message
267
- {
268
- ...,
269
- validators: {
270
- maxLength: {
271
- message: 'No more than twelve characters, please!',
272
- value: 12
273
- },
274
- required: {
275
- message: 'Pretty please enter this field.',
276
- value: true
277
- }
278
- }
279
- }
280
-
281
- // For the default Vuelidate message
282
- {
283
- ...,
284
- validators: {
285
- maxLength: {
286
- value: 12
287
- },
288
- required: {
289
- value: true
290
- }
291
- }
292
- }
293
- ```
294
-
295
- )
296
-
297
- ### _Example_
298
-
299
- ```
300
- <template>
301
- <Form :schema="formSchema" :on-submit="handleSubmit" id="test-form" name="data-request-form">
302
- <Button intent="primary" type="submit">Click me</Button>
303
- </Form>
304
- </template>
305
-
306
- ...
307
-
308
- <script>
309
- import { Button, Form, PdapInputTypes } from 'pdap-design-system';
310
-
311
- ...
312
-
313
- export default {
314
- components: ['Button', 'Form'],
315
- data() {
316
- return {
317
- formSchema: [
318
- {
319
- id: 'testfirstname',
320
- name: 'firstName',
321
- label: 'First Name',
322
- type: 'text',
323
- placeholder: 'John',
324
- value: '',
325
- validators: {
326
- minLength: {
327
- value: 3
328
- },
329
- required: {
330
- message: 'Please provide this information',
331
- value: true
332
- }
333
- },
334
- },
335
- {
336
- id: 'testlastname',
337
- name: 'lastName',
338
- label: 'Last Name',
339
- type: 'text',
340
- placeholder: 'Doe',
341
- value: '',
342
- validators: {
343
- minLength: {
344
- value: 3
345
- },
346
- maxLength: {
347
- message: 'A thousand characters for your surname? Are you a bot?',
348
- value: 999
349
- },
350
- },
351
- {
352
- id: 'ice-cream',
353
- name: 'iceCream',
354
- label: 'Do you like ice cream?',
355
- type: 'checkbox',
356
- defaultChecked: true,
357
- }
358
- ]
359
- }
360
- },
361
- methods: {
362
- handleSubmit: async function(data) {
363
- await doRequestStuff(data);
364
- this.$router.push('/')
365
- }
366
- }
367
- ...
368
- }
369
- </script>
370
- ```
371
-
372
- ## GridContainer
373
-
374
- _DEPRECATED_ All container components are designed to be dynamic and take any `HTMLElement` tag as the component to be rendered. It also works with the `GridItem` component (see example below). `GridContainer` and `GridItem` could both be passed as the element type for `FlexContainer`, for example, or vice versa, allowing us to easily compose complex layouts.
375
-
376
- ### _Props_
377
-
378
- name | required? | types | description | default
379
- ----------------- | --------- | ---------- | ----------------------------------- | ---------------------------------------------------
380
- `columns` | no | `1` \ | `2` \ | `3` \ | `'auto'` | Number of grid columns | `'auto'`
381
- `component` | no | `string` | HTML Element to render as container | `'div'`
382
- `rows` | no | `number` \ | `'auto'` | Number of grid rows | `'auto'`
383
- `templateColumns` | no | `string` \ | `undefined` | Custom `grid-template-columns` value, passed inline | `undefined` (no-op)
384
- `templateRows` | no | `string` \ | `undefined` | Custom `grid-template-rows` value, passed inline | `undefined` (no-op)
385
-
386
- ### _Notes_
387
-
388
- - Grid layouts max out at 3 columns, and responsiveness is baked in.
389
-
390
- - i.e. When you render a 3-column grid layout, it automatically resizes to 2 columns, then 1 column, as screen widths decrease.
391
- - In this case, it is a best practice to leave the `rows` prop as its default `'auto'` value, to ensure that the layout fills as many rows as are needed when the number of columns decreases
392
-
393
- ### _Example_
394
-
395
- ```
396
- <template>
397
- <GridContainer :columns="3" component="section">
398
- <GridItem component="FlexContainer">
399
- <h2>Some content goes here</h2>
400
- <p>More content goes here.</p>
401
- <Button class="custom-button-class-name" :isLoading="isLoading" @click="() => console.log('hello world')">
402
- Say hello with this button
403
- </Button>
404
- </GridItem>
405
- </GridContainer>
406
- </template>
407
-
408
- ...
409
-
410
- <script>
411
- import { Button, FlexContainer } from 'pdap-design-system';
412
-
413
- ...
414
-
415
- export default {
416
- components: ['Button', 'FlexContainer', 'GridContainer', 'GridItem'],
417
- props: ['requestPending', ...],
418
- data() {
419
- return {
420
- isLoading: this.requestPending
421
- }
422
- },
423
- ...
424
- }
425
- </script>
426
- ```
427
-
428
- ## GridItem
429
-
430
- _DEPRECATED_
431
-
432
- ### _Props_
433
-
434
- name | required? | types | description | default
435
- ------------ | --------- | -------- | ----------------------------------- | -------
436
- `component` | no | `string` | HTML Element to render as grid item | `'div'`
437
- `spanColumn` | no | `1` \ | `2` \ | `3` | Columns grid item should span | `1`
438
- `spanRow` | no | `number` | Rows grid item should span | `1`
439
-
440
- ### _Notes_
441
-
442
- - Grid layouts max out at 3 columns, and responsiveness is baked in.
443
-
444
- - i.e. When you render a 3-column grid layout, it automatically resizes to 2 columns, then 1 column, as screen widths decrease.
445
- - In this case, it is a best practice to leave the `rows` prop as its default `'auto'` value, to ensure that the layout fills as many rows as are needed when the number of columns decreases
446
-
447
- ### _Example_
448
-
449
- See `GridContainer` above.
450
-
451
- ## Header
452
-
453
- ### _Props_
454
-
455
- name | required? | types | description | default
456
- --------------------- | --------- | -------- | ---------------------- | ----------------------------------------------------------
457
- `logoImageSrc` | no | `string` | Source of logo image | `'node_modules/pdap-design-system/dist/images/lockup.svg'`
458
- `logoImageAnchorPath` | no | `string` | Flex alignment presets | `/`
459
-
460
- ### _Notes_
461
-
462
- The `Header` component does not require any props to be passed. But keep in mind that it is responsible for rendering the `Nav` component. Consuming applications will need to `provide` an array of nav links -- **there are no defaults for this**, you must `provide` these links either 1\. in a layout component (see example below), at the route level, or at the app level. This allows for flexibility in which links are rendered on which routes
463
-
464
- ### _Example_
465
-
466
- ```
467
- <template>
468
- <Header />
469
- <router-view />
470
- <Footer />
471
- </template>
472
-
473
- ...
474
-
475
- <script>
476
- import { Header, Footer } from 'pdap-design-system';
477
- import { RouterView } from 'vue-router'
478
-
479
- ...
480
-
481
- export default {
482
- name: 'Layout',
483
- components: ['Header', 'Footer'],
484
- ...
485
- provide: {
486
- navLinks: [...]
487
- }
488
- }
489
- </script>
490
- ```
491
-
492
- ## Input
493
-
494
- Inputs are rendered by the `Form` component via a schema. Please see `Form` for more details
495
-
496
- ## Nav
497
-
498
- You do not need to render `Nav` directly. `Header` takes care of that. But you do need to `provide` nav link data from a parent component. This allows for nav links to be dynamic depending on where `Header` is rendered.
499
-
500
- ### _Example_
501
-
502
- ```
503
- <template>
504
- <Header />
505
- <router-view />
506
- <Footer />
507
- </template>
508
-
509
- ...
510
-
511
- <script>
512
- import { Footer, Header } from 'pdap-design-system';
513
- import { RouterView } from 'vue-router';
514
-
515
- ...
516
-
517
- export default {
518
- name: 'Layout',
519
- components: ['Footer', 'Header'],
520
- provide: {
521
- navLinks: [
522
- { path: '/', text: 'Home', method: 'path' },
523
- { path: '/a', text: 'a', method: 'path' },
524
- { path: '/b', text: 'b', method: 'path' },
525
- { path: '/c', text: 'c', method: 'path' },
526
- { href: 'https://www.google.com', text: 'Go to Google', method: 'href' },
527
- ]
528
- }
529
- ...
530
- ```
531
-
532
- ## QuickSearchForm
533
-
534
- ### _Props_
535
-
536
- name | required? | types | description | default
537
- ------ | --------- | -------- | ----------- | --------------------------------------------------------------------------
538
- `mode` | no | `'dev' \ | 'prod'` | env. controls which url users are sent to when form is rendered on pdap.io | `'prod'`
539
-
540
- ### _Notes_
541
-
542
- The different `mode` prop values result the following base url values in the eventual navigation | value | base url | |--|--| | `'dev'` | `'https://data-sources.pdap.dev'` | | `'prod'` | `'https://data-sources.pdap.io'` |
543
-
544
- ## TileIcon
545
-
546
- ### _Props_
547
-
548
- name | required? | types | description | default
549
- ------------ | --------- | -------- | ----------------------------- | -------
550
- `imgAltText` | yes | `string` | Descriptive alt text for icon | none
551
- `imgSrc` | yes | `string` | Source of icon to render | none
552
-
553
- ### _Example_
554
-
555
- ```
556
- <template>
557
- <GridContainer :columns="3" component="section">
558
- <GridItem>
559
- <TileIcon :imgAltText="altText" :imgSrc="imagePath" >
560
- </GridItem>
561
- </GridContainer>
562
- </template>
563
-
564
- ...
565
-
566
- <script>
567
- import { Header, Footer } from 'pdap-design-system';
568
- import { RouterView } from 'vue-router'
569
-
570
- ...
571
-
572
- export default {
573
- name: 'Layout',
574
- components: ['GridContainer', 'GridItem', 'TileIcon'],
575
- props: ['alt', 'src'],
576
- data() {
577
- return {
578
- altText: this.alt,
579
- imgSrc: this.src
580
- }
581
- }
582
- }
583
- </script>
584
- ```
1
+ # Component Documentation
2
+ <!-- This file is auto-generated from README.md files contained in the components directory, no need to edit this file directly. -->
3
+
4
+ - [Breadcrumbs](../src/components/Breadcrumbs//README.md)
5
+ - [Button](../src/components/Button//README.md)
6
+ - [Dropdown](../src/components/Dropdown//README.md)
7
+ - [ErrorBoundary](../src/components/ErrorBoundary//README.md)
8
+ - [Footer](../src/components/Footer//README.md)
9
+ - [Form](../src/components/Form//README.md)
10
+ - [Header](../src/components/Header//README.md)
11
+ - [Input](../src/components/Input//README.md)
12
+ - [Nav](../src/components/Nav//README.md)
13
+ - [QuickSearchForm](../src/components/QuickSearchForm//README.md)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pdap-design-system",
3
- "version": "2.7.0-beta.2",
3
+ "version": "2.7.0-beta.4",
4
4
  "description": "Global styles for PDAP apps",
5
5
  "author": "Police Data Accessibility Project, Inc.",
6
6
  "license": "ISC",
@@ -113,7 +113,8 @@
113
113
  "test:badge": "vitest run --coverage.enabled --coverage.reporter='text-summary'",
114
114
  "test:ci": "npm run test -- --silent",
115
115
  "typecheck": "vue-tsc",
116
- "dev": "vite"
116
+ "dev": "vite",
117
+ "docs": "bash ./scripts/update-docs.sh"
117
118
  },
118
119
  "workspaces": [
119
120
  "eslint-config"
@@ -1,37 +0,0 @@
1
- import { PdapFlexContainerProps } from './types';
2
- /** @deprecated Please use TailwindCSS class instead */
3
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PdapFlexContainerProps>, {
4
- alignment: string;
5
- component: string;
6
- }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PdapFlexContainerProps>, {
7
- alignment: string;
8
- component: string;
9
- }>>>, {
10
- component: string;
11
- alignment: "center" | "start";
12
- }, {}>, {
13
- default?(_: {}): any;
14
- }>;
15
- export default _default;
16
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
17
- type __VLS_TypePropsToRuntimeProps<T> = {
18
- [K in keyof T]-?: {} extends Pick<T, K> ? {
19
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
20
- } : {
21
- type: import('vue').PropType<T[K]>;
22
- required: true;
23
- };
24
- };
25
- type __VLS_WithDefaults<P, D> = {
26
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
27
- default: D[K];
28
- }> : P[K];
29
- };
30
- type __VLS_Prettify<T> = {
31
- [K in keyof T]: T[K];
32
- } & {};
33
- type __VLS_WithTemplateSlots<T, S> = T & {
34
- new (): {
35
- $slots: S;
36
- };
37
- };
@@ -1,2 +0,0 @@
1
- import FlexContainer from './FlexContainer.vue';
2
- export { FlexContainer };
@@ -1,4 +0,0 @@
1
- export interface PdapFlexContainerProps {
2
- alignment?: 'center' | 'start';
3
- component?: string;
4
- }
@@ -1,40 +0,0 @@
1
- import { PdapGridContainerProps } from './types';
2
- /** @deprecated use TailwindCSS class instead */
3
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PdapGridContainerProps>, {
4
- columns: string;
5
- component: string;
6
- rows: string;
7
- }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PdapGridContainerProps>, {
8
- columns: string;
9
- component: string;
10
- rows: string;
11
- }>>>, {
12
- component: string;
13
- columns: 1 | 2 | 3 | "auto";
14
- rows: number | "auto";
15
- }, {}>, {
16
- default?(_: {}): any;
17
- }>;
18
- export default _default;
19
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
20
- type __VLS_TypePropsToRuntimeProps<T> = {
21
- [K in keyof T]-?: {} extends Pick<T, K> ? {
22
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
23
- } : {
24
- type: import('vue').PropType<T[K]>;
25
- required: true;
26
- };
27
- };
28
- type __VLS_WithDefaults<P, D> = {
29
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
30
- default: D[K];
31
- }> : P[K];
32
- };
33
- type __VLS_Prettify<T> = {
34
- [K in keyof T]: T[K];
35
- } & {};
36
- type __VLS_WithTemplateSlots<T, S> = T & {
37
- new (): {
38
- $slots: S;
39
- };
40
- };
@@ -1,2 +0,0 @@
1
- import GridContainer from './GridContainer.vue';
2
- export { GridContainer };