@supernova-studio/model 0.0.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.
- package/index.ts +1 -0
- package/package.json +23 -0
- package/src/auth/index.ts +1 -0
- package/src/auth/plugin-oauth-request.ts +14 -0
- package/src/billing/card.ts +12 -0
- package/src/billing/checkoutSession.ts +16 -0
- package/src/billing/customer.ts +28 -0
- package/src/billing/features.ts +43 -0
- package/src/billing/index.ts +9 -0
- package/src/billing/invoice.ts +34 -0
- package/src/billing/portalSession.ts +19 -0
- package/src/billing/price.ts +24 -0
- package/src/billing/product.ts +5 -0
- package/src/billing/subscription.ts +65 -0
- package/src/codegen/export-jobs.ts +26 -0
- package/src/codegen/exporter-workspace-membership-role.ts +4 -0
- package/src/codegen/exporter-workspace-membership.ts +14 -0
- package/src/codegen/exporter.ts +52 -0
- package/src/codegen/git-providers.ts +11 -0
- package/src/codegen/index.ts +6 -0
- package/src/codegen/pulsar.ts +59 -0
- package/src/common/entity.ts +9 -0
- package/src/common/index.ts +2 -0
- package/src/common/object-meta.ts +8 -0
- package/src/custom-domains/custom-domains.ts +24 -0
- package/src/custom-domains/index.ts +1 -0
- package/src/docs-server/index.ts +1 -0
- package/src/docs-server/session.ts +39 -0
- package/src/dsm/assets/asset-reference.ts +18 -0
- package/src/dsm/assets/asset-value.ts +3 -0
- package/src/dsm/assets/asset.ts +48 -0
- package/src/dsm/assets/index.ts +3 -0
- package/src/dsm/brand.ts +7 -0
- package/src/dsm/data-sources/data-source.ts +158 -0
- package/src/dsm/data-sources/import-job.ts +28 -0
- package/src/dsm/data-sources/import-summary.ts +70 -0
- package/src/dsm/data-sources/index.ts +3 -0
- package/src/dsm/design-system.ts +33 -0
- package/src/dsm/desing-system-create.ts +22 -0
- package/src/dsm/desing-system-update.ts +25 -0
- package/src/dsm/documentation/block-definitions/aux.ts +8 -0
- package/src/dsm/documentation/block-definitions/definition.ts +104 -0
- package/src/dsm/documentation/block-definitions/index.ts +4 -0
- package/src/dsm/documentation/block-definitions/item.ts +113 -0
- package/src/dsm/documentation/block-definitions/variant.ts +78 -0
- package/src/dsm/documentation/group.ts +19 -0
- package/src/dsm/documentation/index.ts +3 -0
- package/src/dsm/documentation/page.ts +18 -0
- package/src/dsm/elements/base.ts +49 -0
- package/src/dsm/elements/component.ts +48 -0
- package/src/dsm/elements/data/base.ts +18 -0
- package/src/dsm/elements/data/blur.ts +16 -0
- package/src/dsm/elements/data/border-radius.ts +15 -0
- package/src/dsm/elements/data/border-width.ts +15 -0
- package/src/dsm/elements/data/border.ts +21 -0
- package/src/dsm/elements/data/color.ts +13 -0
- package/src/dsm/elements/data/component.ts +23 -0
- package/src/dsm/elements/data/dimension.ts +15 -0
- package/src/dsm/elements/data/documentation-block-v1.ts +325 -0
- package/src/dsm/elements/data/documentation-block-v2.ts +57 -0
- package/src/dsm/elements/data/documentation-page-v1.ts +13 -0
- package/src/dsm/elements/data/documentation-page-v2.ts +11 -0
- package/src/dsm/elements/data/documentation.ts +8 -0
- package/src/dsm/elements/data/duration.ts +15 -0
- package/src/dsm/elements/data/figma-file-structure.ts +65 -0
- package/src/dsm/elements/data/figma-node-reference.ts +20 -0
- package/src/dsm/elements/data/font-family.ts +8 -0
- package/src/dsm/elements/data/font-size.ts +15 -0
- package/src/dsm/elements/data/font-weight.ts +8 -0
- package/src/dsm/elements/data/gradient.ts +32 -0
- package/src/dsm/elements/data/group.ts +17 -0
- package/src/dsm/elements/data/index.ts +36 -0
- package/src/dsm/elements/data/letter-spacing.ts +15 -0
- package/src/dsm/elements/data/line-height.ts +15 -0
- package/src/dsm/elements/data/opacity.ts +12 -0
- package/src/dsm/elements/data/paragraph-indent.ts +15 -0
- package/src/dsm/elements/data/paragraph-spacing.ts +15 -0
- package/src/dsm/elements/data/product-copy.ts +8 -0
- package/src/dsm/elements/data/shadow.ts +23 -0
- package/src/dsm/elements/data/size.ts +15 -0
- package/src/dsm/elements/data/space.ts +15 -0
- package/src/dsm/elements/data/string.ts +8 -0
- package/src/dsm/elements/data/text-case.ts +10 -0
- package/src/dsm/elements/data/text-decoration.ts +10 -0
- package/src/dsm/elements/data/typography.ts +28 -0
- package/src/dsm/elements/data/visibility.ts +10 -0
- package/src/dsm/elements/data/z-index.ts +15 -0
- package/src/dsm/elements/documentation-page-v1.ts +30 -0
- package/src/dsm/elements/documentation-page-v2.ts +16 -0
- package/src/dsm/elements/figma-file-structures.ts +39 -0
- package/src/dsm/elements/figma-node-reference.ts +17 -0
- package/src/dsm/elements/group.ts +59 -0
- package/src/dsm/elements/index.ts +13 -0
- package/src/dsm/elements/page-block-v2.ts +24 -0
- package/src/dsm/elements/primitives/index.ts +2 -0
- package/src/dsm/elements/primitives/point.ts +8 -0
- package/src/dsm/elements/primitives/size.ts +28 -0
- package/src/dsm/elements/raw-element.ts +126 -0
- package/src/dsm/elements/theme.ts +74 -0
- package/src/dsm/elements/tokens.ts +288 -0
- package/src/dsm/import/asset.ts +6 -0
- package/src/dsm/import/base.ts +24 -0
- package/src/dsm/import/component.ts +36 -0
- package/src/dsm/import/data-source.ts +9 -0
- package/src/dsm/import/figma-frames.ts +74 -0
- package/src/dsm/import/image.ts +72 -0
- package/src/dsm/import/index.ts +11 -0
- package/src/dsm/import/origin.ts +5 -0
- package/src/dsm/import/support/figma-files.ts +16 -0
- package/src/dsm/import/support/import-context.ts +75 -0
- package/src/dsm/import/support/import-model-collections.ts +46 -0
- package/src/dsm/import/support/index.ts +3 -0
- package/src/dsm/import/theme.ts +76 -0
- package/src/dsm/import/tokens.ts +49 -0
- package/src/dsm/import/warning.ts +28 -0
- package/src/dsm/index.ts +15 -0
- package/src/dsm/properties/index.ts +3 -0
- package/src/dsm/properties/property-definition.ts +44 -0
- package/src/dsm/properties/property-reference.ts +5 -0
- package/src/dsm/properties/property-value.ts +27 -0
- package/src/dsm/published-doc-page.ts +25 -0
- package/src/dsm/published-doc.ts +30 -0
- package/src/dsm/reference.ts +9 -0
- package/src/dsm/version.ts +14 -0
- package/src/dsm/views/column.ts +43 -0
- package/src/dsm/views/index.ts +2 -0
- package/src/dsm/views/view.ts +11 -0
- package/src/feature-flags/feature-flags.ts +14 -0
- package/src/feature-flags/index.ts +1 -0
- package/src/helpers/common.ts +1 -0
- package/src/helpers/db.ts +37 -0
- package/src/helpers/index.ts +4 -0
- package/src/helpers/nullish-to-optional.ts +9 -0
- package/src/helpers/slug-helper.ts +641 -0
- package/src/index.ts +16 -0
- package/src/integrations/external-oauth-request.ts +12 -0
- package/src/integrations/index.ts +3 -0
- package/src/integrations/oauth-providers.ts +13 -0
- package/src/integrations/oauth-token.ts +15 -0
- package/src/multiplayer/design-system-version-room.ts +13 -0
- package/src/multiplayer/documentation-page-room.ts +14 -0
- package/src/multiplayer/index.ts +2 -0
- package/src/npm/index.ts +2 -0
- package/src/npm/npm-package.ts +30 -0
- package/src/npm/npm-proxy-token-payload.ts +7 -0
- package/src/tokens/index.ts +1 -0
- package/src/tokens/personal-access-token.ts +17 -0
- package/src/users/index.ts +5 -0
- package/src/users/linked-integrations.ts +36 -0
- package/src/users/user-identity.ts +8 -0
- package/src/users/user-profile.ts +26 -0
- package/src/users/user-with-pat.ts +7 -0
- package/src/users/user.ts +17 -0
- package/src/utils/content-loader-instruction.ts +31 -0
- package/src/utils/index.ts +1 -0
- package/src/workspace/index.ts +9 -0
- package/src/workspace/npm-registry-settings.ts +45 -0
- package/src/workspace/sso-provider.ts +13 -0
- package/src/workspace/user-invite.ts +18 -0
- package/src/workspace/workspace-context.ts +10 -0
- package/src/workspace/workspace-create.ts +27 -0
- package/src/workspace/workspace-invitations.ts +14 -0
- package/src/workspace/workspace-membership.ts +11 -0
- package/src/workspace/workspace-role.ts +6 -0
- package/src/workspace/workspace.ts +48 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { DbCreateInputOmit, DbUpdate, OmitStrict } from "../../helpers";
|
|
2
|
+
|
|
3
|
+
export type ElementViewBaseColumnType = "Name" | "Description" | "Value" | "UpdatedAt";
|
|
4
|
+
|
|
5
|
+
export type ElementViewColumn =
|
|
6
|
+
| ElementViewBasePropertyColumn
|
|
7
|
+
| ElementViewPropertyDefinitionColumn
|
|
8
|
+
| ElementViewThemeColumn;
|
|
9
|
+
|
|
10
|
+
export type ElementViewBasePropertyColumn = ElementViewColumnSharedAttributes & {
|
|
11
|
+
type: "BaseProperty";
|
|
12
|
+
basePropertyType: ElementViewBaseColumnType;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export type ElementViewPropertyDefinitionColumn = ElementViewColumnSharedAttributes & {
|
|
16
|
+
type: "PropertyDefinition";
|
|
17
|
+
propertyDefinitionId: string;
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export type ElementViewThemeColumn = ElementViewColumnSharedAttributes & {
|
|
21
|
+
type: "Theme";
|
|
22
|
+
themeId: string;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export type ElementViewColumnSharedAttributes = {
|
|
26
|
+
id: string;
|
|
27
|
+
persistentId: string;
|
|
28
|
+
elementDataViewId: string;
|
|
29
|
+
sortPosition: number;
|
|
30
|
+
width: number;
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export type ElementViewColumnType = ElementViewColumn["type"];
|
|
34
|
+
|
|
35
|
+
export type CreateElementViewColumn =
|
|
36
|
+
| DbCreateInputOmit<ElementViewBasePropertyColumn>
|
|
37
|
+
| DbCreateInputOmit<ElementViewPropertyDefinitionColumn>
|
|
38
|
+
| DbCreateInputOmit<ElementViewThemeColumn>;
|
|
39
|
+
|
|
40
|
+
export type UpdateElementViewColumn =
|
|
41
|
+
| OmitStrict<DbUpdate<ElementViewBasePropertyColumn>, "elementDataViewId">
|
|
42
|
+
| OmitStrict<DbUpdate<ElementViewPropertyDefinitionColumn>, "elementDataViewId">
|
|
43
|
+
| OmitStrict<DbUpdate<ElementViewThemeColumn>, "elementDataViewId">;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ElementPropertyTargetType } from "../properties";
|
|
2
|
+
|
|
3
|
+
export type ElementView = {
|
|
4
|
+
id: string;
|
|
5
|
+
persistentId: string;
|
|
6
|
+
designSystemVersionId: string;
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
targetElementType: ElementPropertyTargetType;
|
|
10
|
+
isDefault: boolean;
|
|
11
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
export const FlaggedFeature = z.enum(["FigmaImporterV2"]);
|
|
4
|
+
export const FeatureFlagMap = z.record(FlaggedFeature, z.boolean());
|
|
5
|
+
export const FeatureFlag = z.object({
|
|
6
|
+
id: z.string(),
|
|
7
|
+
feature: FlaggedFeature,
|
|
8
|
+
createdAt: z.date(),
|
|
9
|
+
enabled: z.boolean(),
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
export type FlaggedFeature = z.infer<typeof FlaggedFeature>;
|
|
13
|
+
export type FeatureFlagMap = z.infer<typeof FeatureFlagMap>;
|
|
14
|
+
export type FeatureFlag = z.infer<typeof FeatureFlag>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./feature-flags";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type OmitStrict<T, K extends keyof T> = T extends any ? Pick<T, Exclude<keyof T, K>> : never;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export type DbCreateInputOmit<T> = Omit<T, "id" | "createdAt" | "updatedAt">;
|
|
2
|
+
|
|
3
|
+
export type DbUpdateInputOmit<T> = Omit<T, "createdAt" | "updatedAt" | "persistentId">;
|
|
4
|
+
|
|
5
|
+
export type DbUpdate<T extends { id: string }> = Partial<OptionalToNullable<DbUpdateInputOmit<Omit<T, "id">>>> &
|
|
6
|
+
Pick<T, "id">;
|
|
7
|
+
|
|
8
|
+
type PickOptional<T> = {
|
|
9
|
+
[P in keyof T as undefined extends T[P] ? P : never]: T[P];
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
type PickNotOptional<T> = {
|
|
13
|
+
[P in keyof T as undefined extends T[P] ? never : P]: T[P];
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export type OptionalToNullable<T> = {
|
|
17
|
+
[K in keyof PickOptional<T>]-?: Exclude<T[K], undefined> | null;
|
|
18
|
+
} & {
|
|
19
|
+
[K in keyof PickNotOptional<T>]: T[K];
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export function zodCreateInputOmit() {
|
|
23
|
+
return {
|
|
24
|
+
id: true,
|
|
25
|
+
createdAt: true,
|
|
26
|
+
updatedAt: true,
|
|
27
|
+
} as const;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export function zodUpdateInputOmit() {
|
|
31
|
+
return {
|
|
32
|
+
id: true,
|
|
33
|
+
createdAt: true,
|
|
34
|
+
updatedAt: true,
|
|
35
|
+
persistentId: true,
|
|
36
|
+
} as const;
|
|
37
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ZodType, z } from "zod";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Allows both null and undefined as input values in addition to the actual value,
|
|
5
|
+
* but coerces them both to undefined.
|
|
6
|
+
*/
|
|
7
|
+
export function nullishToOptional<T>(type: ZodType<T>) {
|
|
8
|
+
return type.nullish().transform(t => t ?? undefined);
|
|
9
|
+
}
|