Compare commits

...

4 Commits

Author SHA1 Message Date
e1baac7e3f upgrade vite 2023-04-28 15:45:10 +05:30
05d5ce26fd Adds Zip to the required PHP Extension check (#1146)
* Ignore .DS_Store

* Checks for required ZIP extension
2023-02-19 11:42:34 +05:30
393fe20010 Fix incorrect invoice creation message (#1109)
Creation message now includes the views disk in its path.
2022-12-17 18:20:51 +05:30
57bdbd2897 feat: front-end files bulding (#1098)
Co-authored-by: Aramayis <>
2022-12-17 18:19:49 +05:30
13 changed files with 2952 additions and 3036 deletions

View File

@ -14,8 +14,6 @@ jobs:
steps: steps:
- name: Checkout git repo - name: Checkout git repo
uses: actions/checkout@v3 uses: actions/checkout@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Generate UUID image name - name: Generate UUID image name
id: uuid id: uuid
run: echo "UUID_TAG_APP=$(uuidgen)" >> $GITHUB_ENV run: echo "UUID_TAG_APP=$(uuidgen)" >> $GITHUB_ENV
@ -33,11 +31,10 @@ jobs:
tags: ${{ steps.meta.outputs.tags }} tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }} labels: ${{ steps.meta.outputs.labels }}
file: ./uffizzi/Dockerfile file: ./uffizzi/Dockerfile
cache-from: type=gha
cache-to: type=gha,mode=max
build-nginx: build-nginx:
needs:
- build-application
name: Build and Push `nginx` name: Build and Push `nginx`
runs-on: ubuntu-latest runs-on: ubuntu-latest
if: ${{ github.event_name != 'pull_request' || github.event.action != 'closed' }} if: ${{ github.event_name != 'pull_request' || github.event.action != 'closed' }}
@ -65,6 +62,8 @@ jobs:
tags: ${{ steps.meta.outputs.tags }} tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }} labels: ${{ steps.meta.outputs.labels }}
file: ./uffizzi/nginx/Dockerfile file: ./uffizzi/nginx/Dockerfile
build-args: |
BASE_IMAGE=${{ needs.build-application.outputs.tags }}
cache-from: type=gha cache-from: type=gha
cache-to: type=gha,mode=max cache-to: type=gha,mode=max

3
.gitignore vendored
View File

@ -16,4 +16,5 @@ Homestead.yaml
.gitkeep .gitkeep
/public/docs /public/docs
/.scribe /.scribe
!storage/fonts/.gitkeep !storage/fonts/.gitkeep
.DS_Store

View File

@ -55,7 +55,7 @@ class CreateTemplateCommand extends Command
copy(public_path("/build/img/PDF/{$type}1.png"), public_path("/build/img/PDF/{$templateName}.png")); copy(public_path("/build/img/PDF/{$type}1.png"), public_path("/build/img/PDF/{$templateName}.png"));
copy(resource_path("/static/img/PDF/{$type}1.png"), resource_path("/static/img/PDF/{$templateName}.png")); copy(resource_path("/static/img/PDF/{$type}1.png"), resource_path("/static/img/PDF/{$templateName}.png"));
$path = resource_path("app/pdf/{$type}/{$templateName}.blade.php"); $path = resource_path("views/app/pdf/{$type}/{$templateName}.blade.php");
$type = ucfirst($type); $type = ucfirst($type);
$this->info("{$type} Template created successfully at ".$path); $this->info("{$type} Template created successfully at ".$path);

View File

@ -17,7 +17,6 @@
"fideloper/proxy": "^4.0", "fideloper/proxy": "^4.0",
"fruitcake/laravel-cors": "^1.0", "fruitcake/laravel-cors": "^1.0",
"guzzlehttp/guzzle": "^7.0.1", "guzzlehttp/guzzle": "^7.0.1",
"innocenzi/laravel-vite": "^0.1.1",
"intervention/image": "^2.3", "intervention/image": "^2.3",
"jasonmccreary/laravel-test-assertions": "^2.0", "jasonmccreary/laravel-test-assertions": "^2.0",
"laravel/framework": "^8.0", "laravel/framework": "^8.0",

