Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
version: 2
updates:
- package-ecosystem: "composer"
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "docker"
directory: "/"
schedule:
interval: "monthly"
- package-ecosystem: "pip"
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "bundler"
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "gomod"
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "terraform"
directory: "/"
schedule:
interval: "daily"
14 changes: 7 additions & 7 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ repos:
rev: v4.3.0
hooks:
- id: trailing-whitespace
files: "frappe_open_api.*"
files: "frappe_openapi.*"
exclude: ".*json$|.*txt$|.*csv|.*md|.*svg"
- id: check-yaml
- id: check-merge-conflict
Expand Down Expand Up @@ -52,11 +52,11 @@ repos:
# Ignore any files that might contain jinja / bundles
exclude: |
(?x)^(
frappe_open_api/public/dist/.*|
frappe_openapi/public/dist/.*|
.*node_modules.*|
.*boilerplate.*|
frappe_open_api/templates/includes/.*|
frappe_open_api/public/js/lib/.*
frappe_openapi/templates/includes/.*|
frappe_openapi/public/js/lib/.*
)$


Expand All @@ -69,12 +69,12 @@ repos:
# Ignore any files that might contain jinja / bundles
exclude: |
(?x)^(
frappe_open_api/public/dist/.*|
frappe_openapi/public/dist/.*|
cypress/.*|
.*node_modules.*|
.*boilerplate.*|
frappe_open_api/templates/includes/.*|
frappe_open_api/public/js/lib/.*
frappe_openapi/templates/includes/.*|
frappe_openapi/public/js/lib/.*
)$

ci:
Expand Down
1 change: 0 additions & 1 deletion frappe_open_api/modules.txt

This file was deleted.

File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
import frappe

from frappe_open_api.frappe_open_api.generate_api_docs import get_app_title_and_version
from frappe_openapi.frappe_openapi.generate_api_docs import get_app_title_and_version


def create_openapi_app_fields():
"""
Create custom fields for Open API Settings doctype for all installed apps
excluding frappe_open_api. Also remove fields for uninstalled apps.
Create custom fields for OpenAPI Settings doctype for all installed apps
excluding frappe_openapi. Also remove fields for uninstalled apps.
"""
try:
# Get all installed apps
installed_apps = frappe.get_installed_apps()

# Exclude frappe_open_api from the list
apps_to_process = [app for app in installed_apps if app != "frappe_open_api"]
# Exclude frappe_openapi from the list
apps_to_process = [app for app in installed_apps if app != "frappe_openapi"]

# Get existing custom fields for Open API Settings
# Get existing custom fields for OpenAPI Settings
existing_fields = frappe.get_all(
"Custom Field", filters={"dt": "Open API Settings"}, fields=["name", "fieldname"]
"Custom Field", filters={"dt": "OpenAPI Settings"}, fields=["name", "fieldname"]
)

