Changes
This commit is contained in:
2
.idea/vcs.xml
generated
2
.idea/vcs.xml
generated
@@ -2,6 +2,6 @@
|
|||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="VcsDirectoryMappings">
|
<component name="VcsDirectoryMappings">
|
||||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||||
<mapping directory="$PROJECT_DIR$/website" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$/hardware-gateway" vcs="Git" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
||||||
14
reactnative/.gitignore
vendored
14
reactnative/.gitignore
vendored
@@ -1,14 +0,0 @@
|
|||||||
node_modules/
|
|
||||||
.expo/
|
|
||||||
dist/
|
|
||||||
npm-debug.*
|
|
||||||
*.jks
|
|
||||||
*.p8
|
|
||||||
*.p12
|
|
||||||
*.key
|
|
||||||
*.mobileprovision
|
|
||||||
*.orig.*
|
|
||||||
web-build/
|
|
||||||
|
|
||||||
# macOS
|
|
||||||
.DS_Store
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
# Expo Router Example
|
|
||||||
|
|
||||||
Use [`expo-router`](https://expo.github.io/router) to build native navigation using files in the `app/` directory.
|
|
||||||
|
|
||||||
## 🚀 How to use
|
|
||||||
|
|
||||||
```sh
|
|
||||||
npx create-expo-app -e with-router
|
|
||||||
```
|
|
||||||
|
|
||||||
## 📝 Notes
|
|
||||||
|
|
||||||
- [Expo Router: Docs](https://expo.github.io/router)
|
|
||||||
- [Expo Router: Repo](https://github.com/expo/router)
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
"expo": {
|
|
||||||
"scheme": "acme",
|
|
||||||
"web": {
|
|
||||||
"bundler": "metro"
|
|
||||||
},
|
|
||||||
"plugins": [
|
|
||||||
"expo-router"
|
|
||||||
],
|
|
||||||
"name": "reactnative",
|
|
||||||
"slug": "reactnative"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
import {Stack} from "expo-router"
|
|
||||||
import {Tabs} from "expo-router";
|
|
||||||
|
|
||||||
const Layout = () => {
|
|
||||||
return (
|
|
||||||
<Tabs>
|
|
||||||
<Tabs.Screen
|
|
||||||
name="index"
|
|
||||||
/>
|
|
||||||
<Tabs.Screen
|
|
||||||
name="time"
|
|
||||||
options={{
|
|
||||||
href: null
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
</Tabs>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
export default Layout
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
import {StyleSheet,View, Text, Pressable} from 'react-native'
|
|
||||||
import {Link} from "expo-router";
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const Home = () => {
|
|
||||||
return (
|
|
||||||
<View style={styles.container}>
|
|
||||||
<Text>Home</Text>
|
|
||||||
<Link href="/time" asChild>
|
|
||||||
<Pressable>
|
|
||||||
<Text>Zeiten</Text>
|
|
||||||
</Pressable>
|
|
||||||
</Link>
|
|
||||||
<Link href="/projects">Projekte</Link>
|
|
||||||
</View>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const styles = StyleSheet.create({
|
|
||||||
container: {
|
|
||||||
flex: 1,
|
|
||||||
backgroundColor: '#fff',
|
|
||||||
alignItems: "center",
|
|
||||||
justifyContent: "center"
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
export default Home;
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
import {ActivityIndicator, FlatList, Text, View} from "react-native";
|
|
||||||
import {useState, useEffect} from "react";
|
|
||||||
|
|
||||||
export default function Page() {
|
|
||||||
const [isLoading, setLoading] = useState(true);
|
|
||||||
const [data, setData] = useState([]);
|
|
||||||
const getProjects = () => {
|
|
||||||
return fetch('http://192.168.178.129:1337/api/projects?populate=*')
|
|
||||||
.then(response => response.json())
|
|
||||||
.then(json => {
|
|
||||||
setData(json.data);
|
|
||||||
setLoading(false)
|
|
||||||
})
|
|
||||||
.catch(error => {
|
|
||||||
console.error(error);
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
useEffect(() => {
|
|
||||||
getProjects();
|
|
||||||
})
|
|
||||||
|
|
||||||
return (
|
|
||||||
<View style={{flex:1,padding: 24}}>
|
|
||||||
{
|
|
||||||
isLoading ? (
|
|
||||||
<ActivityIndicator/>
|
|
||||||
) : (
|
|
||||||
<FlatList
|
|
||||||
data={data}
|
|
||||||
keyExtractor={({id}) => id}
|
|
||||||
renderItem={({item}) => (
|
|
||||||
<View style={{height: "120px", width: '95%', backgroundColor: 'grey', marginTop: 10, borderColor: '#69c350'}}>
|
|
||||||
<Text>{item.attributes.name}</Text>
|
|
||||||
</View>
|
|
||||||
)}
|
|
||||||
/>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
</View>
|
|
||||||
|
|
||||||
|
|
||||||
)
|
|
||||||
}
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
import {Text} from "react-native";
|
|
||||||
|
|
||||||
export default function Page() {
|
|
||||||
return (
|
|
||||||
<Text>Time</Text>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
module.exports = function (api) {
|
|
||||||
api.cache(true);
|
|
||||||
return {
|
|
||||||
presets: ["babel-preset-expo"],
|
|
||||||
plugins: [
|
|
||||||
"@babel/plugin-proposal-export-namespace-from",
|
|
||||||
"react-native-reanimated/plugin",
|
|
||||||
require.resolve("expo-router/babel"),
|
|
||||||
],
|
|
||||||
};
|
|
||||||
};
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
import "expo-router/entry";
|
|
||||||
14289
reactnative/package-lock.json
generated
14289
reactnative/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,43 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "reactnative",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"main": "index.js",
|
|
||||||
"scripts": {
|
|
||||||
"start": "expo start",
|
|
||||||
"android": "expo start --android",
|
|
||||||
"ios": "expo start --ios",
|
|
||||||
"web": "expo start --web"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"axios": "^1.6.2",
|
|
||||||
"expo": "^49.0.3",
|
|
||||||
"expo-constants": "~14.4.2",
|
|
||||||
"expo-font": "^11.6.0",
|
|
||||||
"expo-linking": "~5.0.2",
|
|
||||||
"expo-router": "2.0.0",
|
|
||||||
"expo-splash-screen": "~0.20.4",
|
|
||||||
"expo-status-bar": "~1.6.0",
|
|
||||||
"react": "18.2.0",
|
|
||||||
"react-dom": "18.2.0",
|
|
||||||
"react-native": "0.72.3",
|
|
||||||
"react-native-dotenv": "^3.4.9",
|
|
||||||
"react-native-gesture-handler": "~2.12.0",
|
|
||||||
"react-native-reanimated": "~3.3.0",
|
|
||||||
"react-native-safe-area-context": "4.6.3",
|
|
||||||
"react-native-screens": "~3.22.0",
|
|
||||||
"react-native-web": "~0.19.6"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"@babel/core": "^7.19.3",
|
|
||||||
"@babel/plugin-proposal-export-namespace-from": "^7.18.9"
|
|
||||||
},
|
|
||||||
"resolutions": {
|
|
||||||
"metro": "^0.73.7",
|
|
||||||
"metro-resolver": "^0.73.7"
|
|
||||||
},
|
|
||||||
"overrides": {
|
|
||||||
"metro": "^0.73.7",
|
|
||||||
"metro-resolver": "^0.73.7"
|
|
||||||
},
|
|
||||||
"private": true
|
|
||||||
}
|
|
||||||
@@ -37,7 +37,6 @@
|
|||||||
</UDashboardToolbar>
|
</UDashboardToolbar>
|
||||||
|
|
||||||
|
|
||||||
<div class="table">
|
|
||||||
<UTable
|
<UTable
|
||||||
:rows="filteredRows"
|
:rows="filteredRows"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
@@ -53,7 +52,6 @@
|
|||||||
{{dataStore.units.find(unit => unit.id === row.unit) ? dataStore.units.find(unit => unit.id === row.unit).name : row.unit}}
|
{{dataStore.units.find(unit => unit.id === row.unit) ? dataStore.units.find(unit => unit.id === row.unit).name : row.unit}}
|
||||||
</template>
|
</template>
|
||||||
</UTable>
|
</UTable>
|
||||||
</div>
|
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import dayjs from "dayjs";
|
|||||||
|
|
||||||
const dataStore = useDataStore()
|
const dataStore = useDataStore()
|
||||||
|
|
||||||
const timeColumns = [
|
const templateColumns = [
|
||||||
{
|
{
|
||||||
key: "state",
|
key: "state",
|
||||||
label: "Status"
|
label: "Status"
|
||||||
@@ -20,8 +20,13 @@ const timeColumns = [
|
|||||||
}, {
|
}, {
|
||||||
key: "end",
|
key: "end",
|
||||||
label: "Ende"
|
label: "Ende"
|
||||||
|
}, {
|
||||||
|
key: "device",
|
||||||
|
label: "Gerät"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
const selectedColumns = ref(templateColumns)
|
||||||
|
const columns = computed(() => templateColumns.filter((column) => selectedColumns.value.includes(column)))
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@@ -29,13 +34,33 @@ const timeColumns = [
|
|||||||
<UDashboardNavbar title="Anwesenheiten">
|
<UDashboardNavbar title="Anwesenheiten">
|
||||||
|
|
||||||
</UDashboardNavbar>
|
</UDashboardNavbar>
|
||||||
|
<UDashboardToolbar>
|
||||||
|
<template #right>
|
||||||
|
<USelectMenu
|
||||||
|
v-model="selectedColumns"
|
||||||
|
icon="i-heroicons-adjustments-horizontal-solid"
|
||||||
|
:options="templateColumns"
|
||||||
|
multiple
|
||||||
|
class="hidden lg:block"
|
||||||
|
by="key"
|
||||||
|
>
|
||||||
|
<template #label>
|
||||||
|
Spalten
|
||||||
|
</template>
|
||||||
|
</USelectMenu>
|
||||||
|
</template>
|
||||||
|
</UDashboardToolbar>
|
||||||
<UTable
|
<UTable
|
||||||
:rows="dataStore.workingtimes"
|
:rows="dataStore.workingtimes"
|
||||||
:columns="timeColumns"
|
:columns="columns"
|
||||||
|
:empty-state="{ icon: 'i-heroicons-circle-stack-20-solid', label: 'Keine Anwesenheiten anzuzeigen' }"
|
||||||
>
|
>
|
||||||
<template #user-data="{row}">
|
<template #user-data="{row}">
|
||||||
{{dataStore.getProfileById(row.user).fullName }}
|
{{dataStore.getProfileById(row.user).fullName }}
|
||||||
</template>
|
</template>
|
||||||
|
<template #device-data="{row}">
|
||||||
|
<!-- TODO: Load devices -->
|
||||||
|
</template>
|
||||||
</UTable>
|
</UTable>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
root = true
|
|
||||||
|
|
||||||
[*]
|
|
||||||
indent_style = space
|
|
||||||
indent_size = 2
|
|
||||||
end_of_line = lf
|
|
||||||
charset = utf-8
|
|
||||||
trim_trailing_whitespace = true
|
|
||||||
insert_final_newline = true
|
|
||||||
|
|
||||||
[{package.json,*.yml}]
|
|
||||||
indent_style = space
|
|
||||||
indent_size = 2
|
|
||||||
|
|
||||||
[*.md]
|
|
||||||
trim_trailing_whitespace = false
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
HOST=0.0.0.0
|
|
||||||
PORT=1337
|
|
||||||
APP_KEYS="toBeModified1,toBeModified2"
|
|
||||||
API_TOKEN_SALT=tobemodified
|
|
||||||
ADMIN_JWT_SECRET=tobemodified
|
|
||||||
TRANSFER_TOKEN_SALT=tobemodified
|
|
||||||
JWT_SECRET=tobemodified
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
.cache
|
|
||||||
build
|
|
||||||
**/node_modules/**
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
{
|
|
||||||
"parser": "babel-eslint",
|
|
||||||
"extends": "eslint:recommended",
|
|
||||||
"env": {
|
|
||||||
"commonjs": true,
|
|
||||||
"es6": true,
|
|
||||||
"node": true,
|
|
||||||
"browser": false
|
|
||||||
},
|
|
||||||
"parserOptions": {
|
|
||||||
"ecmaFeatures": {
|
|
||||||
"experimentalObjectRestSpread": true,
|
|
||||||
"jsx": false
|
|
||||||
},
|
|
||||||
"sourceType": "module"
|
|
||||||
},
|
|
||||||
"globals": {
|
|
||||||
"strapi": true
|
|
||||||
},
|
|
||||||
"rules": {
|
|
||||||
"indent": ["error", 2, { "SwitchCase": 1 }],
|
|
||||||
"linebreak-style": ["error", "unix"],
|
|
||||||
"no-console": 0,
|
|
||||||
"quotes": ["error", "single"],
|
|
||||||
"semi": ["error", "always"]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
114
strapi/.gitignore
vendored
114
strapi/.gitignore
vendored
@@ -1,114 +0,0 @@
|
|||||||
############################
|
|
||||||
# OS X
|
|
||||||
############################
|
|
||||||
|
|
||||||
.DS_Store
|
|
||||||
.AppleDouble
|
|
||||||
.LSOverride
|
|
||||||
Icon
|
|
||||||
.Spotlight-V100
|
|
||||||
.Trashes
|
|
||||||
._*
|
|
||||||
|
|
||||||
|
|
||||||
############################
|
|
||||||
# Linux
|
|
||||||
############################
|
|
||||||
|
|
||||||
*~
|
|
||||||
|
|
||||||
|
|
||||||
############################
|
|
||||||
# Windows
|
|
||||||
############################
|
|
||||||
|
|
||||||
Thumbs.db
|
|
||||||
ehthumbs.db
|
|
||||||
Desktop.ini
|
|
||||||
$RECYCLE.BIN/
|
|
||||||
*.cab
|
|
||||||
*.msi
|
|
||||||
*.msm
|
|
||||||
*.msp
|
|
||||||
|
|
||||||
|
|
||||||
############################
|
|
||||||
# Packages
|
|
||||||
############################
|
|
||||||
|
|
||||||
*.7z
|
|
||||||
*.csv
|
|
||||||
*.dat
|
|
||||||
*.dmg
|
|
||||||
*.gz
|
|
||||||
*.iso
|
|
||||||
*.jar
|
|
||||||
*.rar
|
|
||||||
*.tar
|
|
||||||
*.zip
|
|
||||||
*.com
|
|
||||||
*.class
|
|
||||||
*.dll
|
|
||||||
*.exe
|
|
||||||
*.o
|
|
||||||
*.seed
|
|
||||||
*.so
|
|
||||||
*.swo
|
|
||||||
*.swp
|
|
||||||
*.swn
|
|
||||||
*.swm
|
|
||||||
*.out
|
|
||||||
*.pid
|
|
||||||
|
|
||||||
|
|
||||||
############################
|
|
||||||
# Logs and databases
|
|
||||||
############################
|
|
||||||
|
|
||||||
.tmp
|
|
||||||
*.log
|
|
||||||
*.sql
|
|
||||||
*.sqlite
|
|
||||||
*.sqlite3
|
|
||||||
|
|
||||||
|
|
||||||
############################
|
|
||||||
# Misc.
|
|
||||||
############################
|
|
||||||
|
|
||||||
*#
|
|
||||||
ssl
|
|
||||||
.idea
|
|
||||||
nbproject
|
|
||||||
public/uploads/*
|
|
||||||
!public/uploads/.gitkeep
|
|
||||||
|
|
||||||
############################
|
|
||||||
# Node.js
|
|
||||||
############################
|
|
||||||
|
|
||||||
lib-cov
|
|
||||||
lcov.info
|
|
||||||
pids
|
|
||||||
logs
|
|
||||||
results
|
|
||||||
node_modules
|
|
||||||
.node_history
|
|
||||||
|
|
||||||
############################
|
|
||||||
# Tests
|
|
||||||
############################
|
|
||||||
|
|
||||||
coverage
|
|
||||||
|
|
||||||
############################
|
|
||||||
# Strapi
|
|
||||||
############################
|
|
||||||
|
|
||||||
.env
|
|
||||||
license.txt
|
|
||||||
exports
|
|
||||||
*.cache
|
|
||||||
dist
|
|
||||||
build
|
|
||||||
.strapi-updater.json
|
|
||||||
@@ -1,57 +0,0 @@
|
|||||||
# 🚀 Getting started with Strapi
|
|
||||||
|
|
||||||
Strapi comes with a full featured [Command Line Interface](https://docs.strapi.io/dev-docs/cli) (CLI) which lets you scaffold and manage your project in seconds.
|
|
||||||
|
|
||||||
### `develop`
|
|
||||||
|
|
||||||
Start your Strapi application with autoReload enabled. [Learn more](https://docs.strapi.io/dev-docs/cli#strapi-develop)
|
|
||||||
|
|
||||||
```
|
|
||||||
npm run develop
|
|
||||||
# or
|
|
||||||
yarn develop
|
|
||||||
```
|
|
||||||
|
|
||||||
### `start`
|
|
||||||
|
|
||||||
Start your Strapi application with autoReload disabled. [Learn more](https://docs.strapi.io/dev-docs/cli#strapi-start)
|
|
||||||
|
|
||||||
```
|
|
||||||
npm run start
|
|
||||||
# or
|
|
||||||
yarn start
|
|
||||||
```
|
|
||||||
|
|
||||||
### `build`
|
|
||||||
|
|
||||||
Build your admin panel. [Learn more](https://docs.strapi.io/dev-docs/cli#strapi-build)
|
|
||||||
|
|
||||||
```
|
|
||||||
npm run build
|
|
||||||
# or
|
|
||||||
yarn build
|
|
||||||
```
|
|
||||||
|
|
||||||
## ⚙️ Deployment
|
|
||||||
|
|
||||||
Strapi gives you many possible deployment options for your project including [Strapi Cloud](https://cloud.strapi.io). Browse the [deployment section of the documentation](https://docs.strapi.io/dev-docs/deployment) to find the best solution for your use case.
|
|
||||||
|
|
||||||
## 📚 Learn more
|
|
||||||
|
|
||||||
- [Resource center](https://strapi.io/resource-center) - Strapi resource center.
|
|
||||||
- [Strapi documentation](https://docs.strapi.io) - Official Strapi documentation.
|
|
||||||
- [Strapi tutorials](https://strapi.io/tutorials) - List of tutorials made by the core team and the community.
|
|
||||||
- [Strapi blog](https://strapi.io/blog) - Official Strapi blog containing articles made by the Strapi team and the community.
|
|
||||||
- [Changelog](https://strapi.io/changelog) - Find out about the Strapi product updates, new features and general improvements.
|
|
||||||
|
|
||||||
Feel free to check out the [Strapi GitHub repository](https://github.com/strapi/strapi). Your feedback and contributions are welcome!
|
|
||||||
|
|
||||||
## ✨ Community
|
|
||||||
|
|
||||||
- [Discord](https://discord.strapi.io) - Come chat with the Strapi community including the core team.
|
|
||||||
- [Forum](https://forum.strapi.io/) - Place to discuss, ask questions and find answers, show your Strapi project and get feedback or just talk with other Community members.
|
|
||||||
- [Awesome Strapi](https://github.com/strapi/awesome-strapi) - A curated list of awesome things related to Strapi.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
<sub>🤫 Psst! [Strapi is hiring](https://strapi.io/careers).</sub>
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
module.exports = ({ env }) => ({
|
|
||||||
auth: {
|
|
||||||
secret: env('ADMIN_JWT_SECRET'),
|
|
||||||
},
|
|
||||||
apiToken: {
|
|
||||||
salt: env('API_TOKEN_SALT'),
|
|
||||||
},
|
|
||||||
transfer: {
|
|
||||||
token: {
|
|
||||||
salt: env('TRANSFER_TOKEN_SALT'),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
flags: {
|
|
||||||
nps: env.bool('FLAG_NPS', true),
|
|
||||||
promoteEE: env.bool('FLAG_PROMOTE_EE', true),
|
|
||||||
},
|
|
||||||
});
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
module.exports = {
|
|
||||||
rest: {
|
|
||||||
defaultLimit: 25,
|
|
||||||
maxLimit: 100,
|
|
||||||
withCount: true,
|
|
||||||
},
|
|
||||||
};
|
|
||||||
@@ -1,92 +0,0 @@
|
|||||||
const path = require('path');
|
|
||||||
|
|
||||||
module.exports = ({ env }) => {
|
|
||||||
const client = env('DATABASE_CLIENT', 'sqlite');
|
|
||||||
|
|
||||||
const connections = {
|
|
||||||
mysql: {
|
|
||||||
connection: {
|
|
||||||
connectionString: env('DATABASE_URL'),
|
|
||||||
host: env('DATABASE_HOST', 'localhost'),
|
|
||||||
port: env.int('DATABASE_PORT', 3306),
|
|
||||||
database: env('DATABASE_NAME', 'strapi'),
|
|
||||||
user: env('DATABASE_USERNAME', 'strapi'),
|
|
||||||
password: env('DATABASE_PASSWORD', 'strapi'),
|
|
||||||
ssl: env.bool('DATABASE_SSL', false) && {
|
|
||||||
key: env('DATABASE_SSL_KEY', undefined),
|
|
||||||
cert: env('DATABASE_SSL_CERT', undefined),
|
|
||||||
ca: env('DATABASE_SSL_CA', undefined),
|
|
||||||
capath: env('DATABASE_SSL_CAPATH', undefined),
|
|
||||||
cipher: env('DATABASE_SSL_CIPHER', undefined),
|
|
||||||
rejectUnauthorized: env.bool(
|
|
||||||
'DATABASE_SSL_REJECT_UNAUTHORIZED',
|
|
||||||
true
|
|
||||||
),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
pool: { min: env.int('DATABASE_POOL_MIN', 2), max: env.int('DATABASE_POOL_MAX', 10) },
|
|
||||||
},
|
|
||||||
mysql2: {
|
|
||||||
connection: {
|
|
||||||
host: env('DATABASE_HOST', 'localhost'),
|
|
||||||
port: env.int('DATABASE_PORT', 3306),
|
|
||||||
database: env('DATABASE_NAME', 'strapi'),
|
|
||||||
user: env('DATABASE_USERNAME', 'strapi'),
|
|
||||||
password: env('DATABASE_PASSWORD', 'strapi'),
|
|
||||||
ssl: env.bool('DATABASE_SSL', false) && {
|
|
||||||
key: env('DATABASE_SSL_KEY', undefined),
|
|
||||||
cert: env('DATABASE_SSL_CERT', undefined),
|
|
||||||
ca: env('DATABASE_SSL_CA', undefined),
|
|
||||||
capath: env('DATABASE_SSL_CAPATH', undefined),
|
|
||||||
cipher: env('DATABASE_SSL_CIPHER', undefined),
|
|
||||||
rejectUnauthorized: env.bool(
|
|
||||||
'DATABASE_SSL_REJECT_UNAUTHORIZED',
|
|
||||||
true
|
|
||||||
),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
pool: { min: env.int('DATABASE_POOL_MIN', 2), max: env.int('DATABASE_POOL_MAX', 10) },
|
|
||||||
},
|
|
||||||
postgres: {
|
|
||||||
connection: {
|
|
||||||
connectionString: env('DATABASE_URL'),
|
|
||||||
host: env('DATABASE_HOST', 'localhost'),
|
|
||||||
port: env.int('DATABASE_PORT', 5432),
|
|
||||||
database: env('DATABASE_NAME', 'strapi'),
|
|
||||||
user: env('DATABASE_USERNAME', 'strapi'),
|
|
||||||
password: env('DATABASE_PASSWORD', 'strapi'),
|
|
||||||
ssl: env.bool('DATABASE_SSL', false) && {
|
|
||||||
key: env('DATABASE_SSL_KEY', undefined),
|
|
||||||
cert: env('DATABASE_SSL_CERT', undefined),
|
|
||||||
ca: env('DATABASE_SSL_CA', undefined),
|
|
||||||
capath: env('DATABASE_SSL_CAPATH', undefined),
|
|
||||||
cipher: env('DATABASE_SSL_CIPHER', undefined),
|
|
||||||
rejectUnauthorized: env.bool(
|
|
||||||
'DATABASE_SSL_REJECT_UNAUTHORIZED',
|
|
||||||
true
|
|
||||||
),
|
|
||||||
},
|
|
||||||
schema: env('DATABASE_SCHEMA', 'public'),
|
|
||||||
},
|
|
||||||
pool: { min: env.int('DATABASE_POOL_MIN', 2), max: env.int('DATABASE_POOL_MAX', 10) },
|
|
||||||
},
|
|
||||||
sqlite: {
|
|
||||||
connection: {
|
|
||||||
filename: path.join(
|
|
||||||
__dirname,
|
|
||||||
'..',
|
|
||||||
env('DATABASE_FILENAME', '.tmp/data.db')
|
|
||||||
),
|
|
||||||
},
|
|
||||||
useNullAsDefault: true,
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
return {
|
|
||||||
connection: {
|
|
||||||
client,
|
|
||||||
...connections[client],
|
|
||||||
acquireConnectionTimeout: env.int('DATABASE_CONNECTION_TIMEOUT', 60000),
|
|
||||||
},
|
|
||||||
};
|
|
||||||
};
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
module.exports = [
|
|
||||||
'strapi::errors',
|
|
||||||
'strapi::security',
|
|
||||||
'strapi::cors',
|
|
||||||
'strapi::poweredBy',
|
|
||||||
'strapi::logger',
|
|
||||||
'strapi::query',
|
|
||||||
'strapi::body',
|
|
||||||
'strapi::session',
|
|
||||||
'strapi::favicon',
|
|
||||||
'strapi::public',
|
|
||||||
];
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
module.exports = ({ env }) => ({
|
|
||||||
host: env('HOST', '0.0.0.0'),
|
|
||||||
port: env.int('PORT', 1337),
|
|
||||||
app: {
|
|
||||||
keys: env.array('APP_KEYS'),
|
|
||||||
},
|
|
||||||
webhooks: {
|
|
||||||
populateRelations: env.bool('WEBHOOKS_POPULATE_RELATIONS', false),
|
|
||||||
},
|
|
||||||
});
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 497 B |
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"compilerOptions": {
|
|
||||||
"moduleResolution": "nodenext",
|
|
||||||
"target": "ES2021",
|
|
||||||
"checkJs": true,
|
|
||||||
"allowJs": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
16350
strapi/package-lock.json
generated
16350
strapi/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,29 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "strapi",
|
|
||||||
"private": true,
|
|
||||||
"version": "0.1.0",
|
|
||||||
"description": "A Strapi application",
|
|
||||||
"scripts": {
|
|
||||||
"develop": "strapi develop",
|
|
||||||
"start": "strapi start",
|
|
||||||
"build": "strapi build",
|
|
||||||
"strapi": "strapi"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"@strapi/plugin-i18n": "4.15.0",
|
|
||||||
"@strapi/plugin-users-permissions": "4.15.0",
|
|
||||||
"@strapi/strapi": "4.15.0",
|
|
||||||
"better-sqlite3": "8.6.0"
|
|
||||||
},
|
|
||||||
"author": {
|
|
||||||
"name": "A Strapi developer"
|
|
||||||
},
|
|
||||||
"strapi": {
|
|
||||||
"uuid": "8bfc6dcb-22af-44e6-a2cf-62bab851e57c"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=18.0.0 <=20.x.x",
|
|
||||||
"npm": ">=6.0.0"
|
|
||||||
},
|
|
||||||
"license": "MIT"
|
|
||||||
}
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
# To prevent search engines from seeing the site altogether, uncomment the next two lines:
|
|
||||||
# User-Agent: *
|
|
||||||
# Disallow: /
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
const config = {
|
|
||||||
locales: [
|
|
||||||
// 'ar',
|
|
||||||
// 'fr',
|
|
||||||
// 'cs',
|
|
||||||
// 'de',
|
|
||||||
// 'dk',
|
|
||||||
// 'es',
|
|
||||||
// 'he',
|
|
||||||
// 'id',
|
|
||||||
// 'it',
|
|
||||||
// 'ja',
|
|
||||||
// 'ko',
|
|
||||||
// 'ms',
|
|
||||||
// 'nl',
|
|
||||||
// 'no',
|
|
||||||
// 'pl',
|
|
||||||
// 'pt-BR',
|
|
||||||
// 'pt',
|
|
||||||
// 'ru',
|
|
||||||
// 'sk',
|
|
||||||
// 'sv',
|
|
||||||
// 'th',
|
|
||||||
// 'tr',
|
|
||||||
// 'uk',
|
|
||||||
// 'vi',
|
|
||||||
// 'zh-Hans',
|
|
||||||
// 'zh',
|
|
||||||
],
|
|
||||||
};
|
|
||||||
|
|
||||||
const bootstrap = (app) => {
|
|
||||||
console.log(app);
|
|
||||||
};
|
|
||||||
|
|
||||||
export default {
|
|
||||||
config,
|
|
||||||
bootstrap,
|
|
||||||
};
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/* eslint-disable no-unused-vars */
|
|
||||||
module.exports = (config, webpack) => {
|
|
||||||
// Note: we provide webpack above so you should not `require` it
|
|
||||||
// Perform customizations to webpack config
|
|
||||||
// Important: return the modified config
|
|
||||||
return config;
|
|
||||||
};
|
|
||||||
@@ -1,40 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "contacts",
|
|
||||||
"info": {
|
|
||||||
"singularName": "contact",
|
|
||||||
"pluralName": "contacts",
|
|
||||||
"displayName": "Contacts",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": false
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"firstName": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"lastName": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"email": {
|
|
||||||
"type": "email"
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"customer": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "manyToOne",
|
|
||||||
"target": "api::customer.customer",
|
|
||||||
"inversedBy": "contacts"
|
|
||||||
},
|
|
||||||
"vendor": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "manyToOne",
|
|
||||||
"target": "api::vendor.vendor",
|
|
||||||
"inversedBy": "contacts"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* contact controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::contact.contact');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* contact router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::contact.contact');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* contact service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::contact.contact');
|
|
||||||
@@ -1,34 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "customers",
|
|
||||||
"info": {
|
|
||||||
"singularName": "customer",
|
|
||||||
"pluralName": "customers",
|
|
||||||
"displayName": "Customers",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": false
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"name": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"contacts": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "oneToMany",
|
|
||||||
"target": "api::contact.contact",
|
|
||||||
"mappedBy": "customer"
|
|
||||||
},
|
|
||||||
"customerNumber": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"projects": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "oneToMany",
|
|
||||||
"target": "api::project.project",
|
|
||||||
"mappedBy": "customer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* customer controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::customer.customer');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* customer router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::customer.customer');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* customer service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::customer.customer');
|
|
||||||
@@ -1,44 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "documents",
|
|
||||||
"info": {
|
|
||||||
"singularName": "document",
|
|
||||||
"pluralName": "documents",
|
|
||||||
"displayName": "Documents",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": false
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"name": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"file": {
|
|
||||||
"type": "media",
|
|
||||||
"multiple": false,
|
|
||||||
"required": true,
|
|
||||||
"allowedTypes": [
|
|
||||||
"images",
|
|
||||||
"files",
|
|
||||||
"videos",
|
|
||||||
"audios"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"project": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "oneToOne",
|
|
||||||
"target": "api::project.project"
|
|
||||||
},
|
|
||||||
"tags": {
|
|
||||||
"type": "json",
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"state": {
|
|
||||||
"type": "string",
|
|
||||||
"required": true,
|
|
||||||
"default": "Eingang"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* document controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::document.document');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* document router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::document.document');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* document service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::document.document');
|
|
||||||
@@ -1,18 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "forms",
|
|
||||||
"info": {
|
|
||||||
"singularName": "form",
|
|
||||||
"pluralName": "forms",
|
|
||||||
"displayName": "Forms"
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": true
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"fields": {
|
|
||||||
"type": "json"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* form controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::form.form');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* form router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::form.form');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* form service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::form.form');
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "movements",
|
|
||||||
"info": {
|
|
||||||
"singularName": "movement",
|
|
||||||
"pluralName": "movements",
|
|
||||||
"displayName": "Movements",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": true
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"productId": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"spaceId": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"quantity": {
|
|
||||||
"type": "integer"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* movement controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::movement.movement');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* movement router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::movement.movement');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* movement service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::movement.movement');
|
|
||||||
@@ -1,56 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "products",
|
|
||||||
"info": {
|
|
||||||
"singularName": "product",
|
|
||||||
"pluralName": "products",
|
|
||||||
"displayName": "Products",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": false
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"name": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"manufacturer": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"purchasePriceNet": {
|
|
||||||
"type": "decimal"
|
|
||||||
},
|
|
||||||
"profitPercentage": {
|
|
||||||
"type": "decimal"
|
|
||||||
},
|
|
||||||
"retailPriceNet": {
|
|
||||||
"type": "decimal"
|
|
||||||
},
|
|
||||||
"optionalProducts": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "oneToMany",
|
|
||||||
"target": "api::product.product"
|
|
||||||
},
|
|
||||||
"image": {
|
|
||||||
"type": "media",
|
|
||||||
"multiple": false,
|
|
||||||
"required": false,
|
|
||||||
"allowedTypes": [
|
|
||||||
"images",
|
|
||||||
"files",
|
|
||||||
"videos",
|
|
||||||
"audios"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"unit": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"tags": {
|
|
||||||
"type": "json"
|
|
||||||
},
|
|
||||||
"history": {
|
|
||||||
"type": "json"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* product controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::product.product');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* product router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::product.product');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* product service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::product.product');
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "projects",
|
|
||||||
"info": {
|
|
||||||
"singularName": "project",
|
|
||||||
"pluralName": "projects",
|
|
||||||
"displayName": "Projects",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": false
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"name": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"notes": {
|
|
||||||
"type": "text"
|
|
||||||
},
|
|
||||||
"customer": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "manyToOne",
|
|
||||||
"target": "api::customer.customer",
|
|
||||||
"inversedBy": "projects"
|
|
||||||
},
|
|
||||||
"phases": {
|
|
||||||
"type": "json"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* project controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::project.project');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* project router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::project.project');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* project service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::project.project');
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "spaces",
|
|
||||||
"info": {
|
|
||||||
"singularName": "space",
|
|
||||||
"pluralName": "spaces",
|
|
||||||
"displayName": "Spaces",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": false
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"description": {
|
|
||||||
"type": "text"
|
|
||||||
},
|
|
||||||
"type": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"spaceNumber": {
|
|
||||||
"type": "string",
|
|
||||||
"unique": true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* space controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::space.space');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* space router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::space.space');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* space service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::space.space');
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "tasks",
|
|
||||||
"info": {
|
|
||||||
"singularName": "task",
|
|
||||||
"pluralName": "tasks",
|
|
||||||
"displayName": "Tasks",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": false
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"name": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"description": {
|
|
||||||
"type": "text"
|
|
||||||
},
|
|
||||||
"categorie": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"users": {
|
|
||||||
"type": "json"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* task controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::task.task');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* task router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::task.task');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* task service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::task.task');
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "tenants",
|
|
||||||
"info": {
|
|
||||||
"singularName": "tenant",
|
|
||||||
"pluralName": "tenants",
|
|
||||||
"displayName": "Tenants",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": true
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"name": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"short": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"users": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "oneToMany",
|
|
||||||
"target": "plugin::users-permissions.user",
|
|
||||||
"mappedBy": "tenant"
|
|
||||||
},
|
|
||||||
"modules": {
|
|
||||||
"type": "json"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* tenant controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::tenant.tenant');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* tenant router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::tenant.tenant');
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* tenant service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::tenant.tenant');
|
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "vendors",
|
|
||||||
"info": {
|
|
||||||
"singularName": "vendor",
|
|
||||||
"pluralName": "vendors",
|
|
||||||
"displayName": "Vendors",
|
|
||||||
"description": ""
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": false
|
|
||||||
},
|
|
||||||
"pluginOptions": {},
|
|
||||||
"attributes": {
|
|
||||||
"name": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"vendorNumber": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"contacts": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "oneToMany",
|
|
||||||
"target": "api::contact.contact",
|
|
||||||
"mappedBy": "vendor"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
9
strapi/src/api/vendor/controllers/vendor.js
vendored
9
strapi/src/api/vendor/controllers/vendor.js
vendored
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* vendor controller
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreController } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreController('api::vendor.vendor');
|
|
||||||
9
strapi/src/api/vendor/routes/vendor.js
vendored
9
strapi/src/api/vendor/routes/vendor.js
vendored
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* vendor router
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreRouter } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreRouter('api::vendor.vendor');
|
|
||||||
9
strapi/src/api/vendor/services/vendor.js
vendored
9
strapi/src/api/vendor/services/vendor.js
vendored
@@ -1,9 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* vendor service
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { createCoreService } = require('@strapi/strapi').factories;
|
|
||||||
|
|
||||||
module.exports = createCoreService('api::vendor.vendor');
|
|
||||||
@@ -1,75 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "collectionType",
|
|
||||||
"collectionName": "up_users",
|
|
||||||
"info": {
|
|
||||||
"name": "user",
|
|
||||||
"description": "",
|
|
||||||
"singularName": "user",
|
|
||||||
"pluralName": "users",
|
|
||||||
"displayName": "User"
|
|
||||||
},
|
|
||||||
"options": {
|
|
||||||
"draftAndPublish": false
|
|
||||||
},
|
|
||||||
"attributes": {
|
|
||||||
"username": {
|
|
||||||
"type": "string",
|
|
||||||
"minLength": 3,
|
|
||||||
"unique": true,
|
|
||||||
"configurable": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"email": {
|
|
||||||
"type": "email",
|
|
||||||
"minLength": 6,
|
|
||||||
"configurable": false,
|
|
||||||
"required": true
|
|
||||||
},
|
|
||||||
"provider": {
|
|
||||||
"type": "string",
|
|
||||||
"configurable": false
|
|
||||||
},
|
|
||||||
"password": {
|
|
||||||
"type": "password",
|
|
||||||
"minLength": 6,
|
|
||||||
"configurable": false,
|
|
||||||
"private": true,
|
|
||||||
"searchable": false
|
|
||||||
},
|
|
||||||
"resetPasswordToken": {
|
|
||||||
"type": "string",
|
|
||||||
"configurable": false,
|
|
||||||
"private": true,
|
|
||||||
"searchable": false
|
|
||||||
},
|
|
||||||
"confirmationToken": {
|
|
||||||
"type": "string",
|
|
||||||
"configurable": false,
|
|
||||||
"private": true,
|
|
||||||
"searchable": false
|
|
||||||
},
|
|
||||||
"confirmed": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"configurable": false
|
|
||||||
},
|
|
||||||
"blocked": {
|
|
||||||
"type": "boolean",
|
|
||||||
"default": false,
|
|
||||||
"configurable": false
|
|
||||||
},
|
|
||||||
"role": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "manyToOne",
|
|
||||||
"target": "plugin::users-permissions.role",
|
|
||||||
"inversedBy": "users",
|
|
||||||
"configurable": false
|
|
||||||
},
|
|
||||||
"tenant": {
|
|
||||||
"type": "relation",
|
|
||||||
"relation": "manyToOne",
|
|
||||||
"target": "api::tenant.tenant",
|
|
||||||
"inversedBy": "users"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
'use strict';
|
|
||||||
|
|
||||||
module.exports = {
|
|
||||||
/**
|
|
||||||
* An asynchronous register function that runs before
|
|
||||||
* your application is initialized.
|
|
||||||
*
|
|
||||||
* This gives you an opportunity to extend code.
|
|
||||||
*/
|
|
||||||
register(/*{ strapi }*/) {},
|
|
||||||
|
|
||||||
/**
|
|
||||||
* An asynchronous bootstrap function that runs before
|
|
||||||
* your application gets started.
|
|
||||||
*
|
|
||||||
* This gives you an opportunity to set up your data model,
|
|
||||||
* run jobs, or perform some special logic.
|
|
||||||
*/
|
|
||||||
bootstrap(/*{ strapi }*/) {},
|
|
||||||
};
|
|
||||||
5
strapi/types/generated/components.d.ts
vendored
5
strapi/types/generated/components.d.ts
vendored
@@ -1,5 +0,0 @@
|
|||||||
import type { Schema, Attribute } from '@strapi/strapi';
|
|
||||||
|
|
||||||
declare module '@strapi/types' {
|
|
||||||
export module Shared {}
|
|
||||||
}
|
|
||||||
1103
strapi/types/generated/contentTypes.d.ts
vendored
1103
strapi/types/generated/contentTypes.d.ts
vendored
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user