update frappe - jingrow
This commit is contained in:
parent
2033661f3d
commit
65265b0ace
@ -200,7 +200,7 @@
|
||||
"frappeclient",
|
||||
"frappehr",
|
||||
"Frappeio",
|
||||
"frappeui",
|
||||
"jingrowui",
|
||||
"fremovexattr",
|
||||
"fsetxattr",
|
||||
"fstype",
|
||||
|
||||
10
.github/helper/install.sh
vendored
10
.github/helper/install.sh
vendored
@ -6,21 +6,21 @@ cd ~ || exit
|
||||
|
||||
sudo apt update && sudo apt install redis-server libcups2-dev
|
||||
|
||||
pip install frappe-bench
|
||||
bench init --skip-assets --python "$(which python)" ~/frappe-bench --frappe-path http://git.jingrow.com/balamurali27/frappe --frappe-branch fc-ci
|
||||
pip install jingrow-bench
|
||||
bench init --skip-assets --python "$(which python)" ~/jingrow-bench --jingrow-path http://git.jingrow.com/balamurali27/jingrow --jingrow-branch fc-ci
|
||||
|
||||
mysql --host 127.0.0.1 --port 3306 -u root -proot -e "SET GLOBAL character_set_server = 'utf8mb4'"
|
||||
mysql --host 127.0.0.1 --port 3306 -u root -proot -e "SET GLOBAL collation_server = 'utf8mb4_unicode_ci'"
|
||||
|
||||
install_whktml() {
|
||||
wget -O /tmp/wkhtmltox.tar.xz http://git.jingrow.com/frappe/wkhtmltopdf/raw/master/wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
|
||||
wget -O /tmp/wkhtmltox.tar.xz http://git.jingrow.com/jingrow/wkhtmltopdf/raw/master/wkhtmltox-0.12.3_linux-generic-amd64.tar.xz
|
||||
tar -xf /tmp/wkhtmltox.tar.xz -C /tmp
|
||||
sudo mv /tmp/wkhtmltox/bin/wkhtmltopdf /usr/local/bin/wkhtmltopdf
|
||||
sudo chmod o+x /usr/local/bin/wkhtmltopdf
|
||||
}
|
||||
install_whktml &
|
||||
|
||||
cd ~/frappe-bench || exit
|
||||
cd ~/jingrow-bench || exit
|
||||
|
||||
sed -i 's/watch:/# watch:/g' Procfile
|
||||
sed -i 's/schedule:/# schedule:/g' Procfile
|
||||
@ -32,7 +32,7 @@ bench get-app press "${GITHUB_WORKSPACE}"
|
||||
bench setup requirements --dev
|
||||
|
||||
bench start &> bench_start_logs.txt &
|
||||
CI=Yes bench build --app frappe &
|
||||
CI=Yes bench build --app jingrow &
|
||||
bench new-site --db-root-password root --admin-password admin test_site
|
||||
bench --site test_site install-app press
|
||||
bench set-config -g server_script_enabled 1
|
||||
|
||||
26
.github/workflows/main.yaml
vendored
26
.github/workflows/main.yaml
vendored
@ -10,9 +10,9 @@ on:
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
DB_NAME: test_frappe
|
||||
DB_USER: test_frappe
|
||||
DB_PASSWORD: test_frappe
|
||||
DB_NAME: test_jingrow
|
||||
DB_USER: test_jingrow
|
||||
DB_PASSWORD: test_jingrow
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.ref }}
|
||||
@ -162,22 +162,22 @@ jobs:
|
||||
uses: crazy-max/ghaction-github-runtime@v3
|
||||
|
||||
- name: Install Playwright browsers
|
||||
working-directory: /home/runner/frappe-bench/apps/press/dashboard
|
||||
working-directory: /home/runner/jingrow-bench/apps/press/dashboard
|
||||
run: npx playwright install chromium
|
||||
|
||||
- name: Setup Test Users
|
||||
working-directory: /home/runner/frappe-bench/apps/press/dashboard
|
||||
working-directory: /home/runner/jingrow-bench/apps/press/dashboard
|
||||
run: |
|
||||
bench --site test_site execute press.press.doctype.team.test_team.create_test_press_admin_team \
|
||||
--kwargs "{\"email\": \"${PRESS_ADMIN_USER_EMAIL}\", \"free_account\": True, \"skip_onboarding\": True}"
|
||||
bench --site test_site set-password "$PRESS_ADMIN_USER_EMAIL" "$PRESS_ADMIN_USER_PASSWORD"
|
||||
|
||||
- name: Run Playwright Tests
|
||||
working-directory: /home/runner/frappe-bench/apps/press/dashboard
|
||||
working-directory: /home/runner/jingrow-bench/apps/press/dashboard
|
||||
run: npx playwright test --project=chromium
|
||||
|
||||
- name: Generate Coverage Report
|
||||
working-directory: /home/runner/frappe-bench/apps/press/dashboard
|
||||
working-directory: /home/runner/jingrow-bench/apps/press/dashboard
|
||||
run: npx nyc report --reporter=cobertura --reporter=text --report-dir=./coverage
|
||||
|
||||
- name: Upload Playwright Test report
|
||||
@ -185,13 +185,13 @@ jobs:
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: playwright-report
|
||||
path: /home/runner/frappe-bench/apps/press/dashboard/playwright-report
|
||||
path: /home/runner/jingrow-bench/apps/press/dashboard/playwright-report
|
||||
|
||||
- name: Upload coverage data
|
||||
uses: codecov/codecov-action@v5
|
||||
with:
|
||||
disable_search: true
|
||||
files: /home/runner/frappe-bench/apps/press/dashboard/coverage/cobertura-coverage.xml
|
||||
files: /home/runner/jingrow-bench/apps/press/dashboard/coverage/cobertura-coverage.xml
|
||||
fail_ci_if_error: false
|
||||
verbose: true
|
||||
token: ${{ secrets.CODECOV_TOKEN }}
|
||||
@ -280,26 +280,26 @@ jobs:
|
||||
install: true
|
||||
|
||||
- name: Run Tests
|
||||
working-directory: /home/runner/frappe-bench
|
||||
working-directory: /home/runner/jingrow-bench
|
||||
run: |
|
||||
bench --site test_site set-config allow_tests true
|
||||
bench --site test_site run-parallel-tests --app press --with-coverage --total-builds 2 --build-number ${{ matrix.container }}
|
||||
env:
|
||||
TYPE: server
|
||||
COVERAGE_RCFILE: /home/runner/frappe-bench/apps/press/.coveragerc
|
||||
COVERAGE_RCFILE: /home/runner/jingrow-bench/apps/press/.coveragerc
|
||||
|
||||
- name: Upload coverage reports to Codecov
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: coverage-${{ matrix.container }}
|
||||
path: /home/runner/frappe-bench/sites/coverage.xml
|
||||
path: /home/runner/jingrow-bench/sites/coverage.xml
|
||||
if: always()
|
||||
|
||||
- name: Upload bench start logs
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: bench-start-logs-${{ matrix.container }}
|
||||
path: /home/runner/frappe-bench/bench_start_logs.txt
|
||||
path: /home/runner/jingrow-bench/bench_start_logs.txt
|
||||
if: always()
|
||||
|
||||
coverage:
|
||||
|
||||
2
.gitignore
vendored
2
.gitignore
vendored
@ -129,7 +129,7 @@ dmypy.json
|
||||
# Pyre type checker
|
||||
.pyre/
|
||||
|
||||
# Added by frappe
|
||||
# Added by jingrow
|
||||
.DS_Store
|
||||
*.pyc
|
||||
*.egg-info
|
||||
|
||||
@ -3,7 +3,7 @@ pull_request_rules:
|
||||
conditions:
|
||||
- and:
|
||||
- and:
|
||||
- author!=frappe-pr-bot
|
||||
- author!=jingrow-pr-bot
|
||||
- author!=mergify[bot]
|
||||
- author!=github-actions
|
||||
- or:
|
||||
|
||||
@ -5,7 +5,7 @@
|
||||
|
||||
**Full Service Cloud Hosting For The Frappe Stack - Powers Frappe Cloud**
|
||||
|
||||
[](https://codecov.io/gh/frappe/press)
|
||||
[](https://codecov.io/gh/jingrow/press)
|
||||
[](http://git.jingrow.com/jingrow/jcloude/actions/workflows/main.yaml)
|
||||
|
||||
</div>
|
||||
@ -55,9 +55,9 @@ Additionally, customers lacked full control over their servers—no SSH access,
|
||||
|
||||
### Under the Hood
|
||||
|
||||
- [**Frappe Framework**](http://git.jingrow.com/frappe/frappe): A full-stack web application framework written in Python and Javascript. The framework provides a robust foundation for building web applications, including a database abstraction layer, user authentication, and a REST API.
|
||||
- [**Frappe Framework**](http://git.jingrow.com/jingrow/jingrow): A full-stack web application framework written in Python and Javascript. The framework provides a robust foundation for building web applications, including a database abstraction layer, user authentication, and a REST API.
|
||||
|
||||
- [**Frappe UI**](http://git.jingrow.com/frappe/frappe-ui): A Vue-based UI library, to provide a modern user interface. The Frappe UI library provides a variety of components that can be used to build single-page applications on top of the Frappe Framework.
|
||||
- [**Frappe UI**](http://git.jingrow.com/jingrow/jingrow-ui): A Vue-based UI library, to provide a modern user interface. The Frappe UI library provides a variety of components that can be used to build single-page applications on top of the Frappe Framework.
|
||||
|
||||
- [**Agent**](http://git.jingrow.com/jingrow/agent): A flask app designed to work along with Press. It provides a CLI interface for Press to communicate with the sites and benches.
|
||||
|
||||
@ -80,7 +80,7 @@ pre-commit install
|
||||
## Learn and connect
|
||||
|
||||
- [Telegram Public Group](https://t.me/frappecloud)
|
||||
- [Discuss Forum](https://discuss.framework.jingrow.com/c/frappe-cloud/77)
|
||||
- [Discuss Forum](https://discuss.framework.jingrow.com/c/jingrow-cloud/77)
|
||||
- [Documentation](https://docs.framework.jingrow.com/cloud)
|
||||
|
||||
<br/>
|
||||
|
||||
@ -6,7 +6,7 @@ users:
|
||||
- name: root
|
||||
shell: /usr/bin/bash
|
||||
|
||||
- name: frappe
|
||||
- name: jingrow
|
||||
gecos: Frappe
|
||||
groups: sudo
|
||||
lock_passwd: false
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
# For license information, please see license.txt
|
||||
from unittest.mock import MagicMock
|
||||
|
||||
from frappe.tests.utils import FrappeTestCase
|
||||
from jingrow.tests.utils import FrappeTestCase
|
||||
|
||||
from backbone.hypervisor import Hypervisor
|
||||
|
||||
|
||||
52
backbone/vagrant/Vagrantfile
vendored
52
backbone/vagrant/Vagrantfile
vendored
@ -37,8 +37,8 @@ Vagrant.configure("2") do |config|
|
||||
# Default Cluster
|
||||
|
||||
# Reverse Proxy Server
|
||||
config.vm.define "n1.local.frappe.dev" do |n1|
|
||||
n1.vm.hostname = "n1.local.frappe.dev"
|
||||
config.vm.define "n1.local.jingrow.dev" do |n1|
|
||||
n1.vm.hostname = "n1.local.jingrow.dev"
|
||||
n1.vm.network "private_network", ip: "10.0.1.101", netmask: "255.255.0.0"
|
||||
n1.vm.network "private_network", ip: "10.1.1.101", netmask: "255.255.0.0"
|
||||
n1.vm.provider :libvirt do |libvirt|
|
||||
@ -47,8 +47,8 @@ Vagrant.configure("2") do |config|
|
||||
end
|
||||
|
||||
# Primary App Server
|
||||
config.vm.define "f1.local.frappe.dev" do |f1|
|
||||
f1.vm.hostname = "f1.local.frappe.dev"
|
||||
config.vm.define "f1.local.jingrow.dev" do |f1|
|
||||
f1.vm.hostname = "f1.local.jingrow.dev"
|
||||
f1.vm.network "private_network", ip: "10.0.2.101", netmask: "255.255.0.0"
|
||||
f1.vm.network "private_network", ip: "10.1.2.101", netmask: "255.255.0.0"
|
||||
f1.vm.provider :libvirt do |libvirt|
|
||||
@ -58,8 +58,8 @@ Vagrant.configure("2") do |config|
|
||||
end
|
||||
|
||||
# Replica of f1
|
||||
# config.vm.define "f2.local.frappe.dev" do |f2|
|
||||
# f2.vm.hostname = "f2.local.frappe.dev"
|
||||
# config.vm.define "f2.local.jingrow.dev" do |f2|
|
||||
# f2.vm.hostname = "f2.local.jingrow.dev"
|
||||
# f2.vm.network "private_network", ip: "10.0.2.102", netmask: "255.255.0.0"
|
||||
# f2.vm.network "private_network", ip: "10.1.2.102", netmask: "255.255.0.0"
|
||||
# f2.vm.provider :libvirt do |libvirt|
|
||||
@ -69,8 +69,8 @@ Vagrant.configure("2") do |config|
|
||||
# end
|
||||
|
||||
# Primary DB Server
|
||||
config.vm.define "m1.local.frappe.dev" do |m1|
|
||||
m1.vm.hostname = "m1.local.frappe.dev"
|
||||
config.vm.define "m1.local.jingrow.dev" do |m1|
|
||||
m1.vm.hostname = "m1.local.jingrow.dev"
|
||||
m1.vm.network "private_network", ip: "10.0.3.101", netmask: "255.255.0.0"
|
||||
m1.vm.network "private_network", ip: "10.1.3.101", netmask: "255.255.0.0"
|
||||
m1.vm.provider :libvirt do |libvirt|
|
||||
@ -80,8 +80,8 @@ Vagrant.configure("2") do |config|
|
||||
end
|
||||
|
||||
# Replica of m1
|
||||
# config.vm.define "m2.local.frappe.dev" do |m2|
|
||||
# m2.vm.hostname = "m2.local.frappe.dev"
|
||||
# config.vm.define "m2.local.jingrow.dev" do |m2|
|
||||
# m2.vm.hostname = "m2.local.jingrow.dev"
|
||||
# m2.vm.network "private_network", ip: "10.0.3.102", netmask: "255.255.0.0"
|
||||
# m2.vm.network "private_network", ip: "10.1.3.102", netmask: "255.255.0.0"
|
||||
# m2.vm.provider :libvirt do |libvirt|
|
||||
@ -91,8 +91,8 @@ Vagrant.configure("2") do |config|
|
||||
# end
|
||||
|
||||
# # Secondary Cluster
|
||||
# config.vm.define "n2.frappe.dev" do |n2|
|
||||
# n2.vm.hostname = "n2.frappe.dev"
|
||||
# config.vm.define "n2.jingrow.dev" do |n2|
|
||||
# n2.vm.hostname = "n2.jingrow.dev"
|
||||
# n2.vm.network "private_network", ip: "10.0.1.102", netmask: "255.255.0.0"
|
||||
# n2.vm.network "private_network", ip: "10.1.1.102", netmask: "255.255.0.0"
|
||||
# end
|
||||
@ -100,15 +100,15 @@ Vagrant.configure("2") do |config|
|
||||
# Additional Hosts.
|
||||
|
||||
# Docker Registry
|
||||
config.vm.define "registry.local.frappe.dev" do |registry|
|
||||
registry.vm.hostname = "registry.local.frappe.dev"
|
||||
config.vm.define "registry.local.jingrow.dev" do |registry|
|
||||
registry.vm.hostname = "registry.local.jingrow.dev"
|
||||
registry.vm.network "private_network", ip: "10.0.4.101", netmask: "255.255.0.0"
|
||||
registry.vm.network "private_network", ip: "10.1.4.101", netmask: "255.255.0.0"
|
||||
end
|
||||
|
||||
# Log Server = ElasticSearch + Logstash + Kibana
|
||||
config.vm.define "log.local.frappe.dev" do |log|
|
||||
log.vm.hostname = "log.local.frappe.dev"
|
||||
config.vm.define "log.local.jingrow.dev" do |log|
|
||||
log.vm.hostname = "log.local.jingrow.dev"
|
||||
log.vm.network "private_network", ip: "10.0.4.102", netmask: "255.255.0.0"
|
||||
log.vm.network "private_network", ip: "10.1.4.102", netmask: "255.255.0.0"
|
||||
log.vm.provider :libvirt do |libvirt|
|
||||
@ -118,8 +118,8 @@ Vagrant.configure("2") do |config|
|
||||
end
|
||||
|
||||
# Uptime Server = Prometheus + Grafana
|
||||
config.vm.define "monitor.local.frappe.dev" do |monitor|
|
||||
monitor.vm.hostname = "monitor.local.frappe.dev"
|
||||
config.vm.define "monitor.local.jingrow.dev" do |monitor|
|
||||
monitor.vm.hostname = "monitor.local.jingrow.dev"
|
||||
monitor.vm.network "private_network", ip: "10.0.4.103", netmask: "255.255.0.0"
|
||||
monitor.vm.network "private_network", ip: "10.1.4.103", netmask: "255.255.0.0"
|
||||
monitor.vm.provider :libvirt do |libvirt|
|
||||
@ -128,8 +128,8 @@ Vagrant.configure("2") do |config|
|
||||
end
|
||||
|
||||
# Analytics Server = Plausible
|
||||
# config.vm.define "analytics.local.frappe.dev" do |analytics|
|
||||
# analytics.vm.hostname = "analytics.local.frappe.dev"
|
||||
# config.vm.define "analytics.local.jingrow.dev" do |analytics|
|
||||
# analytics.vm.hostname = "analytics.local.jingrow.dev"
|
||||
# analytics.vm.network "private_network", ip: "10.0.4.104", netmask: "255.255.0.0"
|
||||
# analytics.vm.network "private_network", ip: "10.1.4.104", netmask: "255.255.0.0"
|
||||
# analytics.vm.provider :libvirt do |libvirt|
|
||||
@ -138,8 +138,8 @@ Vagrant.configure("2") do |config|
|
||||
# end
|
||||
|
||||
# Trace Server = Sentry
|
||||
config.vm.define "trace.local.frappe.dev" do |trace|
|
||||
trace.vm.hostname = "trace.local.frappe.dev"
|
||||
config.vm.define "trace.local.jingrow.dev" do |trace|
|
||||
trace.vm.hostname = "trace.local.jingrow.dev"
|
||||
trace.vm.network "private_network", ip: "10.0.4.105", netmask: "255.255.0.0"
|
||||
trace.vm.network "private_network", ip: "10.1.4.105", netmask: "255.255.0.0"
|
||||
trace.vm.provider :libvirt do |libvirt|
|
||||
@ -148,16 +148,16 @@ Vagrant.configure("2") do |config|
|
||||
end
|
||||
end
|
||||
|
||||
# config.vm.define "sn1.local.frappe.dev" do |sn1|
|
||||
# config.vm.define "sn1.local.jingrow.dev" do |sn1|
|
||||
# sn1.vm.box = "scaleway"
|
||||
# sn1.vm.hostname = "sn1.local.frappe.dev"
|
||||
# sn1.vm.hostname = "sn1.local.jingrow.dev"
|
||||
# sn1.vm.network "private_network", ip: "10.2.0.101", netmask: "255.255.0.0"
|
||||
# sn1.vm.network "private_network", ip: "10.3.0.101", netmask: "255.255.0.0", auto_config: false
|
||||
# end
|
||||
|
||||
# config.vm.define "sf1.local.frappe.dev" do |sf1|
|
||||
# config.vm.define "sf1.local.jingrow.dev" do |sf1|
|
||||
# sf1.vm.box = "scaleway"
|
||||
# sf1.vm.hostname = "sf1.local.frappe.dev"
|
||||
# sf1.vm.hostname = "sf1.local.jingrow.dev"
|
||||
# sf1.vm.network "private_network", ip: "10.2.1.101", netmask: "255.255.0.0"
|
||||
# sf1.vm.network "private_network", ip: "10.3.1.101", netmask: "255.255.0.0", auto_config: false
|
||||
# sf1.vm.provider :libvirt do |libvirt|
|
||||
|
||||
@ -30,8 +30,8 @@
|
||||
"dayjs": "^1.10.7",
|
||||
"echarts": "^5.4.3",
|
||||
"feather-icons": "^4.26.0",
|
||||
"frappe-charts": "2.0.0-rc22",
|
||||
"frappe-ui": "0.1.168",
|
||||
"jingrow-charts": "2.0.0-rc22",
|
||||
"jingrow-ui": "0.1.168",
|
||||
"fuse.js": "6.6.2",
|
||||
"libarchive.js": "^1.3.0",
|
||||
"lodash": "^4.17.19",
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
@import 'frappe-ui/src/style.css';
|
||||
@import 'jingrow-ui/src/style.css';
|
||||
|
||||
@layer components {
|
||||
/* Works on Firefox */
|
||||
|
||||
@ -59,10 +59,10 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { createResource } from 'frappe-ui';
|
||||
import { createResource } from 'jingrow-ui';
|
||||
import { computed, reactive, ref } from 'vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { Checkbox, Textarea } from 'frappe-ui';
|
||||
import { Checkbox, Textarea } from 'jingrow-ui';
|
||||
|
||||
const props = defineProps<{
|
||||
doctype: string;
|
||||
|
||||
@ -58,7 +58,7 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { createResource } from 'frappe-ui';
|
||||
import { createResource } from 'jingrow-ui';
|
||||
import { ref } from 'vue';
|
||||
import dayjs from '../utils/dayjs';
|
||||
|
||||
|
||||
@ -13,7 +13,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Button, Dropdown } from 'frappe-ui';
|
||||
import { Button, Dropdown } from 'jingrow-ui';
|
||||
import { icon } from '../utils/components';
|
||||
|
||||
export default {
|
||||
|
||||
@ -39,7 +39,7 @@ import {
|
||||
Dialog,
|
||||
FormControl,
|
||||
getCachedDocumentResource,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'AddTagDialog',
|
||||
|
||||
@ -53,7 +53,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script>
|
||||
import { Button, Dialog, FeatherIcon, ErrorMessage } from 'frappe-ui';
|
||||
import { Button, Dialog, FeatherIcon, ErrorMessage } from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
props: {
|
||||
|
||||
@ -73,7 +73,7 @@
|
||||
<script>
|
||||
import { defineAsyncComponent } from 'vue';
|
||||
import AppSidebarItem from './AppSidebarItem.vue';
|
||||
import { Tooltip } from 'frappe-ui';
|
||||
import { Tooltip } from 'jingrow-ui';
|
||||
import NavigationItems from './NavigationItems.vue';
|
||||
import AppSidebarItemGroup from './AppSidebarItemGroup.vue';
|
||||
|
||||
@ -99,7 +99,7 @@ export default {
|
||||
},
|
||||
feedback() {
|
||||
window.open(
|
||||
'https://jcloud.jingrow.com/frappe-cloud-feedback/new',
|
||||
'https://jcloud.jingrow.com/jingrow-cloud-feedback/new',
|
||||
'_blank',
|
||||
);
|
||||
},
|
||||
|
||||
@ -120,7 +120,7 @@ import {
|
||||
ComboboxOptions,
|
||||
} from '@headlessui/vue';
|
||||
import { ComputedRef, PropType, computed, ref, watch } from 'vue';
|
||||
import { Popover } from 'frappe-ui';
|
||||
import { Popover } from 'jingrow-ui';
|
||||
|
||||
type Option = {
|
||||
label: string;
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { Avatar } from 'frappe-ui';
|
||||
import { Avatar } from 'jingrow-ui';
|
||||
const props = defineProps({
|
||||
users: { type: Array, required: true },
|
||||
});
|
||||
|
||||
@ -66,7 +66,7 @@
|
||||
</template>
|
||||
<script>
|
||||
import FileUploader from './FileUploader.vue';
|
||||
import { createResource } from 'frappe-ui';
|
||||
import { createResource } from 'jingrow-ui';
|
||||
import { toast } from 'vue-sonner';
|
||||
|
||||
export default {
|
||||
|
||||
@ -99,7 +99,7 @@ export default {
|
||||
key: data.key_id,
|
||||
order_id: data.order_id,
|
||||
name: 'Frappe Cloud',
|
||||
image: '/assets/press/images/frappe-cloud-logo.png',
|
||||
image: '/assets/press/images/jingrow-cloud-logo.png',
|
||||
prefill: {
|
||||
email: this.$team.pg.user,
|
||||
},
|
||||
|
||||
@ -51,7 +51,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { FormControl } from 'frappe-ui';
|
||||
import { FormControl } from 'jingrow-ui';
|
||||
import StarRatingInput from './StarRatingInput.vue';
|
||||
import { DashboardError } from '../utils/error';
|
||||
|
||||
|
||||
@ -73,7 +73,7 @@
|
||||
|
||||
<script>
|
||||
import { h } from 'vue';
|
||||
import { Select, TextInput } from 'frappe-ui';
|
||||
import { Select, TextInput } from 'jingrow-ui';
|
||||
import GenericList from './GenericList.vue';
|
||||
import AlertBanner from './AlertBanner.vue';
|
||||
|
||||
|
||||
@ -79,7 +79,7 @@ import {
|
||||
ErrorMessage,
|
||||
FormControl,
|
||||
getCachedDocumentResource,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'ConfigEditorDialog',
|
||||
|
||||
@ -39,7 +39,7 @@ import {
|
||||
ErrorMessage,
|
||||
FormControl,
|
||||
getCachedDocumentResource,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'EnvironmentVariableEditorDialog',
|
||||
|
||||
@ -21,6 +21,6 @@
|
||||
<!-- idk what magic is it but if I remove the div datetime components cease to work -->
|
||||
</template>
|
||||
<script setup>
|
||||
import { DatePicker, TabButtons, DateTimePicker } from 'frappe-ui';
|
||||
import { DatePicker, TabButtons, DateTimePicker } from 'jingrow-ui';
|
||||
import LinkControl from './LinkControl.vue';
|
||||
</script>
|
||||
|
||||
@ -47,7 +47,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script lang="ts">
|
||||
import { LoadingIndicator } from 'frappe-ui';
|
||||
import { LoadingIndicator } from 'jingrow-ui';
|
||||
import { defineComponent } from 'vue';
|
||||
|
||||
export default defineComponent({
|
||||
|
||||
@ -12,7 +12,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script>
|
||||
import { Dialog } from 'frappe-ui';
|
||||
import { Dialog } from 'jingrow-ui';
|
||||
import GenericDialogField from './GenericDialogField.vue';
|
||||
|
||||
export default {
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
/>
|
||||
</template>
|
||||
<script>
|
||||
import { FormControl } from 'frappe-ui';
|
||||
import { FormControl } from 'jingrow-ui';
|
||||
import ListSelection from './ListSelection.vue';
|
||||
|
||||
export default {
|
||||
|
||||
@ -54,7 +54,7 @@ import {
|
||||
ListHeaderItem,
|
||||
ListRow,
|
||||
ListSelectBanner,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
import ObjectListCell from './ObjectListCell.vue';
|
||||
|
||||
export default {
|
||||
|
||||
@ -19,7 +19,7 @@
|
||||
/>
|
||||
</template>
|
||||
<script>
|
||||
import { FormControl, debounce } from 'frappe-ui';
|
||||
import { FormControl, debounce } from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'LinkControl',
|
||||
|
||||
@ -12,7 +12,7 @@
|
||||
|
||||
<div v-if="step === 'site-plans'">
|
||||
<!-- doing this weird thing because progress with intervals doesn't rerender on moving to new step for some reason -->
|
||||
<!-- TODO: fix it in frappe-ui -->
|
||||
<!-- TODO: fix it in jingrow-ui -->
|
||||
<Progress
|
||||
v-if="showSetupSubscription"
|
||||
class="my-8"
|
||||
@ -150,7 +150,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script>
|
||||
import { getCachedDocumentResource, Progress } from 'frappe-ui';
|
||||
import { getCachedDocumentResource, Progress } from 'jingrow-ui';
|
||||
import SitePlansCards from './SitePlansCards.vue';
|
||||
import { getPlans, getPlan } from '../data/plans';
|
||||
import CardForm from './billing/CardForm.vue';
|
||||
|
||||
@ -181,7 +181,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { TextEditor } from 'frappe-ui';
|
||||
import { TextEditor } from 'jingrow-ui';
|
||||
import FileUploader from '@/components/FileUploader.vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { getToastErrorMessage } from '../utils/toast';
|
||||
|
||||
@ -110,7 +110,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { FormControl, Tabs, TabList, TabPanel } from 'frappe-ui';
|
||||
import { FormControl, Tabs, TabList, TabPanel } from 'jingrow-ui';
|
||||
import { DashboardError } from '../utils/error';
|
||||
import GitHubAppSelector from './GitHubAppSelector.vue';
|
||||
import AlertBanner from './AlertBanner.vue';
|
||||
|
||||
@ -157,7 +157,7 @@ import {
|
||||
TextInput,
|
||||
Tooltip,
|
||||
ErrorMessage,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
|
||||
let subscribed = {};
|
||||
|
||||
|
||||
@ -66,7 +66,7 @@
|
||||
</component>
|
||||
</template>
|
||||
<script>
|
||||
import { Tooltip } from 'frappe-ui';
|
||||
import { Tooltip } from 'jingrow-ui';
|
||||
import ActionButton from './ActionButton.vue';
|
||||
|
||||
export default {
|
||||
|
||||
@ -43,7 +43,7 @@
|
||||
</component>
|
||||
</template>
|
||||
<script>
|
||||
import { Tooltip, Dialog } from 'frappe-ui';
|
||||
import { Tooltip, Dialog } from 'jingrow-ui';
|
||||
import DialogWrapper from './DialogWrapper.vue';
|
||||
import FilterControl from './FilterControl.vue';
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { getCachedDocumentResource } from 'frappe-ui';
|
||||
import { getCachedDocumentResource } from 'jingrow-ui';
|
||||
import { defineAsyncComponent, h } from 'vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { confirmDialog, renderDialog } from '../utils/components';
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { getCachedDocumentResource } from 'frappe-ui';
|
||||
import { getCachedDocumentResource } from 'jingrow-ui';
|
||||
import SiteActionCell from './SiteActionCell.vue';
|
||||
|
||||
export default {
|
||||
|
||||
@ -62,7 +62,7 @@
|
||||
</template>
|
||||
<script>
|
||||
import { defineAsyncComponent } from 'vue';
|
||||
import { getCachedDocumentResource } from 'frappe-ui';
|
||||
import { getCachedDocumentResource } from 'jingrow-ui';
|
||||
import ClickToCopyField from './ClickToCopyField.vue';
|
||||
import ObjectList from './ObjectList.vue';
|
||||
import { date } from '../utils/format';
|
||||
|
||||
@ -68,7 +68,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script>
|
||||
import { Button } from 'frappe-ui';
|
||||
import { Button } from 'jingrow-ui';
|
||||
import BackupFilesUploader from './BackupFilesUploader.vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
|
||||
|
||||
@ -318,7 +318,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { getCachedDocumentResource, Progress, Tooltip } from 'frappe-ui';
|
||||
import { getCachedDocumentResource, Progress, Tooltip } from 'jingrow-ui';
|
||||
import { h, defineAsyncComponent } from 'vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
import InfoIcon from '~icons/lucide/info';
|
||||
|
||||
@ -73,7 +73,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script>
|
||||
import { getCachedDocumentResource } from 'frappe-ui';
|
||||
import { getCachedDocumentResource } from 'jingrow-ui';
|
||||
import DateTimeControl from './DateTimeControl.vue';
|
||||
import GenericList from './GenericList.vue';
|
||||
import dayjs, { dayjsIST } from '../utils/dayjs';
|
||||
|
||||
@ -76,7 +76,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Tree } from 'frappe-ui';
|
||||
import { Tree } from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'StorageBreakupChart',
|
||||
|
||||
@ -74,7 +74,7 @@
|
||||
|
||||
<script setup lang="ts">
|
||||
import Link from './Link.vue';
|
||||
import { Badge, createDocumentResource, createResource } from 'frappe-ui';
|
||||
import { Badge, createDocumentResource, createResource } from 'jingrow-ui';
|
||||
import { computed, ref } from 'vue';
|
||||
import { getTeam } from '../data/team';
|
||||
import { toast } from 'vue-sonner';
|
||||
|
||||
@ -72,7 +72,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script>
|
||||
import { TextInput } from 'frappe-ui';
|
||||
import { TextInput } from 'jingrow-ui';
|
||||
import { switchToTeam } from '../data/team';
|
||||
import LinkControl from './LinkControl.vue';
|
||||
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
</FTabs>
|
||||
</template>
|
||||
<script>
|
||||
import { Tabs } from 'frappe-ui';
|
||||
import { Tabs } from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'TabsWithRouter',
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { Avatar } from 'frappe-ui';
|
||||
import { Avatar } from 'jingrow-ui';
|
||||
const props = defineProps({
|
||||
avatarImage: String,
|
||||
fullName: String,
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
</template>
|
||||
<script setup>
|
||||
import CardForm from './CardForm.vue';
|
||||
import { Dialog, FeatherIcon } from 'frappe-ui';
|
||||
import { Dialog, FeatherIcon } from 'jingrow-ui';
|
||||
|
||||
const props = defineProps({
|
||||
showMessage: {
|
||||
|
||||
@ -48,7 +48,7 @@
|
||||
|
||||
<script>
|
||||
import { toast } from 'vue-sonner';
|
||||
import { FormControl, ErrorMessage } from 'frappe-ui';
|
||||
import { FormControl, ErrorMessage } from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'AddExchangeRate',
|
||||
|
||||
@ -26,7 +26,7 @@
|
||||
</template>
|
||||
<script setup>
|
||||
import PrepaidCreditsForm from './PrepaidCreditsForm.vue';
|
||||
import { Dialog, FeatherIcon } from 'frappe-ui';
|
||||
import { Dialog, FeatherIcon } from 'jingrow-ui';
|
||||
|
||||
const props = defineProps({
|
||||
showMessage: {
|
||||
|
||||
@ -26,7 +26,7 @@
|
||||
</template>
|
||||
<script setup>
|
||||
import NewAddressForm from './NewAddressForm.vue';
|
||||
import { FormControl, ErrorMessage, Button, createResource } from 'frappe-ui';
|
||||
import { FormControl, ErrorMessage, Button, createResource } from 'jingrow-ui';
|
||||
import { reactive, ref, inject } from 'vue';
|
||||
|
||||
const emit = defineEmits(['success']);
|
||||
|
||||
@ -22,7 +22,7 @@
|
||||
</template>
|
||||
<script setup>
|
||||
import BillingDetails from './BillingDetails.vue';
|
||||
import { FeatherIcon, Dialog } from 'frappe-ui';
|
||||
import { FeatherIcon, Dialog } from 'jingrow-ui';
|
||||
import { ref } from 'vue';
|
||||
|
||||
const props = defineProps({
|
||||
|
||||
@ -53,7 +53,7 @@
|
||||
<script setup>
|
||||
import AddPrepaidCreditsDialog from './AddPrepaidCreditsDialog.vue';
|
||||
import UpcomingInvoiceDialog from './UpcomingInvoiceDialog.vue';
|
||||
import { Button, createResource } from 'frappe-ui';
|
||||
import { Button, createResource } from 'jingrow-ui';
|
||||
import { ref, computed, inject } from 'vue';
|
||||
import { confirmDialog } from '../../utils/components';
|
||||
import router from '../../router';
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script setup>
|
||||
import { Dialog, Switch, Button, ErrorMessage, FormControl } from 'frappe-ui';
|
||||
import { Dialog, Switch, Button, ErrorMessage, FormControl } from 'jingrow-ui';
|
||||
import { ref, inject } from 'vue';
|
||||
|
||||
const props = defineProps({
|
||||
|
||||
@ -38,7 +38,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { Button, ErrorMessage, FeatherIcon, createResource } from 'frappe-ui';
|
||||
import { Button, ErrorMessage, FeatherIcon, createResource } from 'jingrow-ui';
|
||||
import { ref, onMounted, onBeforeUnmount, inject } from 'vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { DashboardError } from '../../utils/error';
|
||||
|
||||
@ -44,7 +44,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { Button, ErrorMessage, Spinner, createResource } from 'frappe-ui';
|
||||
import { Button, ErrorMessage, Spinner, createResource } from 'jingrow-ui';
|
||||
import { loadStripe } from '@stripe/stripe-js';
|
||||
import { ref, nextTick, inject } from 'vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
|
||||
@ -87,7 +87,7 @@ import {
|
||||
Spinner,
|
||||
ErrorMessage,
|
||||
createResource,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
import { currency } from '../../utils/format';
|
||||
import { loadStripe } from '@stripe/stripe-js';
|
||||
import { ref, reactive, computed, inject, onMounted } from 'vue';
|
||||
|
||||
@ -81,7 +81,7 @@ import {
|
||||
Button,
|
||||
FeatherIcon,
|
||||
createResource,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
import { cardBrandIcon, confirmDialog } from '../../utils/components';
|
||||
import { ref } from 'vue';
|
||||
|
||||
|
||||
@ -14,7 +14,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { Button, FeatherIcon } from 'frappe-ui';
|
||||
import { Button, FeatherIcon } from 'jingrow-ui';
|
||||
const props = defineProps({
|
||||
label: String,
|
||||
active: Boolean,
|
||||
|
||||
@ -40,7 +40,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { FormControl, ErrorMessage, createResource } from 'frappe-ui';
|
||||
import { FormControl, ErrorMessage, createResource } from 'jingrow-ui';
|
||||
import { ref, computed, inject, watch } from 'vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { DashboardError } from '../../utils/error';
|
||||
|
||||
@ -196,7 +196,7 @@ import BudgetAlertDialog from './BudgetAlertDialog.vue';
|
||||
import AddPrepaidCreditsDialog from './AddPrepaidCreditsDialog.vue';
|
||||
import AddCardDialog from './AddCardDialog.vue';
|
||||
import ChangeCardDialog from './ChangeCardDialog.vue';
|
||||
import { Dropdown, Button, FeatherIcon, createResource } from 'frappe-ui';
|
||||
import { Dropdown, Button, FeatherIcon, createResource } from 'jingrow-ui';
|
||||
import {
|
||||
cardBrandIcon,
|
||||
confirmDialog,
|
||||
|
||||
@ -133,7 +133,7 @@ import RazorpayLogo from '../../logo/RazorpayLogo.vue';
|
||||
import PayPalLogo from '../../logo/PayPalLogo.vue';
|
||||
import StripeLogo from '../../logo/StripeLogo.vue';
|
||||
import BuyPrepaidCreditsMpesa from './mpesa/BuyPrepaidCreditsMpesa.vue';
|
||||
import { FormControl, Button, createResource } from 'frappe-ui';
|
||||
import { FormControl, Button, createResource } from 'jingrow-ui';
|
||||
import { ref, computed, inject, watch, onMounted } from 'vue';
|
||||
|
||||
const emit = defineEmits(['success']);
|
||||
|
||||
@ -97,7 +97,7 @@
|
||||
<script>
|
||||
import { toast } from 'vue-sonner';
|
||||
import { DashboardError } from '../../../utils/error';
|
||||
import { ErrorMessage } from 'frappe-ui';
|
||||
import { ErrorMessage } from 'jingrow-ui';
|
||||
export default {
|
||||
name: 'AddMpesaCredentials',
|
||||
data() {
|
||||
|
||||
@ -70,7 +70,7 @@
|
||||
<script>
|
||||
import { toast } from 'vue-sonner';
|
||||
import { DashboardError } from '../../../utils/error';
|
||||
import { frappeRequest, ErrorMessage } from 'frappe-ui';
|
||||
import { frappeRequest, ErrorMessage } from 'jingrow-ui';
|
||||
export default {
|
||||
name: 'BuyPrepaidCreditsMpesa',
|
||||
props: {
|
||||
|
||||
@ -98,7 +98,7 @@
|
||||
|
||||
<script>
|
||||
import { toast } from 'vue-sonner';
|
||||
import { frappeRequest } from 'frappe-ui';
|
||||
import { frappeRequest } from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'PartnerPaymentPayout',
|
||||
|
||||
@ -15,7 +15,7 @@ import {
|
||||
watch,
|
||||
nextTick,
|
||||
} from 'vue';
|
||||
import useAxisChartOptions from 'frappe-ui/src/components/Charts/axisChartOptions';
|
||||
import useAxisChartOptions from 'jingrow-ui/src/components/Charts/axisChartOptions';
|
||||
|
||||
const props = defineProps({
|
||||
data: {
|
||||
|
||||
@ -92,7 +92,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script>
|
||||
import { Dialog } from 'frappe-ui';
|
||||
import { Dialog } from 'jingrow-ui';
|
||||
import { date } from '../../../utils/format';
|
||||
|
||||
export default {
|
||||
|
||||
@ -52,7 +52,7 @@
|
||||
</template>
|
||||
<script>
|
||||
import { h } from 'vue';
|
||||
import { FormControl } from 'frappe-ui';
|
||||
import { FormControl } from 'jingrow-ui';
|
||||
import ObjectList from '../../ObjectList.vue';
|
||||
import { icon } from '../../../utils/components';
|
||||
import { toast } from 'vue-sonner';
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script>
|
||||
import { Badge } from 'frappe-ui';
|
||||
import { Badge } from 'jingrow-ui';
|
||||
import ObjectList from '../../ObjectList.vue';
|
||||
import { h } from 'vue';
|
||||
|
||||
|
||||
@ -11,7 +11,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Badge as FrappeUIBadge } from 'frappe-ui';
|
||||
import { Badge as FrappeUIBadge } from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'Badge',
|
||||
|
||||
@ -32,7 +32,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { LoadingText } from 'frappe-ui';
|
||||
import { LoadingText } from 'jingrow-ui';
|
||||
export default {
|
||||
name: 'Card',
|
||||
props: ['title', 'subtitle', 'loading', 'stopOverflow'],
|
||||
|
||||
@ -14,7 +14,7 @@ import {
|
||||
ErrorMessage,
|
||||
Autocomplete,
|
||||
Spinner,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
import outsideClickDirective from './outsideClickDirective';
|
||||
|
||||
let components = import.meta.glob('./*.vue', { eager: true }); // To get each component inside this folder
|
||||
|
||||
@ -144,7 +144,7 @@ import {
|
||||
TextInput,
|
||||
Badge,
|
||||
Button,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { h } from 'vue';
|
||||
import { getToastErrorMessage } from '../../utils/toast';
|
||||
|
||||
@ -47,7 +47,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getCachedDocumentResource } from 'frappe-ui';
|
||||
import { getCachedDocumentResource } from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'AddRegionDialog',
|
||||
|
||||
@ -45,7 +45,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { createResource } from 'frappe-ui';
|
||||
import { createResource } from 'jingrow-ui';
|
||||
import { defineProps, h, ref } from 'vue';
|
||||
import LucideSparkleIcon from '~icons/lucide/sparkle';
|
||||
import ObjectList from '../ObjectList.vue';
|
||||
|
||||
@ -66,7 +66,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getCachedDocumentResource } from 'frappe-ui';
|
||||
import { getCachedDocumentResource } from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'DependencyEditorDialog',
|
||||
@ -126,7 +126,7 @@ export default {
|
||||
filters: {
|
||||
parenttype: 'Bench Dependency',
|
||||
parent: this.dependency.dependency,
|
||||
supported_frappe_version: this.group.version,
|
||||
supported_jingrow_version: this.group.version,
|
||||
},
|
||||
transform(data) {
|
||||
return data.map((d) => d.version);
|
||||
|
||||
@ -109,7 +109,7 @@ import {
|
||||
FeatherIcon,
|
||||
FileUploader,
|
||||
FormControl,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
name: 'PatchAppDialog',
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { getCachedDocumentResource } from 'frappe-ui';
|
||||
import { getCachedDocumentResource } from 'jingrow-ui';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { confirmDialog } from '../../utils/components';
|
||||
import router from '../../router';
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { getCachedDocumentResource } from 'frappe-ui';
|
||||
import { getCachedDocumentResource } from 'jingrow-ui';
|
||||
import ReleaseGroupActionCell from './ReleaseGroupActionCell.vue';
|
||||
|
||||
export default {
|
||||
|
||||
@ -125,7 +125,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getCachedDocumentResource } from 'frappe-ui';
|
||||
import { getCachedDocumentResource } from 'jingrow-ui';
|
||||
|
||||
export default {
|
||||
props: ['bench', 'releaseGroup'],
|
||||
|
||||
@ -123,7 +123,7 @@
|
||||
|
||||
<script>
|
||||
import { h } from 'vue';
|
||||
import { Checkbox, getCachedDocumentResource } from 'frappe-ui';
|
||||
import { Checkbox, getCachedDocumentResource } from 'jingrow-ui';
|
||||
import CommitChooser from '@/components/utils/CommitChooser.vue';
|
||||
import CommitTag from '@/components/utils/CommitTag.vue';
|
||||
import GenericList from '../../components/GenericList.vue';
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getCachedDocumentResource } from 'frappe-ui';
|
||||
import { getCachedDocumentResource } from 'jingrow-ui';
|
||||
import ObjectList from '../ObjectList.vue';
|
||||
|
||||
export default {
|
||||
|
||||
@ -34,7 +34,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { Button, ErrorMessage, FeatherIcon, createResource } from 'frappe-ui';
|
||||
import { Button, ErrorMessage, FeatherIcon, createResource } from 'jingrow-ui';
|
||||
import { ref, onMounted, onBeforeUnmount, inject } from 'vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { DashboardError } from '../../utils/error';
|
||||
|
||||
@ -44,7 +44,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { Button, ErrorMessage, Spinner, createResource } from 'frappe-ui';
|
||||
import { Button, ErrorMessage, Spinner, createResource } from 'jingrow-ui';
|
||||
import { loadStripe } from '@stripe/stripe-js';
|
||||
import { ref, nextTick, inject } from 'vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
|
||||
@ -17,7 +17,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script setup>
|
||||
import { Dialog, FormControl, createResource } from 'frappe-ui';
|
||||
import { Dialog, FormControl, createResource } from 'jingrow-ui';
|
||||
import { defineEmits, ref } from 'vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
|
||||
|
||||
@ -37,7 +37,7 @@
|
||||
<script setup>
|
||||
// import UserAvatar from '@/components/UserAvatar.vue'
|
||||
// import AttachmentItem from '@/components/AttachmentItem.vue'
|
||||
import { Tooltip } from 'frappe-ui';
|
||||
import { Tooltip } from 'jingrow-ui';
|
||||
import { timeAgo } from '../../utils/format';
|
||||
const props = defineProps({
|
||||
activity: Object,
|
||||
|
||||
@ -168,7 +168,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { createResource, Tooltip, Button, FeatherIcon, call } from 'frappe-ui';
|
||||
import { createResource, Tooltip, Button, FeatherIcon, call } from 'jingrow-ui';
|
||||
import { useRoute } from 'vue-router';
|
||||
import DotIcon from '../icons/DotIcon.vue';
|
||||
import SelectIcon from '../icons/SelectIcon.vue';
|
||||
@ -273,7 +273,7 @@ async function saveComment() {
|
||||
if (!newComment.value) {
|
||||
return;
|
||||
}
|
||||
let comment = await call('frappe.desk.form.utils.add_comment', {
|
||||
let comment = await call('jingrow.desk.form.utils.add_comment', {
|
||||
reference_doctype: 'Partner Lead',
|
||||
reference_name: route.params.leadId,
|
||||
content: newComment.value,
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
</Dialog>
|
||||
</template>
|
||||
<script setup>
|
||||
import { Dialog, createResource } from 'frappe-ui';
|
||||
import { Dialog, createResource } from 'jingrow-ui';
|
||||
import LeadDetailsForm from './LeadDetailsForm.vue';
|
||||
import { useRoute } from 'vue-router';
|
||||
import { reactive } from 'vue';
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { FormControl, createResource } from 'frappe-ui';
|
||||
import { FormControl, createResource } from 'jingrow-ui';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { computed, ref } from 'vue';
|
||||
import { DashboardError } from '../../utils/error';
|
||||
|
||||
@ -10,7 +10,7 @@ import ObjectList from '../ObjectList.vue';
|
||||
import UpdateFollowupDialog from './UpdateFollowupDialog.vue';
|
||||
import { confirmDialog, renderDialog } from '../../utils/components';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { createResource } from 'frappe-ui';
|
||||
import { createResource } from 'jingrow-ui';
|
||||
import { date } from '../../utils/format';
|
||||
|
||||
const route = useRoute();
|
||||
|
||||
@ -51,11 +51,11 @@
|
||||
|
||||
<script setup>
|
||||
import { defineEmits, ref } from 'vue';
|
||||
import { createResource, frappeRequest, debounce } from 'frappe-ui';
|
||||
import { createResource, frappeRequest, debounce } from 'jingrow-ui';
|
||||
import { toast } from 'vue-sonner';
|
||||
|
||||
const courseTypes = [
|
||||
{ label: 'Framework', value: 'frappe-developer-certification' },
|
||||
{ label: 'Framework', value: 'jingrow-developer-certification' },
|
||||
{ label: 'ERPNext', value: 'erpnext-distribution' },
|
||||
];
|
||||
const show = ref(true);
|
||||
|
||||
@ -53,7 +53,7 @@
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref, computed, defineEmits, defineProps } from 'vue';
|
||||
import { TextEditor, TextEditorFixedMenu, TextEditorContent } from 'frappe-ui';
|
||||
import { TextEditor, TextEditorFixedMenu, TextEditorContent } from 'jingrow-ui';
|
||||
|
||||
const commentEditor = ref('');
|
||||
const editor = computed(() => {
|
||||
|
||||
@ -38,7 +38,7 @@ import {
|
||||
FormControl,
|
||||
createResource,
|
||||
createListResource,
|
||||
} from 'frappe-ui';
|
||||
} from 'jingrow-ui';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { computed, ref } from 'vue';
|
||||
import { DashboardError } from '../../utils/error';
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
<script>
|
||||
import { h } from 'vue';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { FeatherIcon, Tooltip, Badge, Button } from 'frappe-ui';
|
||||
import { FeatherIcon, Tooltip, Badge, Button } from 'jingrow-ui';
|
||||
import ObjectList from '../ObjectList.vue';
|
||||
import Clock from '~icons/lucide/clock';
|
||||
export default {
|
||||
@ -42,12 +42,12 @@ export default {
|
||||
},
|
||||
{
|
||||
label: 'Frappe Approval',
|
||||
fieldname: 'approved_by_frappe',
|
||||
fieldname: 'approved_by_jingrow',
|
||||
type: 'Component',
|
||||
align: 'center',
|
||||
width: 0.6,
|
||||
component({ row }) {
|
||||
if (row.approved_by_frappe) {
|
||||
if (row.approved_by_jingrow) {
|
||||
return h(
|
||||
Tooltip,
|
||||
{
|
||||
@ -133,7 +133,7 @@ export default {
|
||||
});
|
||||
} else if (
|
||||
row.status === 'Pending' &&
|
||||
row.approved_by_frappe === 0
|
||||
row.approved_by_jingrow === 0
|
||||
) {
|
||||
return h(Badge, {
|
||||
label: "Waiting for Frappe's approval",
|
||||
|
||||
@ -52,12 +52,12 @@
|
||||
|
||||
<script setup>
|
||||
import { defineEmits, onMounted, ref } from 'vue';
|
||||
import { createResource } from 'frappe-ui';
|
||||
import { createResource } from 'jingrow-ui';
|
||||
import { getTeam } from '../../data/team';
|
||||
import { toast } from 'vue-sonner';
|
||||
|
||||
const courseTypes = [
|
||||
{ label: 'Framework', value: 'frappe-developer-certification' },
|
||||
{ label: 'Framework', value: 'jingrow-developer-certification' },
|
||||
{ label: 'ERPNext', value: 'erpnext-distribution' },
|
||||
];
|
||||
const show = ref(true);
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
|
||||
<script>
|
||||
import { h } from 'vue';
|
||||
import { FeatherIcon, Tooltip } from 'frappe-ui';
|
||||
import { FeatherIcon, Tooltip } from 'jingrow-ui';
|
||||
import { icon, renderDialog } from '../../utils/components';
|
||||
import ObjectList from '../ObjectList.vue';
|
||||
import PartnerCertificateRequest from './PartnerCertificateRequest.vue';
|
||||
@ -58,7 +58,7 @@ export default {
|
||||
label: 'Course',
|
||||
fieldname: 'course',
|
||||
format(value) {
|
||||
return value == 'frappe-developer-certification'
|
||||
return value == 'jingrow-developer-certification'
|
||||
? 'Framework'
|
||||
: 'ERPNext';
|
||||
},
|
||||
|
||||
@ -86,7 +86,7 @@ import BuyPartnerCreditsStripe from './BuyPartnerCreditsStripe.vue';
|
||||
import BuyPartnerCreditsRazorpay from './BuyPartnerCreditsRazorpay.vue';
|
||||
import RazorpayLogo from '../../logo/RazorpayLogo.vue';
|
||||
import StripeLogo from '../../logo/StripeLogo.vue';
|
||||
import { FormControl, Button, createDocumentResource } from 'frappe-ui';
|
||||
import { FormControl, Button, createDocumentResource } from 'jingrow-ui';
|
||||
import { ref, computed, inject, defineEmits } from 'vue';
|
||||
|
||||
const emit = defineEmits(['success']);
|
||||
|
||||
@ -86,7 +86,7 @@
|
||||
<script>
|
||||
import PartnerCustomerInvoices from './PartnerCustomerInvoices.vue';
|
||||
import ObjectList from '../ObjectList.vue';
|
||||
import { Dialog, ErrorMessage } from 'frappe-ui';
|
||||
import { Dialog, ErrorMessage } from 'jingrow-ui';
|
||||
import { toast } from 'vue-sonner';
|
||||
import { userCurrency } from '../../utils/format';
|
||||
import PartnerApprovalRequests from './PartnerApprovalRequests.vue';
|
||||
|
||||
@ -85,7 +85,7 @@
|
||||
</template>
|
||||
<script setup>
|
||||
import { inject, computed } from 'vue';
|
||||
import { createResource, NumberChart, AxisChart, DonutChart } from 'frappe-ui';
|
||||
import { createResource, NumberChart, AxisChart, DonutChart } from 'jingrow-ui';
|
||||
const team = inject('team');
|
||||
|
||||
const partnerDetails = createResource({
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user