existing_fieldnames = [field.fieldname for field in existing_fields]
Expand All @@ -32,7 +32,7 @@ def create_openapi_app_fields():
custom_field = frappe.get_doc(
{
"doctype": "Custom Field",
"dt": "Open API Settings",
"dt": "OpenAPI Settings",
"fieldname": fieldname,
"fieldtype": "Check",
"label": app_title,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Copyright (c) 2025, rtCamp and contributors
// For license information, please see license.txt

// frappe.ui.form.on("Open API Settings", {
// frappe.ui.form.on("OpenAPI Settings", {
// refresh(frm) {

// },
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@
"engine": "InnoDB",
"field_order": [
"generate_openapi_specification_for_selected_apps_section",
"frappe_open_api"
"frappe_openapi"
],
"fields": [
{
"default": "1",
"fieldname": "frappe_open_api",
"fieldname": "frappe_openapi",
"fieldtype": "Check",
"label": "Frappe Open API "
"label": "Frappe OpenAPI "
},
{
"fieldname": "generate_openapi_specification_for_selected_apps_section",
Expand All @@ -26,8 +26,8 @@
"links": [],
"modified": "2025-08-05 23:30:04.236496",
"modified_by": "Administrator",
"module": "Frappe Open API",
"name": "Open API Settings",
"module": "Frappe OpenAPI",
"name": "OpenAPI Settings",
"owner": "Administrator",
"permissions": [
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
from frappe import enqueue
from frappe.model.document import Document

from frappe_open_api.frappe_open_api.generate_api_docs import generate_openapi_for_all_apps
from frappe_openapi.frappe_openapi.generate_api_docs import generate_openapi_for_all_apps


class OpenAPISettings(Document):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -155,8 +155,8 @@ def get_app_title_and_version(app_name):


def generate_openapi_for_all_apps():
# Get Open API Settings to check which apps are enabled
openapi_settings = frappe.get_single("Open API Settings")
# Get OpenAPI Settings to check which apps are enabled
openapi_settings = frappe.get_single("OpenAPI Settings")

# Get the public folder path of the current site
public_folder = os.path.join(frappe.get_site_path(), "public", "files", "openapi")
Expand Down
76 changes: 38 additions & 38 deletions frappe_open_api/hooks.py → frappe_openapi/hooks.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
app_name = "frappe_open_api"
app_title = "Frappe Open API"
app_name = "frappe_openapi"
app_title = "Frappe OpenAPI"
app_publisher = "rtCamp"
app_description = "Frappe app to generate and visualize whitelisted APIs"
app_email = "frappe@rtcamp.com"
Expand All @@ -13,27 +13,27 @@
# Each item in the list will be shown as an app in the apps page
# add_to_apps_screen = [
# {
# "name": "frappe_open_api",
# "logo": "/assets/frappe_open_api/logo.png",
# "name": "frappe_openapi",
# "logo": "/assets/frappe_openapi/logo.png",
# "title": "API Explorer",
# "route": "/frappe_open_api",
# "has_permission": "frappe_open_api.api.permission.has_app_permission"
# "route": "/frappe_openapi",
# "has_permission": "frappe_openapi.api.permission.has_app_permission"
# }
# ]

# Includes in <head>
# ------------------

# include js, css files in header of desk.html
# app_include_css = "/assets/frappe_open_api/css/frappe_open_api.css"
# app_include_js = "/assets/frappe_open_api/js/frappe_open_api.js"
# app_include_css = "/assets/frappe_openapi/css/frappe_openapi.css"
# app_include_js = "/assets/frappe_openapi/js/frappe_openapi.js"

# include js, css files in header of web template
# web_include_css = "/assets/frappe_open_api/css/frappe_open_api.css"
# web_include_js = "/assets/frappe_open_api/js/frappe_open_api.js"
# web_include_css = "/assets/frappe_openapi/css/frappe_openapi.css"
# web_include_js = "/assets/frappe_openapi/js/frappe_openapi.js"

# include custom scss in every website theme (without file extension ".scss")
# website_theme_scss = "frappe_open_api/public/scss/website"
# website_theme_scss = "frappe_openapi/public/scss/website"

# include js, css files in header of web form
# webform_include_js = {"doctype": "public/js/doctype.js"}
Expand All @@ -51,7 +51,7 @@
# Svg Icons
# ------------------
# include app icons in desk
# app_include_icons = "frappe_open_api/public/icons.svg"
# app_include_icons = "frappe_openapi/public/icons.svg"

# Home Pages
# ----------
Expand All @@ -75,43 +75,43 @@

# add methods and filters to jinja environment
# jinja = {
# "methods": "frappe_open_api.utils.jinja_methods",
# "filters": "frappe_open_api.utils.jinja_filters"
# "methods": "frappe_openapi.utils.jinja_methods",
# "filters": "frappe_openapi.utils.jinja_filters"
# }

# Installation
# ------------

# before_install = "frappe_open_api.install.before_install"
after_install = "frappe_open_api.setup.install.after_install"
# before_install = "frappe_openapi.install.before_install"
after_install = "frappe_openapi.setup.install.after_install"

# Uninstallation
# ------------

before_uninstall = "frappe_open_api.setup.uninstall.before_uninstall"
# after_uninstall = "frappe_open_api.uninstall.after_uninstall"
before_uninstall = "frappe_openapi.setup.uninstall.before_uninstall"
# after_uninstall = "frappe_openapi.uninstall.after_uninstall"

# Integration Setup
# ------------------
# To set up dependencies/integrations with other apps
# Name of the app being installed is passed as an argument

# before_app_install = "frappe_open_api.utils.before_app_install"
# after_app_install = "frappe_open_api.utils.after_app_install"
# before_app_install = "frappe_openapi.utils.before_app_install"
# after_app_install = "frappe_openapi.utils.after_app_install"

# Integration Cleanup
# -------------------
# To clean up dependencies/integrations with other apps
# Name of the app being uninstalled is passed as an argument

# before_app_uninstall = "frappe_open_api.utils.before_app_uninstall"
# after_app_uninstall = "frappe_open_api.utils.after_app_uninstall"
# before_app_uninstall = "frappe_openapi.utils.before_app_uninstall"
# after_app_uninstall = "frappe_openapi.utils.after_app_uninstall"

# Desk Notifications
# ------------------
# See frappe.core.notifications.get_notification_config

# notification_config = "frappe_open_api.notifications.get_notification_config"
# notification_config = "frappe_openapi.notifications.get_notification_config"

# Permissions
# -----------
Expand Down Expand Up @@ -150,39 +150,39 @@

# scheduler_events = {
# "all": [
# "frappe_open_api.tasks.all"
# "frappe_openapi.tasks.all"
# ],
# "daily": [
# "frappe_open_api.tasks.daily"
# "frappe_openapi.tasks.daily"
# ],
# "hourly": [
# "frappe_open_api.tasks.hourly"
# "frappe_openapi.tasks.hourly"
# ],
# "weekly": [
# "frappe_open_api.tasks.weekly"
# "frappe_openapi.tasks.weekly"
# ],
# "monthly": [
# "frappe_open_api.tasks.monthly"
# "frappe_openapi.tasks.monthly"
# ],
# }

# Testing
# -------

# before_tests = "frappe_open_api.install.before_tests"
# before_tests = "frappe_openapi.install.before_tests"

# Overriding Methods
# ------------------------------
#
# override_whitelisted_methods = {
# "frappe.desk.doctype.event.event.get_events": "frappe_open_api.event.get_events"
# "frappe.desk.doctype.event.event.get_events": "frappe_openapi.event.get_events"
# }
#
# each overriding function accepts a `data` argument;
# generated from the base implementation of the doctype dashboard,
# along with any modifications made in other Frappe apps
# override_doctype_dashboards = {
# "Task": "frappe_open_api.task.get_dashboard_data"
# "Task": "frappe_openapi.task.get_dashboard_data"
# }

# exempt linked doctypes from being automatically cancelled
Expand All @@ -196,13 +196,13 @@

# Request Events
# ----------------
# before_request = ["frappe_open_api.utils.before_request"]
# after_request = ["frappe_open_api.utils.after_request"]
# before_request = ["frappe_openapi.utils.before_request"]
# after_request = ["frappe_openapi.utils.after_request"]

# Job Events
# ----------
# before_job = ["frappe_open_api.utils.before_job"]
# after_job = ["frappe_open_api.utils.after_job"]
# before_job = ["frappe_openapi.utils.before_job"]
# after_job = ["frappe_openapi.utils.after_job"]

# User Data Protection
# --------------------
Expand Down Expand Up @@ -232,7 +232,7 @@
# --------------------------------

# auth_hooks = [
# "frappe_open_api.auth.validate"
# "frappe_openapi.auth.validate"
# ]

# Automatically update python controller files with type annotations for this app.
Expand All @@ -242,5 +242,5 @@
# "Logging DocType Name": 30 # days to retain logs
# }

after_migrate = "frappe_open_api.frappe_open_api.generate_api_docs.generate_openapi_for_all_apps"
before_migrate = "frappe_open_api.config.create_app_list.create_openapi_app_fields"
after_migrate = "frappe_openapi.frappe_openapi.generate_api_docs.generate_openapi_for_all_apps"
before_migrate = "frappe_openapi.config.create_app_list.create_openapi_app_fields"
1 change: 1 addition & 0 deletions frappe_openapi/modules.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Frappe OpenAPI
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import frappe

from frappe_open_api.config.create_app_list import create_openapi_app_fields
from frappe_openapi.config.create_app_list import create_openapi_app_fields


def after_install():
"""
Create custom fields for Open API Settings doctype for all installed apps
excluding frappe_open_api.
Create custom fields for OpenAPI Settings doctype for all installed apps
excluding frappe_openapi.
"""
try:
create_openapi_app_fields()
Expand Down
Loading
Loading