Merge commit '3246dc4c91656dec3c87267ae074436267ad77ac' into feat/v2-stack-final-modernization
# Conflicts: # apps/docs/docs/widgets/downloads/index.mdx # apps/docs/docs/widgets/media-server/index.mdx
This commit is contained in:
12 files changed
+494
-1295
No files matched your search
@@ -34,8 +34,8 @@ Using the `PUID` and `PGID` will require you to set the correct permissions on t
|
||||
| `ENABLE_DNS_CACHING` | Enables dns caching. Enabled by default, but if you experience issues with IPv6 or static IPs, see [#4006](https://github.com/homarr-labs/homarr/issues/4006) or disable this flag | `true` or `false` | `true` |
|
||||
| `HOMARR_DISABLE_IPV6` | Disables the IPv6 listener of the internal nginx proxy, even when the host supports IPv6. IPv6 is normally disabled automatically when the host has no IPv6 configured. See [#4596](https://github.com/homarr-labs/homarr/issues/4596) | `true` or `false` | `false` |
|
||||
| `HOMARR_WEBSITE_URL` | Main Homarr documentation/site base used by runtime links. Must be an absolute HTTP(S) URL. | HTTP(S) URL | `https://homarr.dev` |
|
||||
| `WORKSHOP_API_URL` | PocketBase API used by Homarr and standalone documentation. | HTTP(S) URL | `HOMARR_WEBSITE_URL` |
|
||||
| `WORKSHOP_WEB_URL` | Public Workshop page opened from Homarr. | HTTP(S) URL | `HOMARR_WEBSITE_URL/workshop` |
|
||||
| `WORKSHOP_API_URL` | PocketBase API used by Homarr and standalone documentation. | HTTP(S) URL | `HOMARR_WEBSITE_URL` |
|
||||
| `WORKSHOP_WEB_URL` | Public Workshop page opened from Homarr. | HTTP(S) URL | `HOMARR_WEBSITE_URL/workshop` |
|
||||
|
||||
## Authentication
|
||||
|
||||
|
||||
@@ -264,7 +264,8 @@ httproute:
|
||||
backendRefs:
|
||||
- name: homarr
|
||||
port: 7575
|
||||
````
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
#### Notes:
|
||||
@@ -379,114 +380,114 @@ All available values are listed on the [artifacthub](https://artifacthub.io/pack
|
||||
|
||||
## Values
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| additionalObjects | list | `[]` | Additional resources to deploy. These objects are templated. |
|
||||
| affinity | object | `{}` | Node affinity for pod scheduling |
|
||||
| autoscaling.enabled | bool | `false` | Enable autoscaling |
|
||||
| autoscaling.maxReplicas | int | `100` | Maximum replicas |
|
||||
| autoscaling.minReplicas | int | `1` | Minimum replicas |
|
||||
| autoscaling.targetCPUUtilizationPercentage | int | `80` | Target CPU utilization for autoscaling |
|
||||
| containerPorts | object | `{"http":{"port":7575,"protocol":"TCP"}}` | containerPorts defines the ports to open on the container. It is a map where each entry specifies: - `port` (int) (required): The port number to expose inside the container. - `protocol` (string) (required): The network protocol (TCP or UDP) used for the port. - `disabled` (bool) : Optional flag to disable this port (defaults to false). Can be overridden via Helm values. By default, this configuration exposes TCP port 7575 with the name `http`. |
|
||||
| database.migrationEnabled | bool | `true` | Database migration configuration. DB_MIGRATIONS_DISABLED Set to `true` to disable database migrations. Migrations are enabled by default (`false`). |
|
||||
| database.type | string | `"sqlite"` | Database type: sqlite, mysql or postgresql |
|
||||
| env.AUTH_COOKIE_PREFIX | string | `"homarr"` | Prefix used for all authentication cookies. Change if you run another Auth.js/NextAuth app on the same hostname to avoid cookie name collisions. Only letters, numbers, hyphens and underscores. |
|
||||
| env.AUTH_LDAP_BASE | string | `nil` | Base dn of your LDAP server |
|
||||
| env.AUTH_LDAP_BIND_DN | string | `nil` | User used for finding users and groups |
|
||||
| env.AUTH_LDAP_GROUP_CLASS | string | `"groupOfUniqueNames"` | Class used for querying groups |
|
||||
| env.AUTH_LDAP_GROUP_FILTER_EXTRA_ARG | string | `nil` | Extra arguments for user's groups search filter (& based) |
|
||||
| env.AUTH_LDAP_GROUP_MEMBER_ATTRIBUTE | string | `"member"` | Attribute used for querying group member |
|
||||
| env.AUTH_LDAP_GROUP_MEMBER_USER_ATTRIBUTE | string | `"dn"` | User attribute used for comparing with group member |
|
||||
| env.AUTH_LDAP_SEARCH_SCOPE | string | `"base"` | LDAP search scope between base, one or sub |
|
||||
| env.AUTH_LDAP_URI | string | `nil` | URI of your LDAP server |
|
||||
| env.AUTH_LDAP_USERNAME_ATTRIBUTE | string | `"uid"` | Attribute used for username |
|
||||
| env.AUTH_LDAP_USERNAME_FILTER_EXTRA_ARG | string | `nil` | Extra arguments for user search filter (& based) |
|
||||
| env.AUTH_LDAP_USER_MAIL_ATTRIBUTE | string | `"mail"` | Attribute used for mail field |
|
||||
| env.AUTH_LOGOUT_REDIRECT_URL | string | `nil` | URL to redirect to after clicking logging out. |
|
||||
| env.AUTH_OIDC_AUTO_LOGIN | string | `"false"` | Automatically redirect to OIDC login |
|
||||
| env.AUTH_OIDC_CLIENT_NAME | string | `"OIDC"` | Display name of provider (in login screen) |
|
||||
| env.AUTH_OIDC_GROUPS_ATTRIBUTE | string | `"groups"` | Attribute used for groups (roles) claim |
|
||||
| env.AUTH_OIDC_ISSUER | string | `nil` | Issuer URI of OIDC provider without trailing slash (/) |
|
||||
| env.AUTH_OIDC_NAME_ATTRIBUTE_OVERWRITE | string | `nil` | Overwrite name attribute. By default, it will use preferred_username if it does not contain a @ and otherwise name. |
|
||||
| env.AUTH_OIDC_SCOPE_OVERWRITE | string | `"openid email profile groups"` | Override the OIDC scopes |
|
||||
| env.AUTH_PROVIDERS | string | `"credentials"` | Enabled authentication methods. Multiple providers can be enabled with by separating them with , (ex. AUTH_PROVIDERS=credentials,oidc, it is highly recommended to just enable one provider). |
|
||||
| env.AUTH_SESSION_EXPIRY_TIME | string | `"30d"` | Time for the session to time out. Can be set as pure number, which will automatically be used in seconds, or followed by s, m, h or d for seconds, minutes, hours or days. (ex: "30m") |
|
||||
| env.ENABLE_DNS_CACHING | string | `"false"` | Enables dns caching. This is not yet working for all users. See #4006 |
|
||||
| env.LOG_LEVEL | string | `"info"` | Log level to use. Possible values: debug/info/warn/error |
|
||||
| env.NO_EXTERNAL_CONNECTION | string | `"false"` | Disables some requests that need internet connection |
|
||||
| env.TZ | string | `"Europe/Paris"` | Your local time zone |
|
||||
| envSecrets.authLdapCredentials.existingSecret | string | `"auth-ldap-secret"` | Name of existing secret containing LDAP credentials |
|
||||
| envSecrets.authLdapCredentials.ldapBindingPassword | string | `"bind-password"` | Password for bind user secret key |
|
||||
| envSecrets.authOidcCredentials.existingSecret | string | `"auth-oidc-secret"` | Name of existing secret containing OIDC credentials |
|
||||
| envSecrets.authOidcCredentials.oidcClientId | string | `"oidc-client-id"` | ID of OIDC client (application) secret key |
|
||||
| envSecrets.authOidcCredentials.oidcClientSecret | string | `"oidc-client-secret"` | Secret of OIDC client (application) secret key |
|
||||
| envSecrets.dbCredentials.dbUrlKey | string | `"db-url"` | Secret key for DB_URL Example for external database: `mysql://username:password@host:port/homarrdb` or `postgresql://username:password@host:port/homarrdb` |
|
||||
| envSecrets.dbCredentials.existingSecret | string | `"db-secret"` | Name of existing secret containing DB credentials |
|
||||
| envSecrets.dbEncryption.existingSecret | string | `"db-encryption"` | Name of existing secret containing DB encryption |
|
||||
| envSecrets.dbEncryption.key | string | `"db-encryption-key"` | Secret key for SECRET_ENCRYPTION_KEY can be generated with `openssl rand -hex 32` |
|
||||
| fullnameOverride | string | `""` | Overrides chart's fullname |
|
||||
| hostAliases | list | `[]` | Add static entries to /etc/hosts in the Pod. This is useful in the following cases: - You are running in a dual-stack cluster (IPv4 + IPv6) and want to force usage of IPv4 for specific hostnames - Your application is having DNS resolution issues or IPv6 preference issues - You need to override or simulate DNS entries without changing global DNS - You are running in an air-gapped or isolated environment without external DNS Example: hostAliases: - ip: "192.168.1.10" hostnames: - "example.com" - "example.internal" |
|
||||
| httproute | object | `{"enabled":false,"hostnames":["chart-example.local"],"parentRefs":[{"name":"my-gateway","namespace":"default"}],"rules":[{"backendRefs":[{"name":"homarr","port":7575}],"filters":[],"matches":[{"path":{"type":"PathPrefix","value":"/"}}]}]}` | Gateway API HTTPRoute configuration |
|
||||
| httproute.enabled | bool | `false` | Enable HTTPRoute |
|
||||
| httproute.hostnames | list | `["chart-example.local"]` | Hostnames this route matches (similar to ingress.hosts.host) |
|
||||
| httproute.parentRefs | list | `[{"name":"my-gateway","namespace":"default"}]` | References to the parent Gateway(s) this route attaches to. Each item must include at least a `name`, and optionally a `namespace`. |
|
||||
| httproute.rules | list | `[{"backendRefs":[{"name":"homarr","port":7575}],"filters":[],"matches":[{"path":{"type":"PathPrefix","value":"/"}}]}]` | List of routing rules. Each rule can include: - matches: path/header/query matching - filters: optional transformations (redirects, header modifications, etc.) - backendRefs: one or more Kubernetes Services to forward traffic to |
|
||||
| httproute.rules[0].filters | list | `[]` | Optional filters for this rule (default: empty) |
|
||||
| httproute.rules[0].matches[0].path.type | string | `"PathPrefix"` | Path match type. One of: Exact, PathPrefix, RegularExpression |
|
||||
| httproute.rules[0].matches[0].path.value | string | `"/"` | Path value to match |
|
||||
| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
|
||||
| image.repository | string | `"ghcr.io/homarr-labs/homarr"` | Image repository |
|
||||
| image.tag | string | `"v1.74.0"` | Overrides the image tag whose default is the chart appVersion |
|
||||
| imagePullSecrets | list | `[]` | Secrets for Docker registry |
|
||||
| ingress.annotations | object | `{}` | Ingress annotations |
|
||||
| ingress.enabled | bool | `false` | Enable ingress |
|
||||
| ingress.hosts | list | `[{"host":"chart-example.local","paths":[{"path":"/"}]}]` | Ingress hosts configuration |
|
||||
| ingress.ingressClassName | string | `""` | Ingress class name |
|
||||
| ingress.tls | list | `[]` | Ingress TLS configuration |
|
||||
| livenessProbe.failureThreshold | int | `3` | Failure threshold for liveness probe - number of consecutive failures before pod is restarted |
|
||||
| livenessProbe.httpGet.path | string | `"/api/health/live"` | This is the liveness check endpoint used by Kubernetes to determine if the application is still running. |
|
||||
| livenessProbe.httpGet.port | int | `7575` | The port on which the liveness check will be performed. This must be the same as the container port exposed by the application. |
|
||||
| livenessProbe.initialDelaySeconds | int | `10` | Initial delay in seconds before the liveness probe starts |
|
||||
| livenessProbe.periodSeconds | int | `10` | Period in seconds between liveness probe checks |
|
||||
| livenessProbe.timeoutSeconds | int | `1` | Timeout in seconds for each liveness probe check |
|
||||
| nameOverride | string | `""` | Overrides chart's name |
|
||||
| nodeSelector | object | `{}` | Node selectors for pod scheduling |
|
||||
| persistence.homarrDatabase.accessMode | string | `"ReadWriteOnce"` | homarr-database access mode |
|
||||
| persistence.homarrDatabase.enabled | bool | `false` | Enable homarr-database persistent storage |
|
||||
| persistence.homarrDatabase.mountPath | string | `"/appdata"` | homarr-database mount path inside the pod |
|
||||
| persistence.homarrDatabase.name | string | `"homarr-database"` | homarr-database persistent storage name |
|
||||
| persistence.homarrDatabase.size | string | `"50Mi"` | homarr-database storage size |
|
||||
| persistence.homarrDatabase.storageClassName | string | `"local-path"` | homarr-database storage class name |
|
||||
| persistence.homarrDatabase.volumeClaimName | string | `""` | homarr-database optional volumeClaimName to target specific PV |
|
||||
| persistence.homarrTrustedCerts.certificates | string | `nil` | homarr-trusted-certificates certificates, each entry will become a new trusted certificate as a dedicated file (works only for "configmap" and "secret" mode) |
|
||||
| persistence.homarrTrustedCerts.enabled | bool | `false` | Enable trusted certificates persistence |
|
||||
| persistence.homarrTrustedCerts.existingSecretKeys | string | `nil` | List of keys (filenames) to mount from the existing secret (used only when type is "existingSecret") |
|
||||
| persistence.homarrTrustedCerts.existingSecretName | string | `""` | Name of the existing Kubernetes Secret to mount (required if type is "existingSecret") |
|
||||
| persistence.homarrTrustedCerts.mountPath | string | `"/appdata/trusted-certificates"` | homarr-trusted-certificates mount path inside the pod |
|
||||
| persistence.homarrTrustedCerts.type | string | `"configmap"` | Persistence mode can be : configmap (declarative), secret (declarative) or existingSecret (mount an existing Kubernetes Secret by name and specify which keys to mount as files) |
|
||||
| podAnnotations | object | `{}` | Pod annotations |
|
||||
| podLabels | object | `{}` | Pod labels |
|
||||
| podSecurityContext | object | `{}` | Pod security context |
|
||||
| rbac | object | `{"enabled":false}` | Enable RBAC resources for Kubernetes integration Creates Role, ClusterRole, and associated bindings for Homarr's Kubernetes features |
|
||||
| rbac.enabled | bool | `false` | Enable to create RBAC resources and activate Kubernetes integration |
|
||||
| readinessProbe.failureThreshold | int | `3` | Failure threshold for readiness probe - number of consecutive failures before pod is considered unready |
|
||||
| readinessProbe.httpGet.path | string | `"/api/health/ready"` | This is the readiness check endpoint used by Kubernetes to determine if the application is ready to handle traffic. |
|
||||
| readinessProbe.httpGet.port | int | `7575` | The port on which the readiness check will be performed. This must match the container's exposed port. |
|
||||
| readinessProbe.initialDelaySeconds | int | `10` | Initial delay in seconds before the readiness probe starts. increase this value if the pod is slow to fully start. |
|
||||
| readinessProbe.periodSeconds | int | `10` | Period in seconds between readiness probe checks |
|
||||
| readinessProbe.timeoutSeconds | int | `1` | Timeout in seconds for each readiness probe check |
|
||||
| replicaCount | int | `1` | Number of replicas |
|
||||
| resources | object | `{}` | Resource configuration |
|
||||
| securityContext | object | `{}` | Security context |
|
||||
| service.enabled | bool | `true` | Enable service |
|
||||
| service.ipFamilies | list | `[]` | List of IP families to use for the service. Examples: - ["IPv4"] - ["IPv6"] - ["IPv4", "IPv6"] for dual-stack Leave empty to use cluster default behavior |
|
||||
| service.ipFamilyPolicy | string | `"SingleStack"` | Defines how the service assigns IP families (IPv4/IPv6) Possible values: - SingleStack (default): Only one IP family, usually IPv4 - PreferDualStack: Use dual-stack if the cluster supports it, fallback to single - RequireDualStack: Fail if dual-stack cannot be assigned |
|
||||
| service.ports.app.port | int | `7575` | Service port |
|
||||
| service.ports.app.protocol | string | `"TCP"` | Service protocol |
|
||||
| service.ports.app.targetPort | string | `"http"` | Service target port |
|
||||
| service.type | string | `"ClusterIP"` | Service type |
|
||||
| strategyType | string | `"RollingUpdate"` | `strategyType` specifies the strategy used to replace old Pods by new ones. `strategyType` can be `"Recreate"` or `"RollingUpdate"`. `"RollingUpdate"` is the default value and updates Pods in a rolling update fashion. `"Recreate"` will kill all existing Pods before new ones are created. The `"Recreate"` strategy is necessary when persistent volume's `accessMode` is set to `"ReadWriteOnce"` when using `helm upgrade`, as pod volume attachments to an existing PersistentVolumeClaim need to be cleared before a new pod can attach to it. |
|
||||
| tolerations | list | `[]` | Node tolerations for pod scheduling |
|
||||
| Key | Type | Default | Description |
|
||||
| -------------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| additionalObjects | list | `[]` | Additional resources to deploy. These objects are templated. |
|
||||
| affinity | object | `{}` | Node affinity for pod scheduling |
|
||||
| autoscaling.enabled | bool | `false` | Enable autoscaling |
|
||||
| autoscaling.maxReplicas | int | `100` | Maximum replicas |
|
||||
| autoscaling.minReplicas | int | `1` | Minimum replicas |
|
||||
| autoscaling.targetCPUUtilizationPercentage | int | `80` | Target CPU utilization for autoscaling |
|
||||
| containerPorts | object | `{"http":{"port":7575,"protocol":"TCP"}}` | containerPorts defines the ports to open on the container. It is a map where each entry specifies: - `port` (int) (required): The port number to expose inside the container. - `protocol` (string) (required): The network protocol (TCP or UDP) used for the port. - `disabled` (bool) : Optional flag to disable this port (defaults to false). Can be overridden via Helm values. By default, this configuration exposes TCP port 7575 with the name `http`. |
|
||||
| database.migrationEnabled | bool | `true` | Database migration configuration. DB_MIGRATIONS_DISABLED Set to `true` to disable database migrations. Migrations are enabled by default (`false`). |
|
||||
| database.type | string | `"sqlite"` | Database type: sqlite, mysql or postgresql |
|
||||
| env.AUTH_COOKIE_PREFIX | string | `"homarr"` | Prefix used for all authentication cookies. Change if you run another Auth.js/NextAuth app on the same hostname to avoid cookie name collisions. Only letters, numbers, hyphens and underscores. |
|
||||
| env.AUTH_LDAP_BASE | string | `nil` | Base dn of your LDAP server |
|
||||
| env.AUTH_LDAP_BIND_DN | string | `nil` | User used for finding users and groups |
|
||||
| env.AUTH_LDAP_GROUP_CLASS | string | `"groupOfUniqueNames"` | Class used for querying groups |
|
||||
| env.AUTH_LDAP_GROUP_FILTER_EXTRA_ARG | string | `nil` | Extra arguments for user's groups search filter (& based) |
|
||||
| env.AUTH_LDAP_GROUP_MEMBER_ATTRIBUTE | string | `"member"` | Attribute used for querying group member |
|
||||
| env.AUTH_LDAP_GROUP_MEMBER_USER_ATTRIBUTE | string | `"dn"` | User attribute used for comparing with group member |
|
||||
| env.AUTH_LDAP_SEARCH_SCOPE | string | `"base"` | LDAP search scope between base, one or sub |
|
||||
| env.AUTH_LDAP_URI | string | `nil` | URI of your LDAP server |
|
||||
| env.AUTH_LDAP_USERNAME_ATTRIBUTE | string | `"uid"` | Attribute used for username |
|
||||
| env.AUTH_LDAP_USERNAME_FILTER_EXTRA_ARG | string | `nil` | Extra arguments for user search filter (& based) |
|
||||
| env.AUTH_LDAP_USER_MAIL_ATTRIBUTE | string | `"mail"` | Attribute used for mail field |
|
||||
| env.AUTH_LOGOUT_REDIRECT_URL | string | `nil` | URL to redirect to after clicking logging out. |
|
||||
| env.AUTH_OIDC_AUTO_LOGIN | string | `"false"` | Automatically redirect to OIDC login |
|
||||
| env.AUTH_OIDC_CLIENT_NAME | string | `"OIDC"` | Display name of provider (in login screen) |
|
||||
| env.AUTH_OIDC_GROUPS_ATTRIBUTE | string | `"groups"` | Attribute used for groups (roles) claim |
|
||||
| env.AUTH_OIDC_ISSUER | string | `nil` | Issuer URI of OIDC provider without trailing slash (/) |
|
||||
| env.AUTH_OIDC_NAME_ATTRIBUTE_OVERWRITE | string | `nil` | Overwrite name attribute. By default, it will use preferred_username if it does not contain a @ and otherwise name. |
|
||||
| env.AUTH_OIDC_SCOPE_OVERWRITE | string | `"openid email profile groups"` | Override the OIDC scopes |
|
||||
| env.AUTH_PROVIDERS | string | `"credentials"` | Enabled authentication methods. Multiple providers can be enabled with by separating them with , (ex. AUTH_PROVIDERS=credentials,oidc, it is highly recommended to just enable one provider). |
|
||||
| env.AUTH_SESSION_EXPIRY_TIME | string | `"30d"` | Time for the session to time out. Can be set as pure number, which will automatically be used in seconds, or followed by s, m, h or d for seconds, minutes, hours or days. (ex: "30m") |
|
||||
| env.ENABLE_DNS_CACHING | string | `"false"` | Enables dns caching. This is not yet working for all users. See #4006 |
|
||||
| env.LOG_LEVEL | string | `"info"` | Log level to use. Possible values: debug/info/warn/error |
|
||||
| env.NO_EXTERNAL_CONNECTION | string | `"false"` | Disables some requests that need internet connection |
|
||||
| env.TZ | string | `"Europe/Paris"` | Your local time zone |
|
||||
| envSecrets.authLdapCredentials.existingSecret | string | `"auth-ldap-secret"` | Name of existing secret containing LDAP credentials |
|
||||
| envSecrets.authLdapCredentials.ldapBindingPassword | string | `"bind-password"` | Password for bind user secret key |
|
||||
| envSecrets.authOidcCredentials.existingSecret | string | `"auth-oidc-secret"` | Name of existing secret containing OIDC credentials |
|
||||
| envSecrets.authOidcCredentials.oidcClientId | string | `"oidc-client-id"` | ID of OIDC client (application) secret key |
|
||||
| envSecrets.authOidcCredentials.oidcClientSecret | string | `"oidc-client-secret"` | Secret of OIDC client (application) secret key |
|
||||
| envSecrets.dbCredentials.dbUrlKey | string | `"db-url"` | Secret key for DB_URL Example for external database: `mysql://username:password@host:port/homarrdb` or `postgresql://username:password@host:port/homarrdb` |
|
||||
| envSecrets.dbCredentials.existingSecret | string | `"db-secret"` | Name of existing secret containing DB credentials |
|
||||
| envSecrets.dbEncryption.existingSecret | string | `"db-encryption"` | Name of existing secret containing DB encryption |
|
||||
| envSecrets.dbEncryption.key | string | `"db-encryption-key"` | Secret key for SECRET_ENCRYPTION_KEY can be generated with `openssl rand -hex 32` |
|
||||
| fullnameOverride | string | `""` | Overrides chart's fullname |
|
||||
| hostAliases | list | `[]` | Add static entries to /etc/hosts in the Pod. This is useful in the following cases: - You are running in a dual-stack cluster (IPv4 + IPv6) and want to force usage of IPv4 for specific hostnames - Your application is having DNS resolution issues or IPv6 preference issues - You need to override or simulate DNS entries without changing global DNS - You are running in an air-gapped or isolated environment without external DNS Example: hostAliases: - ip: "192.168.1.10" hostnames: - "example.com" - "example.internal" |
|
||||
| httproute | object | `{"enabled":false,"hostnames":["chart-example.local"],"parentRefs":[{"name":"my-gateway","namespace":"default"}],"rules":[{"backendRefs":[{"name":"homarr","port":7575}],"filters":[],"matches":[{"path":{"type":"PathPrefix","value":"/"}}]}]}` | Gateway API HTTPRoute configuration |
|
||||
| httproute.enabled | bool | `false` | Enable HTTPRoute |
|
||||
| httproute.hostnames | list | `["chart-example.local"]` | Hostnames this route matches (similar to ingress.hosts.host) |
|
||||
| httproute.parentRefs | list | `[{"name":"my-gateway","namespace":"default"}]` | References to the parent Gateway(s) this route attaches to. Each item must include at least a `name`, and optionally a `namespace`. |
|
||||
| httproute.rules | list | `[{"backendRefs":[{"name":"homarr","port":7575}],"filters":[],"matches":[{"path":{"type":"PathPrefix","value":"/"}}]}]` | List of routing rules. Each rule can include: - matches: path/header/query matching - filters: optional transformations (redirects, header modifications, etc.) - backendRefs: one or more Kubernetes Services to forward traffic to |
|
||||
| httproute.rules[0].filters | list | `[]` | Optional filters for this rule (default: empty) |
|
||||
| httproute.rules[0].matches[0].path.type | string | `"PathPrefix"` | Path match type. One of: Exact, PathPrefix, RegularExpression |
|
||||
| httproute.rules[0].matches[0].path.value | string | `"/"` | Path value to match |
|
||||
| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
|
||||
| image.repository | string | `"ghcr.io/homarr-labs/homarr"` | Image repository |
|
||||
| image.tag | string | `"v1.74.0"` | Overrides the image tag whose default is the chart appVersion |
|
||||
| imagePullSecrets | list | `[]` | Secrets for Docker registry |
|
||||
| ingress.annotations | object | `{}` | Ingress annotations |
|
||||
| ingress.enabled | bool | `false` | Enable ingress |
|
||||
| ingress.hosts | list | `[{"host":"chart-example.local","paths":[{"path":"/"}]}]` | Ingress hosts configuration |
|
||||
| ingress.ingressClassName | string | `""` | Ingress class name |
|
||||
| ingress.tls | list | `[]` | Ingress TLS configuration |
|
||||
| livenessProbe.failureThreshold | int | `3` | Failure threshold for liveness probe - number of consecutive failures before pod is restarted |
|
||||
| livenessProbe.httpGet.path | string | `"/api/health/live"` | This is the liveness check endpoint used by Kubernetes to determine if the application is still running. |
|
||||
| livenessProbe.httpGet.port | int | `7575` | The port on which the liveness check will be performed. This must be the same as the container port exposed by the application. |
|
||||
| livenessProbe.initialDelaySeconds | int | `10` | Initial delay in seconds before the liveness probe starts |
|
||||
| livenessProbe.periodSeconds | int | `10` | Period in seconds between liveness probe checks |
|
||||
| livenessProbe.timeoutSeconds | int | `1` | Timeout in seconds for each liveness probe check |
|
||||
| nameOverride | string | `""` | Overrides chart's name |
|
||||
| nodeSelector | object | `{}` | Node selectors for pod scheduling |
|
||||
| persistence.homarrDatabase.accessMode | string | `"ReadWriteOnce"` | homarr-database access mode |
|
||||
| persistence.homarrDatabase.enabled | bool | `false` | Enable homarr-database persistent storage |
|
||||
| persistence.homarrDatabase.mountPath | string | `"/appdata"` | homarr-database mount path inside the pod |
|
||||
| persistence.homarrDatabase.name | string | `"homarr-database"` | homarr-database persistent storage name |
|
||||
| persistence.homarrDatabase.size | string | `"50Mi"` | homarr-database storage size |
|
||||
| persistence.homarrDatabase.storageClassName | string | `"local-path"` | homarr-database storage class name |
|
||||
| persistence.homarrDatabase.volumeClaimName | string | `""` | homarr-database optional volumeClaimName to target specific PV |
|
||||
| persistence.homarrTrustedCerts.certificates | string | `nil` | homarr-trusted-certificates certificates, each entry will become a new trusted certificate as a dedicated file (works only for "configmap" and "secret" mode) |
|
||||
| persistence.homarrTrustedCerts.enabled | bool | `false` | Enable trusted certificates persistence |
|
||||
| persistence.homarrTrustedCerts.existingSecretKeys | string | `nil` | List of keys (filenames) to mount from the existing secret (used only when type is "existingSecret") |
|
||||
| persistence.homarrTrustedCerts.existingSecretName | string | `""` | Name of the existing Kubernetes Secret to mount (required if type is "existingSecret") |
|
||||
| persistence.homarrTrustedCerts.mountPath | string | `"/appdata/trusted-certificates"` | homarr-trusted-certificates mount path inside the pod |
|
||||
| persistence.homarrTrustedCerts.type | string | `"configmap"` | Persistence mode can be : configmap (declarative), secret (declarative) or existingSecret (mount an existing Kubernetes Secret by name and specify which keys to mount as files) |
|
||||
| podAnnotations | object | `{}` | Pod annotations |
|
||||
| podLabels | object | `{}` | Pod labels |
|
||||
| podSecurityContext | object | `{}` | Pod security context |
|
||||
| rbac | object | `{"enabled":false}` | Enable RBAC resources for Kubernetes integration Creates Role, ClusterRole, and associated bindings for Homarr's Kubernetes features |
|
||||
| rbac.enabled | bool | `false` | Enable to create RBAC resources and activate Kubernetes integration |
|
||||
| readinessProbe.failureThreshold | int | `3` | Failure threshold for readiness probe - number of consecutive failures before pod is considered unready |
|
||||
| readinessProbe.httpGet.path | string | `"/api/health/ready"` | This is the readiness check endpoint used by Kubernetes to determine if the application is ready to handle traffic. |
|
||||
| readinessProbe.httpGet.port | int | `7575` | The port on which the readiness check will be performed. This must match the container's exposed port. |
|
||||
| readinessProbe.initialDelaySeconds | int | `10` | Initial delay in seconds before the readiness probe starts. increase this value if the pod is slow to fully start. |
|
||||
| readinessProbe.periodSeconds | int | `10` | Period in seconds between readiness probe checks |
|
||||
| readinessProbe.timeoutSeconds | int | `1` | Timeout in seconds for each readiness probe check |
|
||||
| replicaCount | int | `1` | Number of replicas |
|
||||
| resources | object | `{}` | Resource configuration |
|
||||
| securityContext | object | `{}` | Security context |
|
||||
| service.enabled | bool | `true` | Enable service |
|
||||
| service.ipFamilies | list | `[]` | List of IP families to use for the service. Examples: - ["IPv4"] - ["IPv6"] - ["IPv4", "IPv6"] for dual-stack Leave empty to use cluster default behavior |
|
||||
| service.ipFamilyPolicy | string | `"SingleStack"` | Defines how the service assigns IP families (IPv4/IPv6) Possible values: - SingleStack (default): Only one IP family, usually IPv4 - PreferDualStack: Use dual-stack if the cluster supports it, fallback to single - RequireDualStack: Fail if dual-stack cannot be assigned |
|
||||
| service.ports.app.port | int | `7575` | Service port |
|
||||
| service.ports.app.protocol | string | `"TCP"` | Service protocol |
|
||||
| service.ports.app.targetPort | string | `"http"` | Service target port |
|
||||
| service.type | string | `"ClusterIP"` | Service type |
|
||||
| strategyType | string | `"RollingUpdate"` | `strategyType` specifies the strategy used to replace old Pods by new ones. `strategyType` can be `"Recreate"` or `"RollingUpdate"`. `"RollingUpdate"` is the default value and updates Pods in a rolling update fashion. `"Recreate"` will kill all existing Pods before new ones are created. The `"Recreate"` strategy is necessary when persistent volume's `accessMode` is set to `"ReadWriteOnce"` when using `helm upgrade`, as pod volume attachments to an existing PersistentVolumeClaim need to be cleared before a new pod can attach to it. |
|
||||
| tolerations | list | `[]` | Node tolerations for pod scheduling |
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -48,6 +48,7 @@ import { immichServerStatsWidget } from "../../widgets/immich-server-stats";
|
||||
<code>asset.statistics</code>,{" "}
|
||||
<code>server.statistics</code>,{" "}
|
||||
<code>server.about</code>.
|
||||
|
||||
</span>
|
||||
|
||||
),
|
||||
|
||||
@@ -4,29 +4,21 @@ description: "Navidrome is a self-hosted music server and streamer compatible wi
|
||||
hide_title: true
|
||||
---
|
||||
|
||||
import { IntegrationHeader } from '@site/src/components/integrations/header';
|
||||
import { IntegrationCapabilites } from '@site/src/components/integrations/widgets';
|
||||
import { AddingIntegration } from '@site/src/components/integrations/adding';
|
||||
import { IntegrationSecrets } from '@site/src/components/integrations/secrets';
|
||||
import { navidromeIntegration } from '.';
|
||||
import { audioStatsWidget } from '@site/docs/widgets/audio-stats';
|
||||
import { mediaServerWidget } from '@site/docs/widgets/media-server';
|
||||
import { IntegrationHeader } from "@site/src/components/integrations/header";
|
||||
import { IntegrationCapabilites } from "@site/src/components/integrations/widgets";
|
||||
import { AddingIntegration } from "@site/src/components/integrations/adding";
|
||||
import { IntegrationSecrets } from "@site/src/components/integrations/secrets";
|
||||
import { navidromeIntegration } from ".";
|
||||
import { audioStatsWidget } from "@site/docs/widgets/audio-stats";
|
||||
import { mediaServerWidget } from "@site/docs/widgets/media-server";
|
||||
|
||||
|
||||
<IntegrationHeader
|
||||
integration={navidromeIntegration}
|
||||
categories={['Media', 'Media server']}
|
||||
/>
|
||||
<IntegrationHeader integration={navidromeIntegration} categories={["Media", "Media server"]} />
|
||||
|
||||
Navidrome provides music library statistics including artist, album, and song counts, as well as now playing audio streams via the Subsonic API.
|
||||
|
||||
### Widgets & Capabilities
|
||||
<IntegrationCapabilites
|
||||
items={[
|
||||
{ widget: audioStatsWidget },
|
||||
{ widget: mediaServerWidget },
|
||||
]}
|
||||
/>
|
||||
|
||||
<IntegrationCapabilites items={[{ widget: audioStatsWidget }, { widget: mediaServerWidget }]} />
|
||||
|
||||
### Adding the integration
|
||||
|
||||
|
||||
@@ -54,7 +54,6 @@ import mediaTable from "./img/table.png";
|
||||
},
|
||||
]}
|
||||
/>
|
||||
|
||||
<WidgetInteractionGuide />
|
||||
|
||||
### Adding the widget
|
||||
|
||||
+2
-4
@@ -310,8 +310,7 @@
|
||||
{
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string",
|
||||
"pattern": "^(?!javascript)[a-zA-Z]*:\\/\\/"
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
@@ -873,8 +872,7 @@
|
||||
{
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string",
|
||||
"pattern": "^(?!javascript)[a-zA-Z]*:\\/\\/"
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "string",
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -325,4 +325,4 @@
|
||||
"breakpoints": true
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -97,12 +97,8 @@
|
||||
"name": "account_user_id_user_id_fk",
|
||||
"tableFrom": "account",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -110,10 +106,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"account_provider_provider_account_id_pk": {
|
||||
"name": "account_provider_provider_account_id_pk",
|
||||
"columns": [
|
||||
"provider",
|
||||
"provider_account_id"
|
||||
]
|
||||
"columns": ["provider", "provider_account_id"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -150,12 +143,8 @@
|
||||
"name": "apiKey_user_id_user_id_fk",
|
||||
"tableFrom": "apiKey",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -244,12 +233,8 @@
|
||||
"name": "boardGroupPermission_board_id_board_id_fk",
|
||||
"tableFrom": "boardGroupPermission",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -257,12 +242,8 @@
|
||||
"name": "boardGroupPermission_group_id_group_id_fk",
|
||||
"tableFrom": "boardGroupPermission",
|
||||
"tableTo": "group",
|
||||
"columnsFrom": [
|
||||
"group_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["group_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -270,11 +251,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"boardGroupPermission_board_id_group_id_permission_pk": {
|
||||
"name": "boardGroupPermission_board_id_group_id_permission_pk",
|
||||
"columns": [
|
||||
"board_id",
|
||||
"group_id",
|
||||
"permission"
|
||||
]
|
||||
"columns": ["board_id", "group_id", "permission"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -311,12 +288,8 @@
|
||||
"name": "boardUserPermission_board_id_board_id_fk",
|
||||
"tableFrom": "boardUserPermission",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -324,12 +297,8 @@
|
||||
"name": "boardUserPermission_user_id_user_id_fk",
|
||||
"tableFrom": "boardUserPermission",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -337,11 +306,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"boardUserPermission_board_id_user_id_permission_pk": {
|
||||
"name": "boardUserPermission_board_id_user_id_permission_pk",
|
||||
"columns": [
|
||||
"board_id",
|
||||
"user_id",
|
||||
"permission"
|
||||
]
|
||||
"columns": ["board_id", "user_id", "permission"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -483,12 +448,8 @@
|
||||
"name": "board_creator_id_user_id_fk",
|
||||
"tableFrom": "board",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"creator_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["creator_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -498,9 +459,7 @@
|
||||
"board_name_unique": {
|
||||
"name": "board_name_unique",
|
||||
"nullsNotDistinct": false,
|
||||
"columns": [
|
||||
"name"
|
||||
]
|
||||
"columns": ["name"]
|
||||
}
|
||||
},
|
||||
"policies": {},
|
||||
@@ -625,12 +584,8 @@
|
||||
"name": "custom_widget_v2_definition_creator_id_user_id_fk",
|
||||
"tableFrom": "custom_widget_v2_definition",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"creator_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["creator_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -682,12 +637,8 @@
|
||||
"name": "custom_widget_v2_secret_definition_id_fk",
|
||||
"tableFrom": "custom_widget_v2_secret",
|
||||
"tableTo": "custom_widget_v2_definition",
|
||||
"columnsFrom": [
|
||||
"definition_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["definition_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -695,11 +646,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"custom_widget_v2_secret_definition_id_source_id_kind_pk": {
|
||||
"name": "custom_widget_v2_secret_definition_id_source_id_kind_pk",
|
||||
"columns": [
|
||||
"definition_id",
|
||||
"source_id",
|
||||
"kind"
|
||||
]
|
||||
"columns": ["definition_id", "source_id", "kind"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -730,12 +677,8 @@
|
||||
"name": "groupMember_group_id_group_id_fk",
|
||||
"tableFrom": "groupMember",
|
||||
"tableTo": "group",
|
||||
"columnsFrom": [
|
||||
"group_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["group_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -743,12 +686,8 @@
|
||||
"name": "groupMember_user_id_user_id_fk",
|
||||
"tableFrom": "groupMember",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -756,10 +695,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"groupMember_group_id_user_id_pk": {
|
||||
"name": "groupMember_group_id_user_id_pk",
|
||||
"columns": [
|
||||
"group_id",
|
||||
"user_id"
|
||||
]
|
||||
"columns": ["group_id", "user_id"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -790,12 +726,8 @@
|
||||
"name": "groupPermission_group_id_group_id_fk",
|
||||
"tableFrom": "groupPermission",
|
||||
"tableTo": "group",
|
||||
"columnsFrom": [
|
||||
"group_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["group_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -853,12 +785,8 @@
|
||||
"name": "group_owner_id_user_id_fk",
|
||||
"tableFrom": "group",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"owner_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["owner_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -866,12 +794,8 @@
|
||||
"name": "group_home_board_id_board_id_fk",
|
||||
"tableFrom": "group",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"home_board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["home_board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -879,12 +803,8 @@
|
||||
"name": "group_mobile_home_board_id_board_id_fk",
|
||||
"tableFrom": "group",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"mobile_home_board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["mobile_home_board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -894,9 +814,7 @@
|
||||
"group_name_unique": {
|
||||
"name": "group_name_unique",
|
||||
"nullsNotDistinct": false,
|
||||
"columns": [
|
||||
"name"
|
||||
]
|
||||
"columns": ["name"]
|
||||
}
|
||||
},
|
||||
"policies": {},
|
||||
@@ -969,12 +887,8 @@
|
||||
"name": "icon_icon_repository_id_iconRepository_id_fk",
|
||||
"tableFrom": "icon",
|
||||
"tableTo": "iconRepository",
|
||||
"columnsFrom": [
|
||||
"icon_repository_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["icon_repository_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1014,12 +928,8 @@
|
||||
"name": "integrationGroupPermissions_integration_id_integration_id_fk",
|
||||
"tableFrom": "integrationGroupPermissions",
|
||||
"tableTo": "integration",
|
||||
"columnsFrom": [
|
||||
"integration_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["integration_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -1027,12 +937,8 @@
|
||||
"name": "integrationGroupPermissions_group_id_group_id_fk",
|
||||
"tableFrom": "integrationGroupPermissions",
|
||||
"tableTo": "group",
|
||||
"columnsFrom": [
|
||||
"group_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["group_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1040,11 +946,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"integration_group_permission__pk": {
|
||||
"name": "integration_group_permission__pk",
|
||||
"columns": [
|
||||
"integration_id",
|
||||
"group_id",
|
||||
"permission"
|
||||
]
|
||||
"columns": ["integration_id", "group_id", "permission"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -1075,12 +977,8 @@
|
||||
"name": "integration_item_item_id_item_id_fk",
|
||||
"tableFrom": "integration_item",
|
||||
"tableTo": "item",
|
||||
"columnsFrom": [
|
||||
"item_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["item_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -1088,12 +986,8 @@
|
||||
"name": "integration_item_integration_id_integration_id_fk",
|
||||
"tableFrom": "integration_item",
|
||||
"tableTo": "integration",
|
||||
"columnsFrom": [
|
||||
"integration_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["integration_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1101,10 +995,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"integration_item_item_id_integration_id_pk": {
|
||||
"name": "integration_item_item_id_integration_id_pk",
|
||||
"columns": [
|
||||
"item_id",
|
||||
"integration_id"
|
||||
]
|
||||
"columns": ["item_id", "integration_id"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -1178,12 +1069,8 @@
|
||||
"name": "integrationSecret_integration_id_integration_id_fk",
|
||||
"tableFrom": "integrationSecret",
|
||||
"tableTo": "integration",
|
||||
"columnsFrom": [
|
||||
"integration_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["integration_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1191,10 +1078,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"integrationSecret_integration_id_kind_pk": {
|
||||
"name": "integrationSecret_integration_id_kind_pk",
|
||||
"columns": [
|
||||
"integration_id",
|
||||
"kind"
|
||||
]
|
||||
"columns": ["integration_id", "kind"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -1231,12 +1115,8 @@
|
||||
"name": "integrationUserPermission_integration_id_integration_id_fk",
|
||||
"tableFrom": "integrationUserPermission",
|
||||
"tableTo": "integration",
|
||||
"columnsFrom": [
|
||||
"integration_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["integration_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -1244,12 +1124,8 @@
|
||||
"name": "integrationUserPermission_user_id_user_id_fk",
|
||||
"tableFrom": "integrationUserPermission",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1257,11 +1133,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"integrationUserPermission_integration_id_user_id_permission_pk": {
|
||||
"name": "integrationUserPermission_integration_id_user_id_permission_pk",
|
||||
"columns": [
|
||||
"integration_id",
|
||||
"user_id",
|
||||
"permission"
|
||||
]
|
||||
"columns": ["integration_id", "user_id", "permission"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -1326,12 +1198,8 @@
|
||||
"name": "integration_app_id_app_id_fk",
|
||||
"tableFrom": "integration",
|
||||
"tableTo": "app",
|
||||
"columnsFrom": [
|
||||
"app_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["app_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1377,12 +1245,8 @@
|
||||
"name": "invite_creator_id_user_id_fk",
|
||||
"tableFrom": "invite",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"creator_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["creator_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1392,9 +1256,7 @@
|
||||
"invite_token_unique": {
|
||||
"name": "invite_token_unique",
|
||||
"nullsNotDistinct": false,
|
||||
"columns": [
|
||||
"token"
|
||||
]
|
||||
"columns": ["token"]
|
||||
}
|
||||
},
|
||||
"policies": {},
|
||||
@@ -1454,12 +1316,8 @@
|
||||
"name": "item_layout_item_id_item_id_fk",
|
||||
"tableFrom": "item_layout",
|
||||
"tableTo": "item",
|
||||
"columnsFrom": [
|
||||
"item_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["item_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -1467,12 +1325,8 @@
|
||||
"name": "item_layout_section_id_section_id_fk",
|
||||
"tableFrom": "item_layout",
|
||||
"tableTo": "section",
|
||||
"columnsFrom": [
|
||||
"section_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["section_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -1480,12 +1334,8 @@
|
||||
"name": "item_layout_layout_id_layout_id_fk",
|
||||
"tableFrom": "item_layout",
|
||||
"tableTo": "layout",
|
||||
"columnsFrom": [
|
||||
"layout_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["layout_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1493,11 +1343,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"item_layout_item_id_section_id_layout_id_pk": {
|
||||
"name": "item_layout_item_id_section_id_layout_id_pk",
|
||||
"columns": [
|
||||
"item_id",
|
||||
"section_id",
|
||||
"layout_id"
|
||||
]
|
||||
"columns": ["item_id", "section_id", "layout_id"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -1548,12 +1394,8 @@
|
||||
"name": "item_board_id_board_id_fk",
|
||||
"tableFrom": "item",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1620,12 +1462,8 @@
|
||||
"name": "layout_board_id_board_id_fk",
|
||||
"tableFrom": "layout",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1744,12 +1582,8 @@
|
||||
"name": "custom_widget_definition_creator_id_user_id_fk",
|
||||
"tableFrom": "custom_widget_definition",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"creator_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["creator_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1795,12 +1629,8 @@
|
||||
"name": "custom_widget_secret_definition_id_custom_widget_definition_id_fk",
|
||||
"tableFrom": "custom_widget_secret",
|
||||
"tableTo": "custom_widget_definition",
|
||||
"columnsFrom": [
|
||||
"definition_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["definition_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1808,10 +1638,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"custom_widget_secret_definition_id_kind_pk": {
|
||||
"name": "custom_widget_secret_definition_id_kind_pk",
|
||||
"columns": [
|
||||
"definition_id",
|
||||
"kind"
|
||||
]
|
||||
"columns": ["definition_id", "kind"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -1873,12 +1700,8 @@
|
||||
"name": "media_creator_id_user_id_fk",
|
||||
"tableFrom": "media",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"creator_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["creator_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1980,12 +1803,8 @@
|
||||
"name": "search_engine_integration_id_integration_id_fk",
|
||||
"tableFrom": "search_engine",
|
||||
"tableTo": "integration",
|
||||
"columnsFrom": [
|
||||
"integration_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["integration_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1995,9 +1814,7 @@
|
||||
"search_engine_short_unique": {
|
||||
"name": "search_engine_short_unique",
|
||||
"nullsNotDistinct": false,
|
||||
"columns": [
|
||||
"short"
|
||||
]
|
||||
"columns": ["short"]
|
||||
}
|
||||
},
|
||||
"policies": {},
|
||||
@@ -2034,12 +1851,8 @@
|
||||
"name": "section_collapse_state_user_id_user_id_fk",
|
||||
"tableFrom": "section_collapse_state",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -2047,12 +1860,8 @@
|
||||
"name": "section_collapse_state_section_id_section_id_fk",
|
||||
"tableFrom": "section_collapse_state",
|
||||
"tableTo": "section",
|
||||
"columnsFrom": [
|
||||
"section_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["section_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2060,10 +1869,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"section_collapse_state_user_id_section_id_pk": {
|
||||
"name": "section_collapse_state_user_id_section_id_pk",
|
||||
"columns": [
|
||||
"user_id",
|
||||
"section_id"
|
||||
]
|
||||
"columns": ["user_id", "section_id"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -2124,12 +1930,8 @@
|
||||
"name": "section_layout_section_id_section_id_fk",
|
||||
"tableFrom": "section_layout",
|
||||
"tableTo": "section",
|
||||
"columnsFrom": [
|
||||
"section_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["section_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -2137,12 +1939,8 @@
|
||||
"name": "section_layout_layout_id_layout_id_fk",
|
||||
"tableFrom": "section_layout",
|
||||
"tableTo": "layout",
|
||||
"columnsFrom": [
|
||||
"layout_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["layout_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -2150,12 +1948,8 @@
|
||||
"name": "section_layout_parent_section_id_section_id_fk",
|
||||
"tableFrom": "section_layout",
|
||||
"tableTo": "section",
|
||||
"columnsFrom": [
|
||||
"parent_section_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["parent_section_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2163,10 +1957,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"section_layout_section_id_layout_id_pk": {
|
||||
"name": "section_layout_section_id_layout_id_pk",
|
||||
"columns": [
|
||||
"section_id",
|
||||
"layout_id"
|
||||
]
|
||||
"columns": ["section_id", "layout_id"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -2228,12 +2019,8 @@
|
||||
"name": "section_board_id_board_id_fk",
|
||||
"tableFrom": "section",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2269,9 +2056,7 @@
|
||||
"serverSetting_settingKey_unique": {
|
||||
"name": "serverSetting_settingKey_unique",
|
||||
"nullsNotDistinct": false,
|
||||
"columns": [
|
||||
"setting_key"
|
||||
]
|
||||
"columns": ["setting_key"]
|
||||
}
|
||||
},
|
||||
"policies": {},
|
||||
@@ -2323,12 +2108,8 @@
|
||||
"name": "session_user_id_user_id_fk",
|
||||
"tableFrom": "session",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2467,12 +2248,8 @@
|
||||
"name": "user_home_board_id_board_id_fk",
|
||||
"tableFrom": "user",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"home_board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["home_board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -2480,12 +2257,8 @@
|
||||
"name": "user_mobile_home_board_id_board_id_fk",
|
||||
"tableFrom": "user",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"mobile_home_board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["mobile_home_board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -2493,12 +2266,8 @@
|
||||
"name": "user_default_search_engine_id_search_engine_id_fk",
|
||||
"tableFrom": "user",
|
||||
"tableTo": "search_engine",
|
||||
"columnsFrom": [
|
||||
"default_search_engine_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["default_search_engine_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2537,10 +2306,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"verificationToken_identifier_token_pk": {
|
||||
"name": "verificationToken_identifier_token_pk",
|
||||
"columns": [
|
||||
"identifier",
|
||||
"token"
|
||||
]
|
||||
"columns": ["identifier", "token"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -2583,12 +2349,8 @@
|
||||
"name": "widget_secret_item_id_item_id_fk",
|
||||
"tableFrom": "widget_secret",
|
||||
"tableTo": "item",
|
||||
"columnsFrom": [
|
||||
"item_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["item_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2596,10 +2358,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"widget_secret_item_id_kind_pk": {
|
||||
"name": "widget_secret_item_id_kind_pk",
|
||||
"columns": [
|
||||
"item_id",
|
||||
"kind"
|
||||
]
|
||||
"columns": ["item_id", "kind"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -2635,10 +2394,7 @@
|
||||
"compositePrimaryKeys": {
|
||||
"trusted_certificate_hostname_hostname_thumbprint_pk": {
|
||||
"name": "trusted_certificate_hostname_hostname_thumbprint_pk",
|
||||
"columns": [
|
||||
"hostname",
|
||||
"thumbprint"
|
||||
]
|
||||
"columns": ["hostname", "thumbprint"]
|
||||
}
|
||||
},
|
||||
"uniqueConstraints": {},
|
||||
@@ -2658,4 +2414,4 @@
|
||||
"schemas": {},
|
||||
"tables": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -87,4 +87,4 @@
|
||||
"breakpoints": true
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -88,9 +88,7 @@
|
||||
"indexes": {
|
||||
"userId_idx": {
|
||||
"name": "userId_idx",
|
||||
"columns": [
|
||||
"user_id"
|
||||
],
|
||||
"columns": ["user_id"],
|
||||
"isUnique": false
|
||||
}
|
||||
},
|
||||
@@ -99,22 +97,15 @@
|
||||
"name": "account_user_id_user_id_fk",
|
||||
"tableFrom": "account",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"account_provider_provider_account_id_pk": {
|
||||
"columns": [
|
||||
"provider",
|
||||
"provider_account_id"
|
||||
],
|
||||
"columns": ["provider", "provider_account_id"],
|
||||
"name": "account_provider_provider_account_id_pk"
|
||||
}
|
||||
},
|
||||
@@ -152,12 +143,8 @@
|
||||
"name": "apiKey_user_id_user_id_fk",
|
||||
"tableFrom": "apiKey",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -249,12 +236,8 @@
|
||||
"name": "boardGroupPermission_board_id_board_id_fk",
|
||||
"tableFrom": "boardGroupPermission",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -262,23 +245,15 @@
|
||||
"name": "boardGroupPermission_group_id_group_id_fk",
|
||||
"tableFrom": "boardGroupPermission",
|
||||
"tableTo": "group",
|
||||
"columnsFrom": [
|
||||
"group_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["group_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"boardGroupPermission_board_id_group_id_permission_pk": {
|
||||
"columns": [
|
||||
"board_id",
|
||||
"group_id",
|
||||
"permission"
|
||||
],
|
||||
"columns": ["board_id", "group_id", "permission"],
|
||||
"name": "boardGroupPermission_board_id_group_id_permission_pk"
|
||||
}
|
||||
},
|
||||
@@ -316,12 +291,8 @@
|
||||
"name": "boardUserPermission_board_id_board_id_fk",
|
||||
"tableFrom": "boardUserPermission",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -329,23 +300,15 @@
|
||||
"name": "boardUserPermission_user_id_user_id_fk",
|
||||
"tableFrom": "boardUserPermission",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"boardUserPermission_board_id_user_id_permission_pk": {
|
||||
"columns": [
|
||||
"board_id",
|
||||
"user_id",
|
||||
"permission"
|
||||
],
|
||||
"columns": ["board_id", "user_id", "permission"],
|
||||
"name": "boardUserPermission_board_id_user_id_permission_pk"
|
||||
}
|
||||
},
|
||||
@@ -501,9 +464,7 @@
|
||||
"indexes": {
|
||||
"board_name_unique": {
|
||||
"name": "board_name_unique",
|
||||
"columns": [
|
||||
"name"
|
||||
],
|
||||
"columns": ["name"],
|
||||
"isUnique": true
|
||||
}
|
||||
},
|
||||
@@ -512,12 +473,8 @@
|
||||
"name": "board_creator_id_user_id_fk",
|
||||
"tableFrom": "board",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"creator_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["creator_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -655,12 +612,8 @@
|
||||
"name": "custom_widget_v2_definition_creator_id_user_id_fk",
|
||||
"tableFrom": "custom_widget_v2_definition",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"creator_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["creator_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -714,23 +667,15 @@
|
||||
"name": "custom_widget_v2_secret_definition_id_fk",
|
||||
"tableFrom": "custom_widget_v2_secret",
|
||||
"tableTo": "custom_widget_v2_definition",
|
||||
"columnsFrom": [
|
||||
"definition_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["definition_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"custom_widget_v2_secret_definition_id_source_id_kind_pk": {
|
||||
"columns": [
|
||||
"definition_id",
|
||||
"source_id",
|
||||
"kind"
|
||||
],
|
||||
"columns": ["definition_id", "source_id", "kind"],
|
||||
"name": "custom_widget_v2_secret_definition_id_source_id_kind_pk"
|
||||
}
|
||||
},
|
||||
@@ -761,12 +706,8 @@
|
||||
"name": "groupMember_group_id_group_id_fk",
|
||||
"tableFrom": "groupMember",
|
||||
"tableTo": "group",
|
||||
"columnsFrom": [
|
||||
"group_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["group_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -774,22 +715,15 @@
|
||||
"name": "groupMember_user_id_user_id_fk",
|
||||
"tableFrom": "groupMember",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"groupMember_group_id_user_id_pk": {
|
||||
"columns": [
|
||||
"group_id",
|
||||
"user_id"
|
||||
],
|
||||
"columns": ["group_id", "user_id"],
|
||||
"name": "groupMember_group_id_user_id_pk"
|
||||
}
|
||||
},
|
||||
@@ -820,12 +754,8 @@
|
||||
"name": "groupPermission_group_id_group_id_fk",
|
||||
"tableFrom": "groupPermission",
|
||||
"tableTo": "group",
|
||||
"columnsFrom": [
|
||||
"group_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["group_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -883,9 +813,7 @@
|
||||
"indexes": {
|
||||
"group_name_unique": {
|
||||
"name": "group_name_unique",
|
||||
"columns": [
|
||||
"name"
|
||||
],
|
||||
"columns": ["name"],
|
||||
"isUnique": true
|
||||
}
|
||||
},
|
||||
@@ -894,12 +822,8 @@
|
||||
"name": "group_owner_id_user_id_fk",
|
||||
"tableFrom": "group",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"owner_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["owner_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -907,12 +831,8 @@
|
||||
"name": "group_home_board_id_board_id_fk",
|
||||
"tableFrom": "group",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"home_board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["home_board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -920,12 +840,8 @@
|
||||
"name": "group_mobile_home_board_id_board_id_fk",
|
||||
"tableFrom": "group",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"mobile_home_board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["mobile_home_board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1003,12 +919,8 @@
|
||||
"name": "icon_icon_repository_id_iconRepository_id_fk",
|
||||
"tableFrom": "icon",
|
||||
"tableTo": "iconRepository",
|
||||
"columnsFrom": [
|
||||
"icon_repository_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["icon_repository_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1048,12 +960,8 @@
|
||||
"name": "integrationGroupPermissions_integration_id_integration_id_fk",
|
||||
"tableFrom": "integrationGroupPermissions",
|
||||
"tableTo": "integration",
|
||||
"columnsFrom": [
|
||||
"integration_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["integration_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -1061,23 +969,15 @@
|
||||
"name": "integrationGroupPermissions_group_id_group_id_fk",
|
||||
"tableFrom": "integrationGroupPermissions",
|
||||
"tableTo": "group",
|
||||
"columnsFrom": [
|
||||
"group_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["group_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"integrationGroupPermissions_integration_id_group_id_permission_pk": {
|
||||
"columns": [
|
||||
"integration_id",
|
||||
"group_id",
|
||||
"permission"
|
||||
],
|
||||
"columns": ["integration_id", "group_id", "permission"],
|
||||
"name": "integrationGroupPermissions_integration_id_group_id_permission_pk"
|
||||
}
|
||||
},
|
||||
@@ -1108,12 +1008,8 @@
|
||||
"name": "integration_item_item_id_item_id_fk",
|
||||
"tableFrom": "integration_item",
|
||||
"tableTo": "item",
|
||||
"columnsFrom": [
|
||||
"item_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["item_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -1121,22 +1017,15 @@
|
||||
"name": "integration_item_integration_id_integration_id_fk",
|
||||
"tableFrom": "integration_item",
|
||||
"tableTo": "integration",
|
||||
"columnsFrom": [
|
||||
"integration_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["integration_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"integration_item_item_id_integration_id_pk": {
|
||||
"columns": [
|
||||
"item_id",
|
||||
"integration_id"
|
||||
],
|
||||
"columns": ["item_id", "integration_id"],
|
||||
"name": "integration_item_item_id_integration_id_pk"
|
||||
}
|
||||
},
|
||||
@@ -1178,16 +1067,12 @@
|
||||
"indexes": {
|
||||
"integration_secret__kind_idx": {
|
||||
"name": "integration_secret__kind_idx",
|
||||
"columns": [
|
||||
"kind"
|
||||
],
|
||||
"columns": ["kind"],
|
||||
"isUnique": false
|
||||
},
|
||||
"integration_secret__updated_at_idx": {
|
||||
"name": "integration_secret__updated_at_idx",
|
||||
"columns": [
|
||||
"updated_at"
|
||||
],
|
||||
"columns": ["updated_at"],
|
||||
"isUnique": false
|
||||
}
|
||||
},
|
||||
@@ -1196,22 +1081,15 @@
|
||||
"name": "integrationSecret_integration_id_integration_id_fk",
|
||||
"tableFrom": "integrationSecret",
|
||||
"tableTo": "integration",
|
||||
"columnsFrom": [
|
||||
"integration_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["integration_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"integrationSecret_integration_id_kind_pk": {
|
||||
"columns": [
|
||||
"integration_id",
|
||||
"kind"
|
||||
],
|
||||
"columns": ["integration_id", "kind"],
|
||||
"name": "integrationSecret_integration_id_kind_pk"
|
||||
}
|
||||
},
|
||||
@@ -1249,12 +1127,8 @@
|
||||
"name": "integrationUserPermission_integration_id_integration_id_fk",
|
||||
"tableFrom": "integrationUserPermission",
|
||||
"tableTo": "integration",
|
||||
"columnsFrom": [
|
||||
"integration_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["integration_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -1262,23 +1136,15 @@
|
||||
"name": "integrationUserPermission_user_id_user_id_fk",
|
||||
"tableFrom": "integrationUserPermission",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"integrationUserPermission_integration_id_user_id_permission_pk": {
|
||||
"columns": [
|
||||
"integration_id",
|
||||
"user_id",
|
||||
"permission"
|
||||
],
|
||||
"columns": ["integration_id", "user_id", "permission"],
|
||||
"name": "integrationUserPermission_integration_id_user_id_permission_pk"
|
||||
}
|
||||
},
|
||||
@@ -1327,9 +1193,7 @@
|
||||
"indexes": {
|
||||
"integration__kind_idx": {
|
||||
"name": "integration__kind_idx",
|
||||
"columns": [
|
||||
"kind"
|
||||
],
|
||||
"columns": ["kind"],
|
||||
"isUnique": false
|
||||
}
|
||||
},
|
||||
@@ -1338,12 +1202,8 @@
|
||||
"name": "integration_app_id_app_id_fk",
|
||||
"tableFrom": "integration",
|
||||
"tableTo": "app",
|
||||
"columnsFrom": [
|
||||
"app_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["app_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1387,9 +1247,7 @@
|
||||
"indexes": {
|
||||
"invite_token_unique": {
|
||||
"name": "invite_token_unique",
|
||||
"columns": [
|
||||
"token"
|
||||
],
|
||||
"columns": ["token"],
|
||||
"isUnique": true
|
||||
}
|
||||
},
|
||||
@@ -1398,12 +1256,8 @@
|
||||
"name": "invite_creator_id_user_id_fk",
|
||||
"tableFrom": "invite",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"creator_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["creator_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1471,12 +1325,8 @@
|
||||
"name": "item_layout_item_id_item_id_fk",
|
||||
"tableFrom": "item_layout",
|
||||
"tableTo": "item",
|
||||
"columnsFrom": [
|
||||
"item_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["item_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -1484,12 +1334,8 @@
|
||||
"name": "item_layout_section_id_section_id_fk",
|
||||
"tableFrom": "item_layout",
|
||||
"tableTo": "section",
|
||||
"columnsFrom": [
|
||||
"section_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["section_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -1497,23 +1343,15 @@
|
||||
"name": "item_layout_layout_id_layout_id_fk",
|
||||
"tableFrom": "item_layout",
|
||||
"tableTo": "layout",
|
||||
"columnsFrom": [
|
||||
"layout_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["layout_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"item_layout_item_id_section_id_layout_id_pk": {
|
||||
"columns": [
|
||||
"item_id",
|
||||
"section_id",
|
||||
"layout_id"
|
||||
],
|
||||
"columns": ["item_id", "section_id", "layout_id"],
|
||||
"name": "item_layout_item_id_section_id_layout_id_pk"
|
||||
}
|
||||
},
|
||||
@@ -1567,12 +1405,8 @@
|
||||
"name": "item_board_id_board_id_fk",
|
||||
"tableFrom": "item",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1643,12 +1477,8 @@
|
||||
"name": "layout_board_id_board_id_fk",
|
||||
"tableFrom": "layout",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1779,12 +1609,8 @@
|
||||
"name": "custom_widget_definition_creator_id_user_id_fk",
|
||||
"tableFrom": "custom_widget_definition",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"creator_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["creator_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -1831,22 +1657,15 @@
|
||||
"name": "custom_widget_secret_definition_id_custom_widget_definition_id_fk",
|
||||
"tableFrom": "custom_widget_secret",
|
||||
"tableTo": "custom_widget_definition",
|
||||
"columnsFrom": [
|
||||
"definition_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["definition_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"custom_widget_secret_definition_id_kind_pk": {
|
||||
"columns": [
|
||||
"definition_id",
|
||||
"kind"
|
||||
],
|
||||
"columns": ["definition_id", "kind"],
|
||||
"name": "custom_widget_secret_definition_id_kind_pk"
|
||||
}
|
||||
},
|
||||
@@ -1913,12 +1732,8 @@
|
||||
"name": "media_creator_id_user_id_fk",
|
||||
"tableFrom": "media",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"creator_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["creator_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2022,9 +1837,7 @@
|
||||
"indexes": {
|
||||
"search_engine_short_unique": {
|
||||
"name": "search_engine_short_unique",
|
||||
"columns": [
|
||||
"short"
|
||||
],
|
||||
"columns": ["short"],
|
||||
"isUnique": true
|
||||
}
|
||||
},
|
||||
@@ -2033,12 +1846,8 @@
|
||||
"name": "search_engine_integration_id_integration_id_fk",
|
||||
"tableFrom": "search_engine",
|
||||
"tableTo": "integration",
|
||||
"columnsFrom": [
|
||||
"integration_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["integration_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2079,12 +1888,8 @@
|
||||
"name": "section_collapse_state_user_id_user_id_fk",
|
||||
"tableFrom": "section_collapse_state",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -2092,22 +1897,15 @@
|
||||
"name": "section_collapse_state_section_id_section_id_fk",
|
||||
"tableFrom": "section_collapse_state",
|
||||
"tableTo": "section",
|
||||
"columnsFrom": [
|
||||
"section_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["section_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"section_collapse_state_user_id_section_id_pk": {
|
||||
"columns": [
|
||||
"user_id",
|
||||
"section_id"
|
||||
],
|
||||
"columns": ["user_id", "section_id"],
|
||||
"name": "section_collapse_state_user_id_section_id_pk"
|
||||
}
|
||||
},
|
||||
@@ -2173,12 +1971,8 @@
|
||||
"name": "section_layout_section_id_section_id_fk",
|
||||
"tableFrom": "section_layout",
|
||||
"tableTo": "section",
|
||||
"columnsFrom": [
|
||||
"section_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["section_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -2186,12 +1980,8 @@
|
||||
"name": "section_layout_layout_id_layout_id_fk",
|
||||
"tableFrom": "section_layout",
|
||||
"tableTo": "layout",
|
||||
"columnsFrom": [
|
||||
"layout_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["layout_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -2199,22 +1989,15 @@
|
||||
"name": "section_layout_parent_section_id_section_id_fk",
|
||||
"tableFrom": "section_layout",
|
||||
"tableTo": "section",
|
||||
"columnsFrom": [
|
||||
"parent_section_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["parent_section_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"section_layout_section_id_layout_id_pk": {
|
||||
"columns": [
|
||||
"section_id",
|
||||
"layout_id"
|
||||
],
|
||||
"columns": ["section_id", "layout_id"],
|
||||
"name": "section_layout_section_id_layout_id_pk"
|
||||
}
|
||||
},
|
||||
@@ -2281,12 +2064,8 @@
|
||||
"name": "section_board_id_board_id_fk",
|
||||
"tableFrom": "section",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2317,9 +2096,7 @@
|
||||
"indexes": {
|
||||
"serverSetting_settingKey_unique": {
|
||||
"name": "serverSetting_settingKey_unique",
|
||||
"columns": [
|
||||
"setting_key"
|
||||
],
|
||||
"columns": ["setting_key"],
|
||||
"isUnique": true
|
||||
}
|
||||
},
|
||||
@@ -2356,9 +2133,7 @@
|
||||
"indexes": {
|
||||
"user_id_idx": {
|
||||
"name": "user_id_idx",
|
||||
"columns": [
|
||||
"user_id"
|
||||
],
|
||||
"columns": ["user_id"],
|
||||
"isUnique": false
|
||||
}
|
||||
},
|
||||
@@ -2367,12 +2142,8 @@
|
||||
"name": "session_user_id_user_id_fk",
|
||||
"tableFrom": "session",
|
||||
"tableTo": "user",
|
||||
"columnsFrom": [
|
||||
"user_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["user_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2410,10 +2181,7 @@
|
||||
"foreignKeys": {},
|
||||
"compositePrimaryKeys": {
|
||||
"trusted_certificate_hostname_hostname_thumbprint_pk": {
|
||||
"columns": [
|
||||
"hostname",
|
||||
"thumbprint"
|
||||
],
|
||||
"columns": ["hostname", "thumbprint"],
|
||||
"name": "trusted_certificate_hostname_hostname_thumbprint_pk"
|
||||
}
|
||||
},
|
||||
@@ -2565,12 +2333,8 @@
|
||||
"name": "user_home_board_id_board_id_fk",
|
||||
"tableFrom": "user",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"home_board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["home_board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -2578,12 +2342,8 @@
|
||||
"name": "user_mobile_home_board_id_board_id_fk",
|
||||
"tableFrom": "user",
|
||||
"tableTo": "board",
|
||||
"columnsFrom": [
|
||||
"mobile_home_board_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["mobile_home_board_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
},
|
||||
@@ -2591,12 +2351,8 @@
|
||||
"name": "user_default_search_engine_id_search_engine_id_fk",
|
||||
"tableFrom": "user",
|
||||
"tableTo": "search_engine",
|
||||
"columnsFrom": [
|
||||
"default_search_engine_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["default_search_engine_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "set null",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
@@ -2634,10 +2390,7 @@
|
||||
"foreignKeys": {},
|
||||
"compositePrimaryKeys": {
|
||||
"verificationToken_identifier_token_pk": {
|
||||
"columns": [
|
||||
"identifier",
|
||||
"token"
|
||||
],
|
||||
"columns": ["identifier", "token"],
|
||||
"name": "verificationToken_identifier_token_pk"
|
||||
}
|
||||
},
|
||||
@@ -2682,22 +2435,15 @@
|
||||
"name": "widget_secret_item_id_item_id_fk",
|
||||
"tableFrom": "widget_secret",
|
||||
"tableTo": "item",
|
||||
"columnsFrom": [
|
||||
"item_id"
|
||||
],
|
||||
"columnsTo": [
|
||||
"id"
|
||||
],
|
||||
"columnsFrom": ["item_id"],
|
||||
"columnsTo": ["id"],
|
||||
"onDelete": "cascade",
|
||||
"onUpdate": "no action"
|
||||
}
|
||||
},
|
||||
"compositePrimaryKeys": {
|
||||
"widget_secret_item_id_kind_pk": {
|
||||
"columns": [
|
||||
"item_id",
|
||||
"kind"
|
||||
],
|
||||
"columns": ["item_id", "kind"],
|
||||
"name": "widget_secret_item_id_kind_pk"
|
||||
}
|
||||
},
|
||||
@@ -2715,4 +2461,4 @@
|
||||
"internal": {
|
||||
"indexes": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -311,4 +311,4 @@
|
||||
"breakpoints": true
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user