2709
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -27,6 +27,7 @@ return [
'tokenizer', 'tokenizer',
'JSON', 'JSON',
'cURL', 'cURL',
'zip',
], ],
'apache' => [ 'apache' => [
'mod_rewrite', 'mod_rewrite',

View File

@ -1,67 +0,0 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Entrypoints
|--------------------------------------------------------------------------
| The files in the configured directories will be considered
| entry points and will not be required in the configuration file.
| To disable the feature, set to false.
*/
'entrypoints' => [
'resources/scripts/main.js',
],
'ignore_patterns' => ["/\.d\.ts$/"],
/*
|--------------------------------------------------------------------------
| Aliases
|--------------------------------------------------------------------------
| These aliases will be added to the Vite configuration and used
| to generate a proper tsconfig.json file.
*/
'aliases' => [
'@' => 'resources',
],
/*
|--------------------------------------------------------------------------
| Static assets path
|--------------------------------------------------------------------------
| This option defines the directory that Vite considers as the
| public directory. Its content will be copied to the build directory
| at build-time.
| https://vitejs.dev/config/#publicdir
*/
'public_directory' => resource_path('static'),
/*
|--------------------------------------------------------------------------
| Ping timeout
|--------------------------------------------------------------------------
| The maximum duration, in seconds, that the ping to the development
| server should take while trying to determine whether to use the
| manifest or the server in a local environment.
*/
'ping_timeout' => .1,
/*
|--------------------------------------------------------------------------
| Build path
|--------------------------------------------------------------------------
| The directory, relative to /public, in which Vite will build
| the production files. This should match "build.outDir" in the Vite
| configuration file.
*/
'build_path' => 'build',
/*
|--------------------------------------------------------------------------
| Development URL
|--------------------------------------------------------------------------
| The URL at which the Vite development server runs.
| This is used to generate the script tags when developing.
*/
'dev_url' => 'http://localhost:3000',
];

View File

@ -1,7 +1,7 @@
{ {
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "vite", "dev": "vite --port=3000",
"build": "vite build", "build": "vite build",
"serve": "vite preview", "serve": "vite preview",
"test": "eslint ./resources/scripts --ext .js,.vue" "test": "eslint ./resources/scripts --ext .js,.vue"
@ -18,13 +18,12 @@
"eslint": "^7.27.0", "eslint": "^7.27.0",
"eslint-config-prettier": "^8.3.0", "eslint-config-prettier": "^8.3.0",
"eslint-plugin-vue": "^7.0.0-beta.4", "eslint-plugin-vue": "^7.0.0-beta.4",
"laravel-vite": "^0.0.7",
"postcss": "^8.4.5", "postcss": "^8.4.5",
"prettier": "^2.3.0", "prettier": "^2.3.0",
"sass": "^1.32.12", "sass": "^1.32.12",
"tailwind-scrollbar": "^1.3.1", "tailwind-scrollbar": "^1.3.1",
"tailwindcss": "^3.0.6", "tailwindcss": "^3.0.6",
"vite": "^2.6.1" "vite": "^4.0.0"
}, },
"dependencies": { "dependencies": {
"@headlessui/vue": "^1.4.0", "@headlessui/vue": "^1.4.0",
@ -32,10 +31,11 @@
"@popperjs/core": "^2.9.2", "@popperjs/core": "^2.9.2",
"@stripe/stripe-js": "^1.21.2", "@stripe/stripe-js": "^1.21.2",
"@tailwindcss/line-clamp": "^0.3.0", "@tailwindcss/line-clamp": "^0.3.0",
"@tiptap/core": "^2.0.0-beta.85", "@tiptap/core": "^2.0.3",
"@tiptap/extension-text-align": "^2.0.0-beta.29", "@tiptap/extension-text-align": "^2.0.3",
"@tiptap/starter-kit": "^2.0.0-beta.81", "@tiptap/pm": "^2.0.3",
"@tiptap/vue-3": "^2.0.0-beta.38", "@tiptap/starter-kit": "^2.0.3",
"@tiptap/vue-3": "^2.0.3",
"@vuelidate/components": "^1.1.12", "@vuelidate/components": "^1.1.12",
"@vuelidate/core": "^2.0.0-alpha.32", "@vuelidate/core": "^2.0.0-alpha.32",
"@vuelidate/validators": "^2.0.0-alpha.25", "@vuelidate/validators": "^2.0.0-alpha.25",
@ -43,6 +43,7 @@
"axios": "^0.19", "axios": "^0.19",
"chart.js": "^2.7.3", "chart.js": "^2.7.3",
"guid": "0.0.12", "guid": "0.0.12",
"laravel-vite-plugin": "^0.7.4",
"lodash": "^4.17.13", "lodash": "^4.17.13",
"maska": "^1.4.6", "maska": "^1.4.6",
"mini-svg-data-uri": "^1.3.3", "mini-svg-data-uri": "^1.3.3",

View File

@ -21,7 +21,7 @@
<link rel="stylesheet" href="/modules/styles/{{ $name }}"> <link rel="stylesheet" href="/modules/styles/{{ $name }}">
@endforeach @endforeach
@vite @vite('resources/scripts/main.js')
</head> </head>
<body <body
@ -57,15 +57,15 @@
window.login_page_description = "{{$login_page_description}}" window.login_page_description = "{{$login_page_description}}"
@endif @endif
@if(isset($copyright_text)) @if(isset($copyright_text))
window.copyright_text = "{{$copyright_text}}" window.copyright_text = "{{$copyright_text}}"
@endif @endif
window.Crater.start() // window.Crater.start()
</script> </script>
</body> </body>
</html> </html>

View File

@ -11,7 +11,8 @@ RUN apt-get update && apt-get install -y \
unzip \ unzip \
libzip-dev \ libzip-dev \
libmagickwand-dev \ libmagickwand-dev \
mariadb-client mariadb-client \
npm
# Clear cache # Clear cache
RUN apt-get clean && rm -rf /var/lib/apt/lists/* RUN apt-get clean && rm -rf /var/lib/apt/lists/*
@ -45,4 +46,19 @@ RUN chmod -R 775 composer.json composer.lock \
RUN chown -R $(whoami):$(whoami) /var/log/ RUN chown -R $(whoami):$(whoami) /var/log/
RUN chmod -R 775 /var/log RUN chmod -R 775 /var/log
# Cleanup manually generated build files
RUN rm -rf /var/www/public/build
RUN npm config set user 0
RUN npm config set unsafe-perm true
# Frontend bulding
RUN sed -i 's/DB_CONNECTION=mysql/DB_CONNECTION=sqlite/g' /var/www/.env
RUN sed -i 's/DB_DATABASE=crater/DB_DATABASE=\/tmp\/crater.sqlite/g' /var/www/.env
RUN touch /tmp/crater.sqlite
RUN composer install --no-interaction --prefer-dist
RUN npm i -f
RUN npm install --save-dev sass
RUN export NODE_OPTIONS="--max-old-space-size=4096" && /usr/bin/npx vite build --target=es2020
RUN sed -i 's/DB_CONNECTION=sqlite/DB_CONNECTION=mysql/g' /var/www/.env
RUN sed -i 's/DB_DATABASE=\/tmp\/crater.sqlite/DB_DATABASE=crater/g' /var/www/.env
USER crater-user USER crater-user

View File

@ -1,7 +1,9 @@
ARG BASE_IMAGE
FROM $BASE_IMAGE as build
FROM nginx:1.17-alpine FROM nginx:1.17-alpine
RUN rm /etc/nginx/conf.d/default.conf RUN rm /etc/nginx/conf.d/default.conf
COPY ./ /var/www COPY --from=build /var/www /var/www
COPY ./uffizzi/nginx/nginx /etc/nginx/conf.d/ COPY ./uffizzi/nginx/nginx /etc/nginx/conf.d/

View File

@ -1,17 +1,24 @@
import { defineConfig } from 'laravel-vite' import { defineConfig } from 'vite'
import laravel from 'laravel-vite-plugin'
import vue from '@vitejs/plugin-vue' import vue from '@vitejs/plugin-vue'
export default defineConfig({ export default defineConfig({
server: { server: {
watch: { watch: {
ignored: ['**/.env/**'], ignored: ['**/.env/**'],
}, },
}, },
plugins: [
vue(),
laravel({
input: ['resources/scripts/main.js'],
valetTls: false,
}),
],
resolve: { resolve: {
alias: { alias: {
"vue-i18n": "vue-i18n/dist/vue-i18n.cjs.js" '@': '/resources',
} 'vue-i18n': 'vue-i18n/dist/vue-i18n.cjs.js'
} },
}).withPlugins( },
vue })
)

3118
yarn.lock

File diff suppressed because it is too large Load Diff