@stacksjs/types 0.59.10 → 0.61.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/package.json +22 -25
- package/src/ai.ts +2 -1
- package/src/api.ts +12 -0
- package/src/chat.ts +1 -1
- package/src/cli.ts +76 -27
- package/src/cloud.ts +250 -27
- package/src/database.ts +18 -8
- package/src/dns.ts +286 -2
- package/src/email.ts +1 -3
- package/src/errors.ts +93 -0
- package/src/git.ts +1 -1
- package/src/hashing.ts +9 -9
- package/src/helpers.ts +2 -5
- package/src/index.ts +1 -0
- package/src/library.ts +765 -5
- package/src/model-names.ts +1 -0
- package/src/model.ts +92 -33
- package/src/notifications.ts +11 -1
- package/src/ports.ts +1 -0
- package/src/search-engine.ts +38 -13
- package/src/security.ts +1 -1
- package/src/services.ts +6 -6
- package/src/stacks.ts +11 -0
- package/src/tables.ts +1 -1
- package/src/ui.ts +1 -1
- package/src/utils.ts +6 -7
- package/dist/ai.d.ts +0 -15
- package/dist/analytics.d.ts +0 -19
- package/dist/api.d.ts +0 -59
- package/dist/app.d.ts +0 -135
- package/dist/auto-imports.d.ts +0 -1
- package/dist/binary.d.ts +0 -11
- package/dist/build.d.ts +0 -2
- package/dist/cache.d.ts +0 -88
- package/dist/cdn.d.ts +0 -16
- package/dist/chat.d.ts +0 -4
- package/dist/cli.d.ts +0 -278
- package/dist/cloud.d.ts +0 -69
- package/dist/components.d.ts +0 -60
- package/dist/configure.d.ts +0 -12
- package/dist/cron-jobs.d.ts +0 -43
- package/dist/database.d.ts +0 -37
- package/dist/dependencies.d.ts +0 -62
- package/dist/deploy.d.ts +0 -12
- package/dist/dns.d.ts +0 -175
- package/dist/docs.d.ts +0 -22
- package/dist/email.d.ts +0 -14
- package/dist/env.d.ts +0 -1
- package/dist/errors.d.ts +0 -1
- package/dist/events.d.ts +0 -30
- package/dist/exit-code.d.ts +0 -10
- package/dist/file-systems.d.ts +0 -60
- package/dist/git.d.ts +0 -129
- package/dist/hashing.d.ts +0 -109
- package/dist/helpers.d.ts +0 -1
- package/dist/i18n.d.ts +0 -19
- package/dist/index.d.ts +0 -58
- package/dist/inspect.d.ts +0 -9
- package/dist/library.d.ts +0 -134
- package/dist/logger.d.ts +0 -49
- package/dist/manifest.d.ts +0 -9
- package/dist/model.d.ts +0 -70
- package/dist/money.d.ts +0 -2
- package/dist/notifications.d.ts +0 -117
- package/dist/pages.d.ts +0 -10
- package/dist/payments.d.ts +0 -60
- package/dist/ports.d.ts +0 -19
- package/dist/promise.d.ts +0 -1
- package/dist/push.d.ts +0 -35
- package/dist/pwa.d.ts +0 -7
- package/dist/queue.d.ts +0 -36
- package/dist/reactivity.d.ts +0 -1
- package/dist/router.d.ts +0 -78
- package/dist/scheduler.d.ts +0 -1
- package/dist/search-engine.d.ts +0 -118
- package/dist/security.d.ts +0 -18
- package/dist/services.d.ts +0 -33
- package/dist/sms.d.ts +0 -1
- package/dist/ssg.d.ts +0 -2
- package/dist/stacks.d.ts +0 -196
- package/dist/storage.d.ts +0 -12
- package/dist/tables.d.ts +0 -52
- package/dist/team.d.ts +0 -8
- package/dist/ui.d.ts +0 -165
- package/dist/utils.d.ts +0 -33
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type ModelNames = 'Project' | 'AccessToken' | 'Team' | 'Subscriber' | 'Deployment' | 'User' | 'Post'
|
package/src/model.ts
CHANGED
|
@@ -1,12 +1,24 @@
|
|
|
1
|
+
import type { ModelNames, Model as ModelType } from '@stacksjs/types'
|
|
1
2
|
import type { VineBoolean, VineNumber, VineString } from '@vinejs/vine'
|
|
2
|
-
import type { Nullable,
|
|
3
|
+
import type { DeepPartial, Nullable, SearchOptions } from '.'
|
|
3
4
|
|
|
4
|
-
export
|
|
5
|
+
export type AuthOptions = {}
|
|
5
6
|
|
|
7
|
+
export type ApiRoutes = 'index' | 'show' | 'store' | 'update' | 'destroy'
|
|
8
|
+
|
|
9
|
+
export type VineType = VineString | VineNumber | VineBoolean | Date | Nullable<any>
|
|
6
10
|
export interface SeedOptions {
|
|
7
11
|
count: number
|
|
8
12
|
}
|
|
9
13
|
|
|
14
|
+
export interface ApiSettings {
|
|
15
|
+
uri: string
|
|
16
|
+
middleware: string[]
|
|
17
|
+
routes: ApiRoutes[]
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
type ApiOptions = DeepPartial<ApiSettings>
|
|
21
|
+
|
|
10
22
|
export interface TimestampOptions {
|
|
11
23
|
createdAt?: string // defaults to 'created_at'
|
|
12
24
|
updatedAt?: string
|
|
@@ -17,66 +29,113 @@ export interface SoftDeleteOptions {
|
|
|
17
29
|
deletedAt?: string // defaults to 'deleted_at' & can be used for localized tables
|
|
18
30
|
}
|
|
19
31
|
|
|
20
|
-
|
|
32
|
+
type Base = {}
|
|
21
33
|
|
|
22
34
|
/**
|
|
23
35
|
* Model.
|
|
24
36
|
*/
|
|
25
37
|
export interface ModelOptions extends Base {
|
|
26
38
|
name: string // defaults to the file name of the model
|
|
27
|
-
table: string // defaults to the lowercase, plural name of the model
|
|
39
|
+
table: string // defaults to the lowercase, plural name of the model name (or the name of the model file)
|
|
28
40
|
primaryKey?: string // defaults to `id`
|
|
29
41
|
autoIncrement?: boolean // defaults to true
|
|
42
|
+
dashboard?: {
|
|
43
|
+
highlight?: boolean | number // defaults to undefined
|
|
44
|
+
}
|
|
30
45
|
|
|
31
46
|
traits: {
|
|
32
47
|
useUuid?: boolean // defaults to false
|
|
33
48
|
useTimestamps?: boolean | TimestampOptions // defaults to true
|
|
49
|
+
timestampable?: boolean | TimestampOptions // useTimestamps alias
|
|
34
50
|
useSoftDeletes?: boolean | SoftDeleteOptions // defaults to false
|
|
51
|
+
softDeletable?: boolean | SoftDeleteOptions // useSoftDeletes alias
|
|
35
52
|
|
|
36
53
|
useAuth?: boolean | AuthOptions // defaults to false
|
|
37
54
|
authenticatable?: boolean | AuthOptions // useAuth alias
|
|
38
55
|
useSeeder?: boolean | SeedOptions // defaults to a count of 10
|
|
39
56
|
seedable?: boolean | SeedOptions // useSeeder alias
|
|
40
|
-
useSearch?: boolean |
|
|
41
|
-
searchable?: boolean |
|
|
57
|
+
useSearch?: boolean | SearchOptions // defaults to false
|
|
58
|
+
searchable?: boolean | SearchOptions // useSearch alias
|
|
59
|
+
useApi?: boolean | ApiOptions
|
|
42
60
|
}
|
|
43
61
|
|
|
44
|
-
|
|
62
|
+
attributes: Attributes
|
|
45
63
|
|
|
46
64
|
// relationships
|
|
47
|
-
hasOne:
|
|
48
|
-
|
|
49
|
-
|
|
65
|
+
hasOne:
|
|
66
|
+
| {
|
|
67
|
+
model: ModelNames
|
|
68
|
+
foreignKey?: string
|
|
69
|
+
relationName?: string
|
|
70
|
+
}[]
|
|
71
|
+
| string[]
|
|
72
|
+
hasMany:
|
|
73
|
+
| {
|
|
74
|
+
model: ModelNames // should be typed as ModelName
|
|
75
|
+
foreignKey?: string
|
|
76
|
+
relationName?: string
|
|
77
|
+
}[]
|
|
78
|
+
| ModelNames[]
|
|
79
|
+
belongsTo:
|
|
80
|
+
| {
|
|
81
|
+
model: ModelNames // should be typed as ModelName
|
|
82
|
+
foreignKey?: string
|
|
83
|
+
relationName?: string
|
|
84
|
+
}[]
|
|
85
|
+
| ModelNames[] // belongsTo: 'User'
|
|
86
|
+
belongsToMany:
|
|
87
|
+
| {
|
|
88
|
+
model: ModelNames
|
|
89
|
+
firstForeignKey?: string
|
|
90
|
+
secondForeignKey?: string
|
|
91
|
+
pivotTable?: string
|
|
92
|
+
relationName?: string
|
|
93
|
+
}
|
|
94
|
+
| ModelNames[]
|
|
95
|
+
hasOneThrough: {
|
|
96
|
+
model: ModelNames
|
|
97
|
+
through: ModelNames
|
|
50
98
|
foreignKey?: string
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
using: string
|
|
99
|
+
throughForeignKey?: string
|
|
100
|
+
relationName?: string
|
|
101
|
+
}[]
|
|
102
|
+
|
|
103
|
+
get: {
|
|
104
|
+
[key: string]: (value: any) => any
|
|
58
105
|
}
|
|
59
106
|
|
|
60
|
-
|
|
61
|
-
[key: string]:
|
|
62
|
-
get: (value: any) => any
|
|
63
|
-
set: (value: any) => any
|
|
64
|
-
}
|
|
107
|
+
set: {
|
|
108
|
+
[key: string]: (value: any) => any
|
|
65
109
|
}
|
|
66
110
|
}
|
|
67
111
|
|
|
68
|
-
export interface
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
message: string
|
|
77
|
-
}
|
|
78
|
-
// validation?: String | Number | Boolean | Date
|
|
112
|
+
export interface Attribute {
|
|
113
|
+
default?: string | number | boolean | Date
|
|
114
|
+
unique?: boolean
|
|
115
|
+
required?: boolean
|
|
116
|
+
factory?: () => any
|
|
117
|
+
validator?: {
|
|
118
|
+
rule: VineType
|
|
119
|
+
message: string
|
|
79
120
|
}
|
|
121
|
+
// validation?: String | Number | Boolean | Date
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export interface Attributes {
|
|
125
|
+
[key: string]: Attribute
|
|
80
126
|
}
|
|
81
127
|
|
|
82
128
|
export type Model = Partial<ModelOptions>
|
|
129
|
+
|
|
130
|
+
export interface RelationConfig {
|
|
131
|
+
relationship: string
|
|
132
|
+
model: string
|
|
133
|
+
table?: string
|
|
134
|
+
relationModel?: string
|
|
135
|
+
relationTable?: string
|
|
136
|
+
foreignKey: string
|
|
137
|
+
relationName: string
|
|
138
|
+
throughModel: string
|
|
139
|
+
throughForeignKey: string
|
|
140
|
+
pivotTable: string
|
|
141
|
+
}
|
package/src/notifications.ts
CHANGED
|
@@ -2,7 +2,17 @@ export interface NotificationOptions {
|
|
|
2
2
|
default: 'email' | 'sms' | 'chat' | string
|
|
3
3
|
|
|
4
4
|
email: {
|
|
5
|
-
default:
|
|
5
|
+
default:
|
|
6
|
+
| 'emailjs'
|
|
7
|
+
| 'mailgun'
|
|
8
|
+
| 'mailjet'
|
|
9
|
+
| 'mandrill'
|
|
10
|
+
| 'netcore'
|
|
11
|
+
| 'nodemailer'
|
|
12
|
+
| 'postmark'
|
|
13
|
+
| 'sendgrid'
|
|
14
|
+
| 'ses'
|
|
15
|
+
| string
|
|
6
16
|
|
|
7
17
|
from: {
|
|
8
18
|
name: string
|
package/src/ports.ts
CHANGED
package/src/search-engine.ts
CHANGED
|
@@ -1,4 +1,15 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type {
|
|
2
|
+
EnqueuedTask,
|
|
3
|
+
Hits,
|
|
4
|
+
Index,
|
|
5
|
+
IndexOptions,
|
|
6
|
+
IndexesResults,
|
|
7
|
+
MeiliSearch,
|
|
8
|
+
Settings as MeilisearchOptions,
|
|
9
|
+
DocumentOptions as RecordOptions,
|
|
10
|
+
SearchParams,
|
|
11
|
+
SearchResponse,
|
|
12
|
+
} from 'meilisearch'
|
|
2
13
|
import type { MaybePromise } from '.'
|
|
3
14
|
|
|
4
15
|
type Search = any
|
|
@@ -19,17 +30,18 @@ export interface SearchEngineOptions {
|
|
|
19
30
|
*
|
|
20
31
|
* The search engine to utilize.
|
|
21
32
|
*
|
|
22
|
-
* @default string '
|
|
33
|
+
* @default string 'opensearch'
|
|
23
34
|
* @see https://stacksjs.org/docs/search-engine
|
|
24
35
|
*/
|
|
25
|
-
driver: '
|
|
36
|
+
driver: 'opensearch'
|
|
37
|
+
// driver: 'meilisearch' | 'algolia' | 'typesense' | 'opensearch' wip
|
|
26
38
|
|
|
27
|
-
meilisearch?: {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
39
|
+
// meilisearch?: {
|
|
40
|
+
// host: string
|
|
41
|
+
// apiKey: string
|
|
42
|
+
// }
|
|
31
43
|
|
|
32
|
-
|
|
44
|
+
opensearch?: {
|
|
33
45
|
host: string
|
|
34
46
|
protocol: number
|
|
35
47
|
port: number
|
|
@@ -58,7 +70,7 @@ export interface SearchEngineDriver {
|
|
|
58
70
|
getIndex: (name: string) => MaybePromise<Index>
|
|
59
71
|
updateIndex: (name: string, options: IndexOptions) => MaybePromise<EnqueuedTask>
|
|
60
72
|
deleteIndex: (name: string) => MaybePromise<EnqueuedTask>
|
|
61
|
-
updateIndexSettings: (name: string, settings:
|
|
73
|
+
updateIndexSettings: (name: string, settings: SearchEngineOptions) => MaybePromise<EnqueuedTask>
|
|
62
74
|
listAllIndexes: () => MaybePromise<IndexesResults<Index[]>>
|
|
63
75
|
listAllIndices: () => MaybePromise<IndexesResults<Index[]>> // alternatives plural spelling
|
|
64
76
|
|
|
@@ -128,9 +140,22 @@ export interface SearchEngineStorage {
|
|
|
128
140
|
currentPage: number
|
|
129
141
|
}
|
|
130
142
|
|
|
131
|
-
export interface
|
|
132
|
-
|
|
133
|
-
|
|
143
|
+
export interface SearchOptions {
|
|
144
|
+
searchable: string[]
|
|
145
|
+
sortable: string[]
|
|
146
|
+
filterable: string[]
|
|
147
|
+
options?: SearchEngineOptions
|
|
134
148
|
}
|
|
135
149
|
|
|
136
|
-
export type {
|
|
150
|
+
export type {
|
|
151
|
+
EnqueuedTask,
|
|
152
|
+
Hits,
|
|
153
|
+
Index,
|
|
154
|
+
IndexOptions,
|
|
155
|
+
IndexesResults,
|
|
156
|
+
MeiliSearch,
|
|
157
|
+
RecordOptions,
|
|
158
|
+
MeilisearchOptions,
|
|
159
|
+
SearchParams,
|
|
160
|
+
SearchResponse,
|
|
161
|
+
}
|
package/src/security.ts
CHANGED
package/src/services.ts
CHANGED
|
@@ -14,20 +14,20 @@ export interface ServicesOptions {
|
|
|
14
14
|
apiKey: string
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
lemonSqueezy?: {
|
|
18
18
|
appId: string
|
|
19
19
|
apiKey: string
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
stripe?: {
|
|
23
23
|
appId: string
|
|
24
24
|
apiKey: string
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
supabase?: {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
27
|
+
// supabase?: {
|
|
28
|
+
// appId: string
|
|
29
|
+
// apiKey: string
|
|
30
|
+
// }
|
|
31
31
|
|
|
32
32
|
aws?: {
|
|
33
33
|
accountId: string
|
package/src/stacks.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type {
|
|
2
2
|
AiConfig,
|
|
3
3
|
AnalyticsConfig,
|
|
4
|
+
ApiConfig,
|
|
4
5
|
AppConfig,
|
|
5
6
|
BinaryConfig,
|
|
6
7
|
CacheConfig,
|
|
@@ -9,6 +10,7 @@ import type {
|
|
|
9
10
|
DnsConfig,
|
|
10
11
|
DocsConfig,
|
|
11
12
|
EmailConfig,
|
|
13
|
+
ErrorConfig,
|
|
12
14
|
GitConfig,
|
|
13
15
|
HashingConfig,
|
|
14
16
|
LibraryConfig,
|
|
@@ -116,6 +118,15 @@ export interface StacksOptions {
|
|
|
116
118
|
*/
|
|
117
119
|
email: EmailConfig
|
|
118
120
|
|
|
121
|
+
/**
|
|
122
|
+
* **Errors Options**
|
|
123
|
+
*
|
|
124
|
+
* This configuration defines all of your Errors options. Because Stacks is fully-typed, you
|
|
125
|
+
* may hover any of the options below and the definitions will be provided. In case you
|
|
126
|
+
* have any questions, feel free to reach out via Discord or GitHub Discussions.
|
|
127
|
+
*/
|
|
128
|
+
errors: ErrorConfig
|
|
129
|
+
|
|
119
130
|
/**
|
|
120
131
|
* **Git Options**
|
|
121
132
|
*
|
package/src/tables.ts
CHANGED
|
@@ -28,7 +28,7 @@ export interface TableStore {
|
|
|
28
28
|
sorts?: string | string[] // optional: the specific type of sorts to be applied to the table (defaults: [])
|
|
29
29
|
filterable?: string | boolean // optional: determines whether the table displays the filters component (defaults: true)
|
|
30
30
|
filters?: string | string[] // optional: the specific type of filters to be displayed/utilized in the table (defaults: [])
|
|
31
|
-
filterValue?: any[]// optional: the specific type of filters to be displayed/utilized in the table (defaults: [])
|
|
31
|
+
filterValue?: any[] // optional: the specific type of filters to be displayed/utilized in the table (defaults: [])
|
|
32
32
|
actionable?: string | boolean // optional: determines whether the table displays any "action items" (defaults: true)
|
|
33
33
|
actions?: string | string[] // optional: the specific type of actions to be displayed/utilized in the table (defaults: 'Edit, Delete')
|
|
34
34
|
perPage: number // optional: the number of rows (items) to be displayed per page (defaults: 10)
|
package/src/ui.ts
CHANGED
package/src/utils.ts
CHANGED
|
@@ -25,12 +25,11 @@ export type Constructor<T = void> = new (...args: any[]) => T
|
|
|
25
25
|
* @returns U items intersected
|
|
26
26
|
* @see https://stackoverflow.com/a/50375286/9259330
|
|
27
27
|
*/
|
|
28
|
-
export type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (
|
|
28
|
+
export type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void
|
|
29
|
+
? I
|
|
30
|
+
: never
|
|
29
31
|
|
|
30
|
-
export type MergeInsertions<T> =
|
|
31
|
-
T extends object
|
|
32
|
-
? { [K in keyof T]: MergeInsertions<T[K]> }
|
|
33
|
-
: T
|
|
32
|
+
export type MergeInsertions<T> = T extends object ? { [K in keyof T]: MergeInsertions<T[K]> } : T
|
|
34
33
|
|
|
35
34
|
export type DeepMerge<F, S> = MergeInsertions<{
|
|
36
35
|
[K in keyof F | keyof S]: K extends keyof S & keyof F
|
|
@@ -39,9 +38,9 @@ export type DeepMerge<F, S> = MergeInsertions<{
|
|
|
39
38
|
? S[K]
|
|
40
39
|
: K extends keyof F
|
|
41
40
|
? F[K]
|
|
42
|
-
: never
|
|
41
|
+
: never
|
|
43
42
|
}>
|
|
44
43
|
|
|
45
44
|
export type DeepPartial<T> = {
|
|
46
|
-
[P in keyof T]?: DeepPartial<T[P]
|
|
45
|
+
[P in keyof T]?: DeepPartial<T[P]>
|
|
47
46
|
}
|
package/dist/ai.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
type AiModel = 'amazon.titan-embed-text-v1' | 'amazon.titan-text-lite-v1' | 'amazon.titan-text-express-v1' | 'amazon.titan-embed-image-v1' | 'amazon.titan-image-generator-v1' | 'anthropic.claude-v1' | 'anthropic.claude-v2' | 'anthropic.claude-v2:1' | 'anthropic.claude-instant-v1' | 'meta.llama2-13b-chat-v1' | 'meta.llama2-70b-chat-v1';
|
|
2
|
-
/**
|
|
3
|
-
* **AI Options**
|
|
4
|
-
*
|
|
5
|
-
* This configuration defines all of your AI options. Because Stacks is fully-typed, you
|
|
6
|
-
* may hover any of the options below and the definitions will be provided. In case you
|
|
7
|
-
* have any questions, feel free to reach out via Discord or GitHub Discussions.
|
|
8
|
-
*/
|
|
9
|
-
export interface AiOptions {
|
|
10
|
-
default: AiModel;
|
|
11
|
-
models: AiModel[];
|
|
12
|
-
deploy: boolean;
|
|
13
|
-
}
|
|
14
|
-
export type AiConfig = Partial<AiOptions>;
|
|
15
|
-
export {};
|
package/dist/analytics.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* **Analytics Options**
|
|
3
|
-
*
|
|
4
|
-
* This configuration defines all of your Analytics options. Because Stacks is fully-typed, you
|
|
5
|
-
* may hover any of the options below and the definitions will be provided. In case you
|
|
6
|
-
* have any questions, feel free to reach out via Discord or GitHub Discussions.
|
|
7
|
-
*/
|
|
8
|
-
export interface AnalyticsOptions {
|
|
9
|
-
driver: 'google-analytics' | 'fathom';
|
|
10
|
-
drivers: {
|
|
11
|
-
googleAnalytics?: {
|
|
12
|
-
trackingId: string;
|
|
13
|
-
};
|
|
14
|
-
fathom?: {
|
|
15
|
-
siteId: string;
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
export type AnalyticsConfig = Partial<AnalyticsOptions>;
|
package/dist/api.d.ts
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* **API Options**
|
|
3
|
-
*
|
|
4
|
-
* This configuration defines all of your API options. Because Stacks is fully-typed, you
|
|
5
|
-
* may hover any of the options below and the definitions will be provided. In case you
|
|
6
|
-
* have any questions, feel free to reach out via Discord or GitHub Discussions.
|
|
7
|
-
*/
|
|
8
|
-
export interface ApiOptions {
|
|
9
|
-
/**
|
|
10
|
-
* **API Description**
|
|
11
|
-
*
|
|
12
|
-
* This value defines the description for your API.
|
|
13
|
-
*
|
|
14
|
-
* @default "Stacks API"
|
|
15
|
-
*/
|
|
16
|
-
description: string;
|
|
17
|
-
/**
|
|
18
|
-
* **API Prefix**
|
|
19
|
-
*
|
|
20
|
-
* This value defines the prefix for all of your API routes. For example, if you set
|
|
21
|
-
* this value to `api`, all of your API routes will be prefixed with `/api`. This
|
|
22
|
-
* value is useful for when you want to version your API.
|
|
23
|
-
*
|
|
24
|
-
* @default string "api"
|
|
25
|
-
* @example string "api/v1"
|
|
26
|
-
*/
|
|
27
|
-
prefix: string;
|
|
28
|
-
/**
|
|
29
|
-
* **API Prewarm**
|
|
30
|
-
*
|
|
31
|
-
* This configuration determines the prewarming behavior of your API. Prewarming eliminates
|
|
32
|
-
* cold starts in your API. If this value is set to `true`, the API will be prewarmed
|
|
33
|
-
* every 5 minutes. If you provide a number, Stacks will prewarm the
|
|
34
|
-
* specified number of containers every 5 minutes.
|
|
35
|
-
*
|
|
36
|
-
* @default true
|
|
37
|
-
* @example false
|
|
38
|
-
* @example 10
|
|
39
|
-
*/
|
|
40
|
-
prewarm: boolean | number;
|
|
41
|
-
/**
|
|
42
|
-
* **API Memory Size**
|
|
43
|
-
*
|
|
44
|
-
* This value defines the memory size for your API.
|
|
45
|
-
*
|
|
46
|
-
* @default 512
|
|
47
|
-
*/
|
|
48
|
-
memorySize: number;
|
|
49
|
-
/**
|
|
50
|
-
* **API Timeout**
|
|
51
|
-
*
|
|
52
|
-
* This value defines the timeout for your API.
|
|
53
|
-
*
|
|
54
|
-
* @default 30
|
|
55
|
-
*/
|
|
56
|
-
timeout: number;
|
|
57
|
-
deploy: boolean;
|
|
58
|
-
}
|
|
59
|
-
export type ApiConfig = Partial<ApiOptions>;
|
package/dist/app.d.ts
DELETED
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
export type AppEnvType = 'local' | 'dev' | 'stage' | 'prod' | string;
|
|
2
|
-
/**
|
|
3
|
-
* **Application Options**
|
|
4
|
-
*
|
|
5
|
-
* This configuration defines all of your application options. Because Stacks is fully-typed,
|
|
6
|
-
* you may hover any of the options below and the definitions will be provided. In case
|
|
7
|
-
* you have any questions, feel free to reach out via Discord or GitHub Discussions.
|
|
8
|
-
*/
|
|
9
|
-
export interface AppOptions {
|
|
10
|
-
/**
|
|
11
|
-
* **Application Name**
|
|
12
|
-
*
|
|
13
|
-
* This value is the name of your application. This value is used when the
|
|
14
|
-
* framework needs to place the application's name in a log or any
|
|
15
|
-
* other location as required by the application or its packages.
|
|
16
|
-
*
|
|
17
|
-
* @default string "Stacks"
|
|
18
|
-
*/
|
|
19
|
-
name: string;
|
|
20
|
-
/**
|
|
21
|
-
* **Application Description**
|
|
22
|
-
*
|
|
23
|
-
* This value is the description of your application. This value is used when the
|
|
24
|
-
* framework generates meta tags for the frontend.
|
|
25
|
-
*/
|
|
26
|
-
description: string;
|
|
27
|
-
/**
|
|
28
|
-
* **Application Environment**
|
|
29
|
-
*
|
|
30
|
-
* This value determines the "environment" your application is currently
|
|
31
|
-
* running in. This may determine how you prefer to configure various
|
|
32
|
-
* services the application utilizes. Set this in your ".env" file
|
|
33
|
-
*
|
|
34
|
-
* @default "local"
|
|
35
|
-
*/
|
|
36
|
-
env: AppEnvType;
|
|
37
|
-
/**
|
|
38
|
-
* **Application URL**
|
|
39
|
-
*
|
|
40
|
-
* This URL is used by the console to properly generate URLs when using
|
|
41
|
-
* the Buddy command line tool. You should set this to the root of
|
|
42
|
-
* your application so that it is used when running Buddy tasks.
|
|
43
|
-
*
|
|
44
|
-
* @default string "stacks.localhost"
|
|
45
|
-
* @example "my-project.test"
|
|
46
|
-
*/
|
|
47
|
-
url: string;
|
|
48
|
-
/**
|
|
49
|
-
* **Redirect URLs**
|
|
50
|
-
*
|
|
51
|
-
* A Redirect URL is a URL that permanently redirects to the Application URL.
|
|
52
|
-
* This is useful for when you have multiple domains that you want to redirect
|
|
53
|
-
* to your application. You can set this to a string or an array of strings.
|
|
54
|
-
*
|
|
55
|
-
* @default []
|
|
56
|
-
* @example "['stacksjs.com', 'stacksjs.dev']"
|
|
57
|
-
*/
|
|
58
|
-
redirectUrls: string | string[];
|
|
59
|
-
/**
|
|
60
|
-
* **Application Debug Mode**
|
|
61
|
-
*
|
|
62
|
-
* When your application is in debug mode, detailed error messages with
|
|
63
|
-
* stack traces will be shown on every error that occurs within your
|
|
64
|
-
* application. If disabled, a simple generic error page is shown.
|
|
65
|
-
*
|
|
66
|
-
* @default true
|
|
67
|
-
*/
|
|
68
|
-
debug: boolean;
|
|
69
|
-
/**
|
|
70
|
-
* **Maintenance Mode**
|
|
71
|
-
*
|
|
72
|
-
* When your application is in maintenance mode, a simple maintenance
|
|
73
|
-
* page will be shown on every request into your application.
|
|
74
|
-
*
|
|
75
|
-
* @default false
|
|
76
|
-
*/
|
|
77
|
-
maintenanceMode: boolean;
|
|
78
|
-
/**
|
|
79
|
-
* **Encryption Key**
|
|
80
|
-
*
|
|
81
|
-
* This key is used by the Stacks encrypter service and should be set to
|
|
82
|
-
* a random, 32 character string, otherwise these encrypted strings will
|
|
83
|
-
* not be safe. Please do this before deploying an application!
|
|
84
|
-
*/
|
|
85
|
-
key: string;
|
|
86
|
-
/**
|
|
87
|
-
* **Application Timezone**
|
|
88
|
-
*
|
|
89
|
-
* Here you may specify the default timezone for your application, which
|
|
90
|
-
* will be used by Stacks and date-time functions. We have gone ahead
|
|
91
|
-
* and set this to a sensible default for you out of the box.
|
|
92
|
-
*
|
|
93
|
-
* @default string "UTC"
|
|
94
|
-
*/
|
|
95
|
-
timezone: string;
|
|
96
|
-
/**
|
|
97
|
-
* **Application Locale Configuration**
|
|
98
|
-
*
|
|
99
|
-
* The application locale determines the default locale that will be used
|
|
100
|
-
* by the translation service provider. You are free to set this value
|
|
101
|
-
* to any of the locales which will be supported by the application.
|
|
102
|
-
*
|
|
103
|
-
* @default string "en"
|
|
104
|
-
* @example
|
|
105
|
-
* de // ./lang/de.yml needs to be present for this
|
|
106
|
-
*/
|
|
107
|
-
locale: string;
|
|
108
|
-
/**
|
|
109
|
-
* **Application Fallback Locale**
|
|
110
|
-
*
|
|
111
|
-
* The fallback locale determines the locale to use when the current one
|
|
112
|
-
* is not available. You may change the value to correspond to any of
|
|
113
|
-
* the language folders that are provided through your application.
|
|
114
|
-
*
|
|
115
|
-
* @default string "en"
|
|
116
|
-
*/
|
|
117
|
-
fallbackLocale: 'en';
|
|
118
|
-
/**
|
|
119
|
-
* **Cipher**
|
|
120
|
-
*
|
|
121
|
-
* Description WIP.
|
|
122
|
-
*
|
|
123
|
-
* @default string "aes-256-cbc"
|
|
124
|
-
*/
|
|
125
|
-
cipher: string;
|
|
126
|
-
/**
|
|
127
|
-
* **Documentation Mode**
|
|
128
|
-
*
|
|
129
|
-
* $appUrl becomes your Documentation URL.
|
|
130
|
-
*
|
|
131
|
-
* @default false
|
|
132
|
-
*/
|
|
133
|
-
docMode: boolean;
|
|
134
|
-
}
|
|
135
|
-
export type AppConfig = Partial<AppOptions>;
|
package/dist/auto-imports.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export type { Options as AutoImportsOptions } from 'unplugin-auto-import/types';
|
package/dist/binary.d.ts
DELETED
package/dist/build.d.ts
DELETED