@stacksjs/types 0.59.11 → 0.61.1

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 (85) hide show
  1. package/package.json +22 -25
  2. package/src/ai.ts +2 -1
  3. package/src/api.ts +12 -0
  4. package/src/chat.ts +1 -1
  5. package/src/cli.ts +76 -27
  6. package/src/cloud.ts +250 -27
  7. package/src/database.ts +18 -8
  8. package/src/dns.ts +286 -2
  9. package/src/email.ts +1 -3
  10. package/src/errors.ts +93 -0
  11. package/src/git.ts +1 -1
  12. package/src/hashing.ts +9 -9
  13. package/src/helpers.ts +2 -5
  14. package/src/index.ts +1 -0
  15. package/src/library.ts +765 -5
  16. package/src/model-names.ts +1 -0
  17. package/src/model.ts +92 -33
  18. package/src/notifications.ts +11 -1
  19. package/src/ports.ts +1 -0
  20. package/src/search-engine.ts +38 -13
  21. package/src/security.ts +1 -1
  22. package/src/services.ts +6 -6
  23. package/src/stacks.ts +11 -0
  24. package/src/tables.ts +1 -1
  25. package/src/ui.ts +1 -1
  26. package/src/utils.ts +6 -7
  27. package/dist/ai.d.ts +0 -15
  28. package/dist/analytics.d.ts +0 -19
  29. package/dist/api.d.ts +0 -59
  30. package/dist/app.d.ts +0 -135
  31. package/dist/auto-imports.d.ts +0 -1
  32. package/dist/binary.d.ts +0 -11
  33. package/dist/build.d.ts +0 -2
  34. package/dist/cache.d.ts +0 -88
  35. package/dist/cdn.d.ts +0 -16
  36. package/dist/chat.d.ts +0 -4
  37. package/dist/cli.d.ts +0 -278
  38. package/dist/cloud.d.ts +0 -69
  39. package/dist/components.d.ts +0 -60
  40. package/dist/configure.d.ts +0 -12
  41. package/dist/cron-jobs.d.ts +0 -43
  42. package/dist/database.d.ts +0 -37
  43. package/dist/dependencies.d.ts +0 -62
  44. package/dist/deploy.d.ts +0 -12
  45. package/dist/dns.d.ts +0 -175
  46. package/dist/docs.d.ts +0 -22
  47. package/dist/email.d.ts +0 -14
  48. package/dist/env.d.ts +0 -1
  49. package/dist/errors.d.ts +0 -1
  50. package/dist/events.d.ts +0 -30
  51. package/dist/exit-code.d.ts +0 -10
  52. package/dist/file-systems.d.ts +0 -60
  53. package/dist/git.d.ts +0 -129
  54. package/dist/hashing.d.ts +0 -109
  55. package/dist/helpers.d.ts +0 -1
  56. package/dist/i18n.d.ts +0 -19
  57. package/dist/index.d.ts +0 -58
  58. package/dist/inspect.d.ts +0 -9
  59. package/dist/library.d.ts +0 -134
  60. package/dist/logger.d.ts +0 -49
  61. package/dist/manifest.d.ts +0 -9
  62. package/dist/model.d.ts +0 -70
  63. package/dist/money.d.ts +0 -2
  64. package/dist/notifications.d.ts +0 -117
  65. package/dist/pages.d.ts +0 -10
  66. package/dist/payments.d.ts +0 -60
  67. package/dist/ports.d.ts +0 -19
  68. package/dist/promise.d.ts +0 -1
  69. package/dist/push.d.ts +0 -35
  70. package/dist/pwa.d.ts +0 -7
  71. package/dist/queue.d.ts +0 -36
  72. package/dist/reactivity.d.ts +0 -1
  73. package/dist/router.d.ts +0 -78
  74. package/dist/scheduler.d.ts +0 -1
  75. package/dist/search-engine.d.ts +0 -118
  76. package/dist/security.d.ts +0 -18
  77. package/dist/services.d.ts +0 -33
  78. package/dist/sms.d.ts +0 -1
  79. package/dist/ssg.d.ts +0 -2
  80. package/dist/stacks.d.ts +0 -196
  81. package/dist/storage.d.ts +0 -12
  82. package/dist/tables.d.ts +0 -52
  83. package/dist/team.d.ts +0 -8
  84. package/dist/ui.d.ts +0 -165
  85. 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, SearchEngineSettings } from '.'
3
+ import type { DeepPartial, Nullable, SearchOptions } from '.'
3
4
 
4
- export interface AuthOptions {}
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
- interface Base {}
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 | SearchEngineSettings // defaults to false
41
- searchable?: boolean | SearchEngineSettings // useSearch alias
57
+ useSearch?: boolean | SearchOptions // defaults to false
58
+ searchable?: boolean | SearchOptions // useSearch alias
59
+ useApi?: boolean | ApiOptions
42
60
  }
43
61
 
