@pyreon/meta 0.2.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.
- package/LICENSE +21 -0
- package/README.md +50 -0
- package/lib/index.d.ts +28 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +32 -0
- package/lib/index.js.map +1 -0
- package/lib/tests/exports.test.d.ts +2 -0
- package/lib/tests/exports.test.d.ts.map +1 -0
- package/lib/tests/exports.test.js +96 -0
- package/lib/tests/exports.test.js.map +1 -0
- package/lib/types/index.d.ts +20 -0
- package/package.json +61 -0
- package/src/index.ts +161 -0
- package/src/tests/exports.test.ts +99 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025-present Vit Bokisch
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# @pyreon/meta
|
|
2
|
+
|
|
3
|
+
Barrel package re-exporting the full Pyreon ecosystem — fundamentals and UI system.
|
|
4
|
+
|
|
5
|
+
Import everything from one place instead of installing each package individually.
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
bun add @pyreon/meta
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## What's Included
|
|
14
|
+
|
|
15
|
+
### Fundamentals
|
|
16
|
+
|
|
17
|
+
| Package | Key Exports |
|
|
18
|
+
| --- | --- |
|
|
19
|
+
| `@pyreon/store` | `defineStore`, `signal`, `computed`, `effect`, `batch` |
|
|
20
|
+
| `@pyreon/form` | `useForm`, `useField`, `useFieldArray`, `FormProvider` |
|
|
21
|
+
| `@pyreon/validation` | `zodSchema`, `zodField` |
|
|
22
|
+
| `@pyreon/query` | `useQuery`, `useMutation`, `QueryClient`, `QueryClientProvider` |
|
|
23
|
+
| `@pyreon/table` | `useTable`, `flexRender` |
|
|
24
|
+
| `@pyreon/virtual` | `useVirtualizer`, `useWindowVirtualizer` |
|
|
25
|
+
| `@pyreon/i18n` | `createI18n`, `I18nProvider`, `useI18n`, `Trans` |
|
|
26
|
+
| `@pyreon/feature` | `defineFeature`, `reference` |
|
|
27
|
+
|
|
28
|
+
### UI System
|
|
29
|
+
|
|
30
|
+
| Package | Key Exports |
|
|
31
|
+
| --- | --- |
|
|
32
|
+
| `@pyreon/styler` | `css`, `styled`, `createGlobalStyle`, `keyframes` |
|
|
33
|
+
| `@pyreon/hooks` | 25+ signal-based hooks (`useHover`, `useFocus`, `useBreakpoint`, etc.) |
|
|
34
|
+
| `@pyreon/elements` | `Element`, `Text`, `List`, `Overlay`, `Portal`, `Iterator` |
|
|
35
|
+
| `@pyreon/unistyle` | `makeItResponsive`, `normalizeTheme`, `sortBreakpoints` |
|
|
36
|
+
| `@pyreon/coolgrid` | `Col`, `Container`, `Row` |
|
|
37
|
+
| `@pyreon/kinetic` | `kinetic`, `useAnimationEnd`, `useTransitionState` |
|
|
38
|
+
| `@pyreon/kinetic-presets` | `createFade`, `createSlide`, `createScale`, `createRotate`, `createBlur` |
|
|
39
|
+
| `@pyreon/attrs` | `attrs` |
|
|
40
|
+
| `@pyreon/rocketstyle` | `rocketstyle` |
|
|
41
|
+
|
|
42
|
+
## Usage
|
|
43
|
+
|
|
44
|
+
```ts
|
|
45
|
+
import { defineStore, signal, useQuery, useForm, styled, useHover } from "@pyreon/meta"
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## License
|
|
49
|
+
|
|
50
|
+
[MIT](LICENSE)
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export type { StoreApi, StorePlugin } from '@pyreon/store';
|
|
2
|
+
export { addStorePlugin, batch, computed, defineStore, effect, resetAllStores, resetStore, signal, } from '@pyreon/store';
|
|
3
|
+
export type { FieldRegisterProps, FieldState, FormState, UseFieldArrayResult, UseFieldResult, UseFormOptions, } from '@pyreon/form';
|
|
4
|
+
export { FormProvider, useField, useFieldArray, useForm, useFormContext, useFormState, useWatch, } from '@pyreon/form';
|
|
5
|
+
export type { SchemaAdapter, ValidationIssue } from '@pyreon/validation';
|
|
6
|
+
export { zodField, zodSchema } from '@pyreon/validation';
|
|
7
|
+
export type { UseMutationResult, UseQueryResult } from '@pyreon/query';
|
|
8
|
+
export { QueryClient, QueryClientProvider, useInfiniteQuery, useIsFetching, useIsMutating, useMutation, useQuery, useQueryClient, } from '@pyreon/query';
|
|
9
|
+
export type { UseTableOptions } from '@pyreon/table';
|
|
10
|
+
export { flexRender, useTable } from '@pyreon/table';
|
|
11
|
+
export type { UseVirtualizerOptions, UseVirtualizerResult, } from '@pyreon/virtual';
|
|
12
|
+
export { useVirtualizer, useWindowVirtualizer } from '@pyreon/virtual';
|
|
13
|
+
export type { I18nInstance, I18nOptions } from '@pyreon/i18n';
|
|
14
|
+
export { createI18n, I18nProvider, Trans, useI18n } from '@pyreon/i18n';
|
|
15
|
+
export type { Feature, FeatureConfig } from '@pyreon/feature';
|
|
16
|
+
export { defineFeature, reference } from '@pyreon/feature';
|
|
17
|
+
export { createMachine } from '@pyreon/machine';
|
|
18
|
+
export { createPermissions, PermissionsProvider, usePermissions, } from '@pyreon/permissions';
|
|
19
|
+
export { createGlobalStyle, css, keyframes, styled } from '@pyreon/styler';
|
|
20
|
+
export { useBreakpoint, useClickOutside, useColorScheme, useDebouncedCallback, useDebouncedValue, useElementSize, useFocus, useFocusTrap, useHover, useIntersection, useInterval, useKeyboard, useMediaQuery, useMergedRef, useReducedMotion, useScrollLock, useThrottledCallback, useTimeout, useToggle, useWindowResize, } from '@pyreon/hooks';
|
|
21
|
+
export { Element, Iterator, List, Overlay, Portal, Text, } from '@pyreon/elements';
|
|
22
|
+
export { makeItResponsive, normalizeTheme, sortBreakpoints, } from '@pyreon/unistyle';
|
|
23
|
+
export { Col, Container, Row } from '@pyreon/coolgrid';
|
|
24
|
+
export { kinetic, useAnimationEnd, useTransitionState } from '@pyreon/kinetic';
|
|
25
|
+
export { createBlur, createFade, createRotate, createScale, createSlide, } from '@pyreon/kinetic-presets';
|
|
26
|
+
export { attrs } from '@pyreon/attrs';
|
|
27
|
+
export { rocketstyle } from '@pyreon/rocketstyle';
|
|
28
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,EACL,cAAc,EACd,KAAK,EACL,QAAQ,EACR,WAAW,EACX,MAAM,EACN,cAAc,EACd,UAAU,EACV,MAAM,GACP,MAAM,eAAe,CAAA;AAItB,YAAY,EACV,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,mBAAmB,EACnB,cAAc,EACd,cAAc,GACf,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,OAAO,EACP,cAAc,EACd,YAAY,EACZ,QAAQ,GACT,MAAM,cAAc,CAAA;AAIrB,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACxE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAIxD,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACtE,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,WAAW,EACX,QAAQ,EACR,cAAc,GACf,MAAM,eAAe,CAAA;AAItB,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAIpD,YAAY,EACV,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAItE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAIvE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAI1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAI/C,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,GACf,MAAM,qBAAqB,CAAA;AAI5B,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAI1E,OAAO,EACL,aAAa,EACb,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,WAAW,EACX,WAAW,EACX,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,SAAS,EACT,eAAe,GAChB,MAAM,eAAe,CAAA;AAItB,OAAO,EACL,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,MAAM,EACN,IAAI,GACL,MAAM,kBAAkB,CAAA;AAIzB,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,eAAe,GAChB,MAAM,kBAAkB,CAAA;AAIzB,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAItD,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAI9E,OAAO,EACL,UAAU,EACV,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,GACZ,MAAM,yBAAyB,CAAA;AAIhC,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAIrC,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA"}
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// ─── Store ───────────────────────────────────────────────────────────────────
|
|
2
|
+
export { addStorePlugin, batch, computed, defineStore, effect, resetAllStores, resetStore, signal, } from '@pyreon/store';
|
|
3
|
+
export { FormProvider, useField, useFieldArray, useForm, useFormContext, useFormState, useWatch, } from '@pyreon/form';
|
|
4
|
+
export { zodField, zodSchema } from '@pyreon/validation';
|
|
5
|
+
export { QueryClient, QueryClientProvider, useInfiniteQuery, useIsFetching, useIsMutating, useMutation, useQuery, useQueryClient, } from '@pyreon/query';
|
|
6
|
+
export { flexRender, useTable } from '@pyreon/table';
|
|
7
|
+
export { useVirtualizer, useWindowVirtualizer } from '@pyreon/virtual';
|
|
8
|
+
export { createI18n, I18nProvider, Trans, useI18n } from '@pyreon/i18n';
|
|
9
|
+
export { defineFeature, reference } from '@pyreon/feature';
|
|
10
|
+
// ─── Machine ─────────────────────────────────────────────────────────────────
|
|
11
|
+
export { createMachine } from '@pyreon/machine';
|
|
12
|
+
// ─── Permissions ─────────────────────────────────────────────────────────────
|
|
13
|
+
export { createPermissions, PermissionsProvider, usePermissions, } from '@pyreon/permissions';
|
|
14
|
+
// ─── Styler ──────────────────────────────────────────────────────────────────
|
|
15
|
+
export { createGlobalStyle, css, keyframes, styled } from '@pyreon/styler';
|
|
16
|
+
// ─── Hooks ───────────────────────────────────────────────────────────────────
|
|
17
|
+
export { useBreakpoint, useClickOutside, useColorScheme, useDebouncedCallback, useDebouncedValue, useElementSize, useFocus, useFocusTrap, useHover, useIntersection, useInterval, useKeyboard, useMediaQuery, useMergedRef, useReducedMotion, useScrollLock, useThrottledCallback, useTimeout, useToggle, useWindowResize, } from '@pyreon/hooks';
|
|
18
|
+
// ─── Elements ────────────────────────────────────────────────────────────────
|
|
19
|
+
export { Element, Iterator, List, Overlay, Portal, Text, } from '@pyreon/elements';
|
|
20
|
+
// ─── Unistyle ────────────────────────────────────────────────────────────────
|
|
21
|
+
export { makeItResponsive, normalizeTheme, sortBreakpoints, } from '@pyreon/unistyle';
|
|
22
|
+
// ─── Coolgrid ────────────────────────────────────────────────────────────────
|
|
23
|
+
export { Col, Container, Row } from '@pyreon/coolgrid';
|
|
24
|
+
// ─── Kinetic ─────────────────────────────────────────────────────────────────
|
|
25
|
+
export { kinetic, useAnimationEnd, useTransitionState } from '@pyreon/kinetic';
|
|
26
|
+
// ─── Kinetic Presets ─────────────────────────────────────────────────────────
|
|
27
|
+
export { createBlur, createFade, createRotate, createScale, createSlide, } from '@pyreon/kinetic-presets';
|
|
28
|
+
// ─── Attrs ───────────────────────────────────────────────────────────────────
|
|
29
|
+
export { attrs } from '@pyreon/attrs';
|
|
30
|
+
// ─── Rocketstyle ─────────────────────────────────────────────────────────────
|
|
31
|
+
export { rocketstyle } from '@pyreon/rocketstyle';
|
|
32
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAGhF,OAAO,EACL,cAAc,EACd,KAAK,EACL,QAAQ,EACR,WAAW,EACX,MAAM,EACN,cAAc,EACd,UAAU,EACV,MAAM,GACP,MAAM,eAAe,CAAA;AAYtB,OAAO,EACL,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,OAAO,EACP,cAAc,EACd,YAAY,EACZ,QAAQ,GACT,MAAM,cAAc,CAAA;AAKrB,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAKxD,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,WAAW,EACX,QAAQ,EACR,cAAc,GACf,MAAM,eAAe,CAAA;AAKtB,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAQpD,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAKtE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAKvE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE1D,gFAAgF;AAEhF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAE/C,gFAAgF;AAEhF,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,GACf,MAAM,qBAAqB,CAAA;AAE5B,gFAAgF;AAEhF,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAE1E,gFAAgF;AAEhF,OAAO,EACL,aAAa,EACb,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,WAAW,EACX,WAAW,EACX,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,UAAU,EACV,SAAS,EACT,eAAe,GAChB,MAAM,eAAe,CAAA;AAEtB,gFAAgF;AAEhF,OAAO,EACL,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,MAAM,EACN,IAAI,GACL,MAAM,kBAAkB,CAAA;AAEzB,gFAAgF;AAEhF,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,eAAe,GAChB,MAAM,kBAAkB,CAAA;AAEzB,gFAAgF;AAEhF,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAEtD,gFAAgF;AAEhF,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAE9E,gFAAgF;AAEhF,OAAO,EACL,UAAU,EACV,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,GACZ,MAAM,yBAAyB,CAAA;AAEhC,gFAAgF;AAEhF,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAErC,gFAAgF;AAEhF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exports.test.d.ts","sourceRoot":"","sources":["../../src/tests/exports.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import * as meta from '../index';
|
|
3
|
+
describe('@pyreon/meta exports', () => {
|
|
4
|
+
// ─── Fundamentals ───────────────────────────────────────────────────────
|
|
5
|
+
const fundamentals = [
|
|
6
|
+
'defineStore',
|
|
7
|
+
'signal',
|
|
8
|
+
'computed',
|
|
9
|
+
'effect',
|
|
10
|
+
'batch',
|
|
11
|
+
'resetStore',
|
|
12
|
+
'resetAllStores',
|
|
13
|
+
'addStorePlugin',
|
|
14
|
+
'useForm',
|
|
15
|
+
'useField',
|
|
16
|
+
'useFieldArray',
|
|
17
|
+
'FormProvider',
|
|
18
|
+
'useFormContext',
|
|
19
|
+
'useFormState',
|
|
20
|
+
'useWatch',
|
|
21
|
+
'zodSchema',
|
|
22
|
+
'zodField',
|
|
23
|
+
'QueryClient',
|
|
24
|
+
'QueryClientProvider',
|
|
25
|
+
'useQuery',
|
|
26
|
+
'useMutation',
|
|
27
|
+
'useQueryClient',
|
|
28
|
+
'useInfiniteQuery',
|
|
29
|
+
'useIsFetching',
|
|
30
|
+
'useIsMutating',
|
|
31
|
+
'useTable',
|
|
32
|
+
'flexRender',
|
|
33
|
+
'useVirtualizer',
|
|
34
|
+
'useWindowVirtualizer',
|
|
35
|
+
'createI18n',
|
|
36
|
+
'I18nProvider',
|
|
37
|
+
'useI18n',
|
|
38
|
+
'Trans',
|
|
39
|
+
'defineFeature',
|
|
40
|
+
'reference',
|
|
41
|
+
'createMachine',
|
|
42
|
+
'createPermissions',
|
|
43
|
+
'PermissionsProvider',
|
|
44
|
+
'usePermissions',
|
|
45
|
+
];
|
|
46
|
+
for (const name of fundamentals) {
|
|
47
|
+
it(`exports ${name}`, () => {
|
|
48
|
+
expect(name in meta).toBe(true);
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
// ─── UI System ──────────────────────────────────────────────────────────
|
|
52
|
+
const uiSystem = [
|
|
53
|
+
'css',
|
|
54
|
+
'styled',
|
|
55
|
+
'createGlobalStyle',
|
|
56
|
+
'keyframes',
|
|
57
|
+
'useBreakpoint',
|
|
58
|
+
'useClickOutside',
|
|
59
|
+
'useColorScheme',
|
|
60
|
+
'useHover',
|
|
61
|
+
'useFocus',
|
|
62
|
+
'useMediaQuery',
|
|
63
|
+
'useToggle',
|
|
64
|
+
'useElementSize',
|
|
65
|
+
'useIntersection',
|
|
66
|
+
'useInterval',
|
|
67
|
+
'Element',
|
|
68
|
+
'Text',
|
|
69
|
+
'List',
|
|
70
|
+
'Overlay',
|
|
71
|
+
'Portal',
|
|
72
|
+
'Iterator',
|
|
73
|
+
'makeItResponsive',
|
|
74
|
+
'normalizeTheme',
|
|
75
|
+
'sortBreakpoints',
|
|
76
|
+
'Col',
|
|
77
|
+
'Container',
|
|
78
|
+
'Row',
|
|
79
|
+
'kinetic',
|
|
80
|
+
'useAnimationEnd',
|
|
81
|
+
'useTransitionState',
|
|
82
|
+
'createBlur',
|
|
83
|
+
'createFade',
|
|
84
|
+
'createRotate',
|
|
85
|
+
'createScale',
|
|
86
|
+
'createSlide',
|
|
87
|
+
'attrs',
|
|
88
|
+
'rocketstyle',
|
|
89
|
+
];
|
|
90
|
+
for (const name of uiSystem) {
|
|
91
|
+
it(`exports ${name}`, () => {
|
|
92
|
+
expect(name in meta).toBe(true);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
//# sourceMappingURL=exports.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exports.test.js","sourceRoot":"","sources":["../../src/tests/exports.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,KAAK,IAAI,MAAM,UAAU,CAAA;AAEhC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,2EAA2E;IAC3E,MAAM,YAAY,GAAG;QACnB,aAAa;QACb,QAAQ;QACR,UAAU;QACV,QAAQ;QACR,OAAO;QACP,YAAY;QACZ,gBAAgB;QAChB,gBAAgB;QAChB,SAAS;QACT,UAAU;QACV,eAAe;QACf,cAAc;QACd,gBAAgB;QAChB,cAAc;QACd,UAAU;QACV,WAAW;QACX,UAAU;QACV,aAAa;QACb,qBAAqB;QACrB,UAAU;QACV,aAAa;QACb,gBAAgB;QAChB,kBAAkB;QAClB,eAAe;QACf,eAAe;QACf,UAAU;QACV,YAAY;QACZ,gBAAgB;QAChB,sBAAsB;QACtB,YAAY;QACZ,cAAc;QACd,SAAS;QACT,OAAO;QACP,eAAe;QACf,WAAW;QACX,eAAe;QACf,mBAAmB;QACnB,qBAAqB;QACrB,gBAAgB;KACjB,CAAA;IAED,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,EAAE,CAAC,WAAW,IAAI,EAAE,EAAE,GAAG,EAAE;YACzB,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,2EAA2E;IAC3E,MAAM,QAAQ,GAAG;QACf,KAAK;QACL,QAAQ;QACR,mBAAmB;QACnB,WAAW;QACX,eAAe;QACf,iBAAiB;QACjB,gBAAgB;QAChB,UAAU;QACV,UAAU;QACV,eAAe;QACf,WAAW;QACX,gBAAgB;QAChB,iBAAiB;QACjB,aAAa;QACb,SAAS;QACT,MAAM;QACN,MAAM;QACN,SAAS;QACT,QAAQ;QACR,UAAU;QACV,kBAAkB;QAClB,gBAAgB;QAChB,iBAAiB;QACjB,KAAK;QACL,WAAW;QACX,KAAK;QACL,SAAS;QACT,iBAAiB;QACjB,oBAAoB;QACpB,YAAY;QACZ,YAAY;QACZ,cAAc;QACd,aAAa;QACb,aAAa;QACb,OAAO;QACP,aAAa;KACd,CAAA;IAED,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,EAAE,CAAC,WAAW,IAAI,EAAE,EAAE,GAAG,EAAE;YACzB,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { StoreApi, StorePlugin, addStorePlugin, batch, computed, defineStore, effect, resetAllStores, resetStore, signal } from "@pyreon/store";
|
|
2
|
+
import { FieldRegisterProps, FieldState, FormProvider, FormState, UseFieldArrayResult, UseFieldResult, UseFormOptions, useField, useFieldArray, useForm, useFormContext, useFormState, useWatch } from "@pyreon/form";
|
|
3
|
+
import { SchemaAdapter, ValidationIssue, zodField, zodSchema } from "@pyreon/validation";
|
|
4
|
+
import { QueryClient, QueryClientProvider, UseMutationResult, UseQueryResult, useInfiniteQuery, useIsFetching, useIsMutating, useMutation, useQuery, useQueryClient } from "@pyreon/query";
|
|
5
|
+
import { UseTableOptions, flexRender, useTable } from "@pyreon/table";
|
|
6
|
+
import { UseVirtualizerOptions, UseVirtualizerResult, useVirtualizer, useWindowVirtualizer } from "@pyreon/virtual";
|
|
7
|
+
import { I18nInstance, I18nOptions, I18nProvider, Trans, createI18n, useI18n } from "@pyreon/i18n";
|
|
8
|
+
import { Feature, FeatureConfig, defineFeature, reference } from "@pyreon/feature";
|
|
9
|
+
import { createMachine } from "@pyreon/machine";
|
|
10
|
+
import { PermissionsProvider, createPermissions, usePermissions } from "@pyreon/permissions";
|
|
11
|
+
import { createGlobalStyle, css, keyframes, styled } from "@pyreon/styler";
|
|
12
|
+
import { useBreakpoint, useClickOutside, useColorScheme, useDebouncedCallback, useDebouncedValue, useElementSize, useFocus, useFocusTrap, useHover, useIntersection, useInterval, useKeyboard, useMediaQuery, useMergedRef, useReducedMotion, useScrollLock, useThrottledCallback, useTimeout, useToggle, useWindowResize } from "@pyreon/hooks";
|
|
13
|
+
import { Element, Iterator, List, Overlay, Portal, Text } from "@pyreon/elements";
|
|
14
|
+
import { makeItResponsive, normalizeTheme, sortBreakpoints } from "@pyreon/unistyle";
|
|
15
|
+
import { Col, Container, Row } from "@pyreon/coolgrid";
|
|
16
|
+
import { kinetic, useAnimationEnd, useTransitionState } from "@pyreon/kinetic";
|
|
17
|
+
import { createBlur, createFade, createRotate, createScale, createSlide } from "@pyreon/kinetic-presets";
|
|
18
|
+
import { attrs } from "@pyreon/attrs";
|
|
19
|
+
import { rocketstyle } from "@pyreon/rocketstyle";
|
|
20
|
+
export { Col, Container, Element, type Feature, type FeatureConfig, type FieldRegisterProps, type FieldState, FormProvider, type FormState, type I18nInstance, type I18nOptions, I18nProvider, Iterator, List, Overlay, PermissionsProvider, Portal, QueryClient, QueryClientProvider, Row, type SchemaAdapter, type StoreApi, type StorePlugin, Text, Trans, type UseFieldArrayResult, type UseFieldResult, type UseFormOptions, type UseMutationResult, type UseQueryResult, type UseTableOptions, type UseVirtualizerOptions, type UseVirtualizerResult, type ValidationIssue, addStorePlugin, attrs, batch, computed, createBlur, createFade, createGlobalStyle, createI18n, createMachine, createPermissions, createRotate, createScale, createSlide, css, defineFeature, defineStore, effect, flexRender, keyframes, kinetic, makeItResponsive, normalizeTheme, reference, resetAllStores, resetStore, rocketstyle, signal, sortBreakpoints, styled, useAnimationEnd, useBreakpoint, useClickOutside, useColorScheme, useDebouncedCallback, useDebouncedValue, useElementSize, useField, useFieldArray, useFocus, useFocusTrap, useForm, useFormContext, useFormState, useHover, useI18n, useInfiniteQuery, useIntersection, useInterval, useIsFetching, useIsMutating, useKeyboard, useMediaQuery, useMergedRef, useMutation, usePermissions, useQuery, useQueryClient, useReducedMotion, useScrollLock, useTable, useThrottledCallback, useTimeout, useToggle, useTransitionState, useVirtualizer, useWatch, useWindowResize, useWindowVirtualizer, zodField, zodSchema };
|
package/package.json
ADDED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@pyreon/meta",
|
|
3
|
+
"version": "0.2.0",
|
|
4
|
+
"description": "Pyreon Meta — barrel package re-exporting the full Pyreon fundamentals ecosystem",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"author": "Vit Bokisch",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "https://github.com/pyreon/zero",
|
|
10
|
+
"directory": "packages/meta"
|
|
11
|
+
},
|
|
12
|
+
"type": "module",
|
|
13
|
+
"files": [
|
|
14
|
+
"lib",
|
|
15
|
+
"!lib/analysis",
|
|
16
|
+
"src",
|
|
17
|
+
"LICENSE",
|
|
18
|
+
"README.md"
|
|
19
|
+
],
|
|
20
|
+
"main": "./lib/index.js",
|
|
21
|
+
"module": "./lib/index.js",
|
|
22
|
+
"types": "./lib/types/index.d.ts",
|
|
23
|
+
"exports": {
|
|
24
|
+
".": {
|
|
25
|
+
"bun": "./src/index.ts",
|
|
26
|
+
"import": "./lib/index.js",
|
|
27
|
+
"types": "./lib/types/index.d.ts"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"scripts": {
|
|
31
|
+
"build": "vl_rolldown_build && tsc",
|
|
32
|
+
"dev": "vl_rolldown_build-watch",
|
|
33
|
+
"test": "bun test",
|
|
34
|
+
"typecheck": "tsc --noEmit"
|
|
35
|
+
},
|
|
36
|
+
"dependencies": {
|
|
37
|
+
"@pyreon/attrs": "^0.1.1",
|
|
38
|
+
"@pyreon/coolgrid": "^0.1.1",
|
|
39
|
+
"@pyreon/elements": "^0.1.1",
|
|
40
|
+
"@pyreon/feature": "^0.3.0",
|
|
41
|
+
"@pyreon/form": "^0.3.0",
|
|
42
|
+
"@pyreon/hooks": "^0.1.1",
|
|
43
|
+
"@pyreon/i18n": "^0.3.0",
|
|
44
|
+
"@pyreon/machine": "^0.5.0",
|
|
45
|
+
"@pyreon/permissions": "^0.5.0",
|
|
46
|
+
"@pyreon/kinetic": "^0.1.1",
|
|
47
|
+
"@pyreon/kinetic-presets": "^0.1.1",
|
|
48
|
+
"@pyreon/query": "^0.5.0",
|
|
49
|
+
"@pyreon/rocketstyle": "^0.1.1",
|
|
50
|
+
"@pyreon/store": "^0.3.0",
|
|
51
|
+
"@pyreon/styler": "^0.1.1",
|
|
52
|
+
"@pyreon/table": "^0.3.0",
|
|
53
|
+
"@pyreon/ui-core": "^0.1.1",
|
|
54
|
+
"@pyreon/unistyle": "^0.1.1",
|
|
55
|
+
"@pyreon/validation": "^0.3.0",
|
|
56
|
+
"@pyreon/virtual": "^0.5.0"
|
|
57
|
+
},
|
|
58
|
+
"peerDependencies": {
|
|
59
|
+
"@pyreon/reactivity": "^0.5.4"
|
|
60
|
+
}
|
|
61
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
// ─── Store ───────────────────────────────────────────────────────────────────
|
|
2
|
+
|
|
3
|
+
export type { StoreApi, StorePlugin } from '@pyreon/store'
|
|
4
|
+
export {
|
|
5
|
+
addStorePlugin,
|
|
6
|
+
batch,
|
|
7
|
+
computed,
|
|
8
|
+
defineStore,
|
|
9
|
+
effect,
|
|
10
|
+
resetAllStores,
|
|
11
|
+
resetStore,
|
|
12
|
+
signal,
|
|
13
|
+
} from '@pyreon/store'
|
|
14
|
+
|
|
15
|
+
// ─── Form ────────────────────────────────────────────────────────────────────
|
|
16
|
+
|
|
17
|
+
export type {
|
|
18
|
+
FieldRegisterProps,
|
|
19
|
+
FieldState,
|
|
20
|
+
FormState,
|
|
21
|
+
UseFieldArrayResult,
|
|
22
|
+
UseFieldResult,
|
|
23
|
+
UseFormOptions,
|
|
24
|
+
} from '@pyreon/form'
|
|
25
|
+
export {
|
|
26
|
+
FormProvider,
|
|
27
|
+
useField,
|
|
28
|
+
useFieldArray,
|
|
29
|
+
useForm,
|
|
30
|
+
useFormContext,
|
|
31
|
+
useFormState,
|
|
32
|
+
useWatch,
|
|
33
|
+
} from '@pyreon/form'
|
|
34
|
+
|
|
35
|
+
// ─── Validation ──────────────────────────────────────────────────────────────
|
|
36
|
+
|
|
37
|
+
export type { SchemaAdapter, ValidationIssue } from '@pyreon/validation'
|
|
38
|
+
export { zodField, zodSchema } from '@pyreon/validation'
|
|
39
|
+
|
|
40
|
+
// ─── Query ───────────────────────────────────────────────────────────────────
|
|
41
|
+
|
|
42
|
+
export type { UseMutationResult, UseQueryResult } from '@pyreon/query'
|
|
43
|
+
export {
|
|
44
|
+
QueryClient,
|
|
45
|
+
QueryClientProvider,
|
|
46
|
+
useInfiniteQuery,
|
|
47
|
+
useIsFetching,
|
|
48
|
+
useIsMutating,
|
|
49
|
+
useMutation,
|
|
50
|
+
useQuery,
|
|
51
|
+
useQueryClient,
|
|
52
|
+
} from '@pyreon/query'
|
|
53
|
+
|
|
54
|
+
// ─── Table ───────────────────────────────────────────────────────────────────
|
|
55
|
+
|
|
56
|
+
export type { UseTableOptions } from '@pyreon/table'
|
|
57
|
+
export { flexRender, useTable } from '@pyreon/table'
|
|
58
|
+
|
|
59
|
+
// ─── Virtual ─────────────────────────────────────────────────────────────────
|
|
60
|
+
|
|
61
|
+
export type {
|
|
62
|
+
UseVirtualizerOptions,
|
|
63
|
+
UseVirtualizerResult,
|
|
64
|
+
} from '@pyreon/virtual'
|
|
65
|
+
export { useVirtualizer, useWindowVirtualizer } from '@pyreon/virtual'
|
|
66
|
+
|
|
67
|
+
// ─── i18n ────────────────────────────────────────────────────────────────────
|
|
68
|
+
|
|
69
|
+
export type { I18nInstance, I18nOptions } from '@pyreon/i18n'
|
|
70
|
+
export { createI18n, I18nProvider, Trans, useI18n } from '@pyreon/i18n'
|
|
71
|
+
|
|
72
|
+
// ─── Feature ─────────────────────────────────────────────────────────────────
|
|
73
|
+
|
|
74
|
+
export type { Feature, FeatureConfig } from '@pyreon/feature'
|
|
75
|
+
export { defineFeature, reference } from '@pyreon/feature'
|
|
76
|
+
|
|
77
|
+
// ─── Machine ─────────────────────────────────────────────────────────────────
|
|
78
|
+
|
|
79
|
+
export { createMachine } from '@pyreon/machine'
|
|
80
|
+
|
|
81
|
+
// ─── Permissions ─────────────────────────────────────────────────────────────
|
|
82
|
+
|
|
83
|
+
export {
|
|
84
|
+
createPermissions,
|
|
85
|
+
PermissionsProvider,
|
|
86
|
+
usePermissions,
|
|
87
|
+
} from '@pyreon/permissions'
|
|
88
|
+
|
|
89
|
+
// ─── Styler ──────────────────────────────────────────────────────────────────
|
|
90
|
+
|
|
91
|
+
export { createGlobalStyle, css, keyframes, styled } from '@pyreon/styler'
|
|
92
|
+
|
|
93
|
+
// ─── Hooks ───────────────────────────────────────────────────────────────────
|
|
94
|
+
|
|
95
|
+
export {
|
|
96
|
+
useBreakpoint,
|
|
97
|
+
useClickOutside,
|
|
98
|
+
useColorScheme,
|
|
99
|
+
useDebouncedCallback,
|
|
100
|
+
useDebouncedValue,
|
|
101
|
+
useElementSize,
|
|
102
|
+
useFocus,
|
|
103
|
+
useFocusTrap,
|
|
104
|
+
useHover,
|
|
105
|
+
useIntersection,
|
|
106
|
+
useInterval,
|
|
107
|
+
useKeyboard,
|
|
108
|
+
useMediaQuery,
|
|
109
|
+
useMergedRef,
|
|
110
|
+
useReducedMotion,
|
|
111
|
+
useScrollLock,
|
|
112
|
+
useThrottledCallback,
|
|
113
|
+
useTimeout,
|
|
114
|
+
useToggle,
|
|
115
|
+
useWindowResize,
|
|
116
|
+
} from '@pyreon/hooks'
|
|
117
|
+
|
|
118
|
+
// ─── Elements ────────────────────────────────────────────────────────────────
|
|
119
|
+
|
|
120
|
+
export {
|
|
121
|
+
Element,
|
|
122
|
+
Iterator,
|
|
123
|
+
List,
|
|
124
|
+
Overlay,
|
|
125
|
+
Portal,
|
|
126
|
+
Text,
|
|
127
|
+
} from '@pyreon/elements'
|
|
128
|
+
|
|
129
|
+
// ─── Unistyle ────────────────────────────────────────────────────────────────
|
|
130
|
+
|
|
131
|
+
export {
|
|
132
|
+
makeItResponsive,
|
|
133
|
+
normalizeTheme,
|
|
134
|
+
sortBreakpoints,
|
|
135
|
+
} from '@pyreon/unistyle'
|
|
136
|
+
|
|
137
|
+
// ─── Coolgrid ────────────────────────────────────────────────────────────────
|
|
138
|
+
|
|
139
|
+
export { Col, Container, Row } from '@pyreon/coolgrid'
|
|
140
|
+
|
|
141
|
+
// ─── Kinetic ─────────────────────────────────────────────────────────────────
|
|
142
|
+
|
|
143
|
+
export { kinetic, useAnimationEnd, useTransitionState } from '@pyreon/kinetic'
|
|
144
|
+
|
|
145
|
+
// ─── Kinetic Presets ─────────────────────────────────────────────────────────
|
|
146
|
+
|
|
147
|
+
export {
|
|
148
|
+
createBlur,
|
|
149
|
+
createFade,
|
|
150
|
+
createRotate,
|
|
151
|
+
createScale,
|
|
152
|
+
createSlide,
|
|
153
|
+
} from '@pyreon/kinetic-presets'
|
|
154
|
+
|
|
155
|
+
// ─── Attrs ───────────────────────────────────────────────────────────────────
|
|
156
|
+
|
|
157
|
+
export { attrs } from '@pyreon/attrs'
|
|
158
|
+
|
|
159
|
+
// ─── Rocketstyle ─────────────────────────────────────────────────────────────
|
|
160
|
+
|
|
161
|
+
export { rocketstyle } from '@pyreon/rocketstyle'
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest'
|
|
2
|
+
import * as meta from '../index'
|
|
3
|
+
|
|
4
|
+
describe('@pyreon/meta exports', () => {
|
|
5
|
+
// ─── Fundamentals ───────────────────────────────────────────────────────
|
|
6
|
+
const fundamentals = [
|
|
7
|
+
'defineStore',
|
|
8
|
+
'signal',
|
|
9
|
+
'computed',
|
|
10
|
+
'effect',
|
|
11
|
+
'batch',
|
|
12
|
+
'resetStore',
|
|
13
|
+
'resetAllStores',
|
|
14
|
+
'addStorePlugin',
|
|
15
|
+
'useForm',
|
|
16
|
+
'useField',
|
|
17
|
+
'useFieldArray',
|
|
18
|
+
'FormProvider',
|
|
19
|
+
'useFormContext',
|
|
20
|
+
'useFormState',
|
|
21
|
+
'useWatch',
|
|
22
|
+
'zodSchema',
|
|
23
|
+
'zodField',
|
|
24
|
+
'QueryClient',
|
|
25
|
+
'QueryClientProvider',
|
|
26
|
+
'useQuery',
|
|
27
|
+
'useMutation',
|
|
28
|
+
'useQueryClient',
|
|
29
|
+
'useInfiniteQuery',
|
|
30
|
+
'useIsFetching',
|
|
31
|
+
'useIsMutating',
|
|
32
|
+
'useTable',
|
|
33
|
+
'flexRender',
|
|
34
|
+
'useVirtualizer',
|
|
35
|
+
'useWindowVirtualizer',
|
|
36
|
+
'createI18n',
|
|
37
|
+
'I18nProvider',
|
|
38
|
+
'useI18n',
|
|
39
|
+
'Trans',
|
|
40
|
+
'defineFeature',
|
|
41
|
+
'reference',
|
|
42
|
+
'createMachine',
|
|
43
|
+
'createPermissions',
|
|
44
|
+
'PermissionsProvider',
|
|
45
|
+
'usePermissions',
|
|
46
|
+
]
|
|
47
|
+
|
|
48
|
+
for (const name of fundamentals) {
|
|
49
|
+
it(`exports ${name}`, () => {
|
|
50
|
+
expect(name in meta).toBe(true)
|
|
51
|
+
})
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// ─── UI System ──────────────────────────────────────────────────────────
|
|
55
|
+
const uiSystem = [
|
|
56
|
+
'css',
|
|
57
|
+
'styled',
|
|
58
|
+
'createGlobalStyle',
|
|
59
|
+
'keyframes',
|
|
60
|
+
'useBreakpoint',
|
|
61
|
+
'useClickOutside',
|
|
62
|
+
'useColorScheme',
|
|
63
|
+
'useHover',
|
|
64
|
+
'useFocus',
|
|
65
|
+
'useMediaQuery',
|
|
66
|
+
'useToggle',
|
|
67
|
+
'useElementSize',
|
|
68
|
+
'useIntersection',
|
|
69
|
+
'useInterval',
|
|
70
|
+
'Element',
|
|
71
|
+
'Text',
|
|
72
|
+
'List',
|
|
73
|
+
'Overlay',
|
|
74
|
+
'Portal',
|
|
75
|
+
'Iterator',
|
|
76
|
+
'makeItResponsive',
|
|
77
|
+
'normalizeTheme',
|
|
78
|
+
'sortBreakpoints',
|
|
79
|
+
'Col',
|
|
80
|
+
'Container',
|
|
81
|
+
'Row',
|
|
82
|
+
'kinetic',
|
|
83
|
+
'useAnimationEnd',
|
|
84
|
+
'useTransitionState',
|
|
85
|
+
'createBlur',
|
|
86
|
+
'createFade',
|
|
87
|
+
'createRotate',
|
|
88
|
+
'createScale',
|
|
89
|
+
'createSlide',
|
|
90
|
+
'attrs',
|
|
91
|
+
'rocketstyle',
|
|
92
|
+
]
|
|
93
|
+
|
|
94
|
+
for (const name of uiSystem) {
|
|
95
|
+
it(`exports ${name}`, () => {
|
|
96
|
+
expect(name in meta).toBe(true)
|
|
97
|
+
})
|
|
98
|
+
}
|
|
99
|
+
})
|