44
- fields: Fields
62
+ attributes: Attributes
45
63
 
46
64
  // relationships
47
- hasOne: string // hasOne: 'Post'
48
- hasMany: {
49
- model: string // should be typed as ModelName
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
- belongsTo: string // belongsTo: 'User'
53
- belongsToMany: object
54
- hasThrough: {
55
- model: string // should be typed as ModelName
56
- through: string
57
- using: string
99
+ throughForeignKey?: string
100
+ relationName?: string
101
+ }[]
102
+
103
+ get: {
104
+ [key: string]: (value: any) => any
58
105
  }
59
106
 
60
- attributes: {
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 Fields {
69
- [key: string]: {
70
- default?: string | number | boolean | Date
71
- unique?: boolean
72
- required?: boolean
73
- factory?: () => any
74
- validator?: {
75
- rule: VineString | VineNumber | VineBoolean | Date | Nullable<any>
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
+ }
@@ -2,7 +2,17 @@ export interface NotificationOptions {
2
2
  default: 'email' | 'sms' | 'chat' | string
3
3
 
4
4
  email: {
5
- default: 'emailjs' | 'mailgun' | 'mailjet' | 'mandrill' | 'netcore' | 'nodemailer' | 'postmark' | 'sendgrid' | 'ses' | string
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
@@ -16,4 +16,5 @@ export interface Ports {
16
16
  inspect: number
17
17
  api: number // the bun server
18
18
  systemTray: number
19
+ database: number // i.e. DynamoDB local
19
20
  }
@@ -1,4 +1,15 @@
1
- import type { EnqueuedTask, Hits, Index, IndexOptions, IndexesResults, MeiliSearch, DocumentOptions as RecordOptions, Settings as SearchEngineSettings, SearchParams, SearchResponse } from 'meilisearch'
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 'meilisearch'
33
+ * @default string 'opensearch'
23
34
  * @see https://stacksjs.org/docs/search-engine
24
35
  */
25
- driver: 'meilisearch' | 'algolia' | 'opensearch'
36
+ driver: 'opensearch'
37
+ // driver: 'meilisearch' | 'algolia' | 'typesense' | 'opensearch' wip
26
38
 
27
- meilisearch?: {
28
- host: string
29
- apiKey: string
30
- }
39
+ // meilisearch?: {
40
+ // host: string
41
+ // apiKey: string
42
+ // }
31
43
 
32
- openSearch?: {
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: SearchEngineSettings) => MaybePromise<EnqueuedTask>
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 MeiliSearchOptions {
132
- apiKey: string
133
- host: string
143
+ export interface SearchOptions {
144
+ searchable: string[]
145
+ sortable: string[]
146
+ filterable: string[]
147
+ options?: SearchEngineOptions
134
148
  }
135
149
 
136
- export type { EnqueuedTask, Hits, Index, IndexOptions, IndexesResults, MeiliSearch, RecordOptions, SearchEngineSettings, SearchParams, SearchResponse }
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
@@ -1,5 +1,5 @@
1
- import type { DeepPartial } from './utils'
2
1
  import type { CountryCode } from './cloud'
2
+ import type { DeepPartial } from './utils'
3
3
 
4
4
  export interface FirewallOptions {
5
5
  enabled: boolean // default: true
package/src/services.ts CHANGED
@@ -14,20 +14,20 @@ export interface ServicesOptions {
14
14
  apiKey: string
15
15
  }
16
16
 
17
- stripe?: {
17
+ lemonSqueezy?: {
18
18
  appId: string
19
19
  apiKey: string
20
20
  }
21
21
 
22
- planetscale?: {
22
+ stripe?: {
23
23
  appId: string
24
24
  apiKey: string
25
25
  }
26
26
 
27
- supabase?: {
28
- appId: string
29
- apiKey: string
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
@@ -1,5 +1,5 @@
1
- import type { UserShortcuts } from 'unocss'
2
1
  import type { UserConfig } from '@unocss/core'
2
+ import type { UserShortcuts } from 'unocss'
3
3
 
4
4
  export type Font = 'inter' | 'mona' | 'hubot'
5
5
  export type Icon = 'heroicons'
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 ((k: infer I) => void) ? I : never
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 {};
@@ -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>;
@@ -1 +0,0 @@
1
- export type { Options as AutoImportsOptions } from 'unplugin-auto-import/types';
package/dist/binary.d.ts DELETED
@@ -1,11 +0,0 @@
1
- /**
2
- * The Binary/CLI Options used in `./config/cli.ts`.
3
- */
4
- export interface BinaryOptions {
5
- name: string;
6
- command: string;
7
- description: string;
8
- source: string;
9
- deploy: boolean;
10
- }
11
- export type BinaryConfig = Partial<BinaryOptions>;
package/dist/build.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export type { UserConfig as ViteConfig } from 'vite';
2
- export type { ViteSSGContext } from 'vite-ssg';