main #2
0
jcloud/jcloud/pagetype/local_app/__init__.py
Normal file
0
jcloud/jcloud/pagetype/local_app/__init__.py
Normal file
8
jcloud/jcloud/pagetype/local_app/local_app.js
Normal file
8
jcloud/jcloud/pagetype/local_app/local_app.js
Normal file
@ -0,0 +1,8 @@
|
||||
// Copyright (c) 2025, Jingrow and contributors
|
||||
// For license information, please see license.txt
|
||||
|
||||
// jingrow.ui.form.on("Local App", {
|
||||
// refresh(frm) {
|
||||
|
||||
// },
|
||||
// });
|
||||
151
jcloud/jcloud/pagetype/local_app/local_app.json
Normal file
151
jcloud/jcloud/pagetype/local_app/local_app.json
Normal file
@ -0,0 +1,151 @@
|
||||
{
|
||||
"actions": [],
|
||||
"allow_rename": 1,
|
||||
"creation": "2025-10-22 15:50:31.087391",
|
||||
"editable_grid": 1,
|
||||
"engine": "InnoDB",
|
||||
"field_order": [
|
||||
"title",
|
||||
"enabled",
|
||||
"column_break_5",
|
||||
"category",
|
||||
"public",
|
||||
"section_break_9",
|
||||
"url",
|
||||
"branch",
|
||||
"repo_owner",
|
||||
"repo",
|
||||
"column_break_wbyw",
|
||||
"team",
|
||||
"installation",
|
||||
"enable_auto_deploy",
|
||||
"skip_review"
|
||||
],
|
||||
"fields": [
|
||||
{
|
||||
"fieldname": "branch",
|
||||
"fieldtype": "Data",
|
||||
"label": "Branch",
|
||||
"set_only_once": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "url",
|
||||
"fieldtype": "Data",
|
||||
"label": "Repository URL",
|
||||
"set_only_once": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "repo_owner",
|
||||
"fieldtype": "Data",
|
||||
"hidden": 1,
|
||||
"label": "Repository Owner"
|
||||
},
|
||||
{
|
||||
"fieldname": "team",
|
||||
"fieldtype": "Link",
|
||||
"label": "Team",
|
||||
"options": "Team"
|
||||
},
|
||||
{
|
||||
"fieldname": "installation",
|
||||
"fieldtype": "Data",
|
||||
"hidden": 1,
|
||||
"label": "Installation"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "public",
|
||||
"fieldtype": "Check",
|
||||
"label": "Public"
|
||||
},
|
||||
{
|
||||
"fieldname": "repo",
|
||||
"fieldtype": "Data",
|
||||
"hidden": 1,
|
||||
"label": "Repository"
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_5",
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"fieldname": "section_break_9",
|
||||
"fieldtype": "Section Break"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "enable_auto_deploy",
|
||||
"fieldtype": "Check",
|
||||
"hidden": 1,
|
||||
"label": "Enable Auto Deploy"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "skip_review",
|
||||
"fieldtype": "Check",
|
||||
"hidden": 1,
|
||||
"label": "Skip Review"
|
||||
},
|
||||
{
|
||||
"default": "1",
|
||||
"fieldname": "enabled",
|
||||
"fieldtype": "Check",
|
||||
"label": "Enabled"
|
||||
},
|
||||
{
|
||||
"fieldname": "title",
|
||||
"fieldtype": "Data",
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 1,
|
||||
"label": "Title",
|
||||
"reqd": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "category",
|
||||
"fieldtype": "Link",
|
||||
"label": "Category",
|
||||
"options": "Marketplace App Category"
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_wbyw",
|
||||
"fieldtype": "Column Break"
|
||||
}
|
||||
],
|
||||
"links": [],
|
||||
"modified": "2025-10-22 18:10:13.615747",
|
||||
"modified_by": "Administrator",
|
||||
"module": "Jcloud",
|
||||
"name": "Local App",
|
||||
"owner": "Administrator",
|
||||
"pagetype": "PageType",
|
||||
"permissions": [
|
||||
{
|
||||
"create": 1,
|
||||
"delete": 1,
|
||||
"email": 1,
|
||||
"export": 1,
|
||||
"print": 1,
|
||||
"read": 1,
|
||||
"report": 1,
|
||||
"role": "System Manager",
|
||||
"share": 1,
|
||||
"write": 1
|
||||
},
|
||||
{
|
||||
"create": 1,
|
||||
"read": 1,
|
||||
"role": "Jcloud Admin"
|
||||
},
|
||||
{
|
||||
"create": 1,
|
||||
"read": 1,
|
||||
"role": "Jcloud Member"
|
||||
}
|
||||
],
|
||||
"row_format": "Dynamic",
|
||||
"sort_field": "modified",
|
||||
"sort_order": "DESC",
|
||||
"states": [],
|
||||
"title_field": "title",
|
||||
"track_changes": 1
|
||||
}
|
||||
30
jcloud/jcloud/pagetype/local_app/local_app.py
Normal file
30
jcloud/jcloud/pagetype/local_app/local_app.py
Normal file
@ -0,0 +1,30 @@
|
||||
# Copyright (c) 2025, Jingrow and contributors
|
||||
# For license information, please see license.txt
|
||||
|
||||
# import jingrow
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class LocalApp(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from jingrow.types import DF
|
||||
|
||||
branch: DF.Data | None
|
||||
category: DF.Link | None
|
||||
enable_auto_deploy: DF.Check
|
||||
enabled: DF.Check
|
||||
installation: DF.Data | None
|
||||
public: DF.Check
|
||||
repo: DF.Data | None
|
||||
repo_owner: DF.Data | None
|
||||
skip_review: DF.Check
|
||||
team: DF.Link | None
|
||||
title: DF.Data
|
||||
url: DF.Data | None
|
||||
# end: auto-generated types
|
||||
pass
|
||||
9
jcloud/jcloud/pagetype/local_app/test_local_app.py
Normal file
9
jcloud/jcloud/pagetype/local_app/test_local_app.py
Normal file
@ -0,0 +1,9 @@
|
||||
# Copyright (c) 2025, Jingrow and Contributors
|
||||
# See license.txt
|
||||
|
||||
# import jingrow
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestLocalApp(JingrowTestCase):
|
||||
pass
|
||||
@ -0,0 +1,8 @@
|
||||
// Copyright (c) 2025, Jingrow and contributors
|
||||
// For license information, please see license.txt
|
||||
|
||||
// jingrow.ui.form.on("Local Marketplace", {
|
||||
// refresh(frm) {
|
||||
|
||||
// },
|
||||
// });
|
||||
458
jcloud/jcloud/pagetype/local_marketplace/local_marketplace.json
Normal file
458
jcloud/jcloud/pagetype/local_marketplace/local_marketplace.json
Normal file
@ -0,0 +1,458 @@
|
||||
{
|
||||
"actions": [],
|
||||
"allow_guest_to_view": 1,
|
||||
"allow_rename": 1,
|
||||
"creation": "2024-12-19 10:00:00",
|
||||
"editable_grid": 1,
|
||||
"engine": "InnoDB",
|
||||
"field_order": [
|
||||
"image",
|
||||
"app",
|
||||
"title",
|
||||
"column_break_3",
|
||||
"team",
|
||||
"route",
|
||||
"section_break_7",
|
||||
"jingrow_approved",
|
||||
"subscription_type",
|
||||
"subscription_level",
|
||||
"column_break_10",
|
||||
"categories",
|
||||
"published",
|
||||
"section_break_5",
|
||||
"sources",
|
||||
"descriptions_tab",
|
||||
"description",
|
||||
"app_screenshots_section",
|
||||
"screenshots",
|
||||
"section_break_15",
|
||||
"long_description",
|
||||
"links_section",
|
||||
"website",
|
||||
"support",
|
||||
"documentation",
|
||||
"column_break_16",
|
||||
"privacy_policy",
|
||||
"terms_of_service",
|
||||
"saas_tab",
|
||||
"outgoing_email",
|
||||
"outgoing_sender_name",
|
||||
"signup_email_template_section",
|
||||
"message",
|
||||
"column_break_32",
|
||||
"signature",
|
||||
"column_break_30",
|
||||
"subject",
|
||||
"poll_method",
|
||||
"column_break_33",
|
||||
"custom_verify_template",
|
||||
"subscription_update_hook",
|
||||
"site_config_section",
|
||||
"site_config",
|
||||
"scripts_tab",
|
||||
"run_after_install_script",
|
||||
"after_install_script",
|
||||
"run_after_uninstall_script",
|
||||
"after_uninstall_script",
|
||||
"review_tab",
|
||||
"stop_auto_review",
|
||||
"review_stage",
|
||||
"status",
|
||||
"dashboard_tab",
|
||||
"onboarding_related_section",
|
||||
"show_for_site_creation",
|
||||
"localisation_apps",
|
||||
"section_break_tlpw",
|
||||
"average_rating"
|
||||
],
|
||||
"fields": [
|
||||
{
|
||||
"fieldname": "image",
|
||||
"fieldtype": "Attach Image",
|
||||
"hidden": 1,
|
||||
"label": "Image"
|
||||
},
|
||||
{
|
||||
"fetch_from": "app.title",
|
||||
"fetch_if_empty": 1,
|
||||
"fieldname": "title",
|
||||
"fieldtype": "Data",
|
||||
"in_list_view": 1,
|
||||
"label": "Title",
|
||||
"reqd": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_3",
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"default": "Draft",
|
||||
"fieldname": "status",
|
||||
"fieldtype": "Select",
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 1,
|
||||
"label": "Status",
|
||||
"options": "Draft\nPublished\nIn Review\nAttention Required\nRejected\nDisabled"
|
||||
},
|
||||
{
|
||||
"fieldname": "section_break_5",
|
||||
"fieldtype": "Section Break"
|
||||
},
|
||||
{
|
||||
"default": "Please add a short description about your app here...",
|
||||
"fieldname": "description",
|
||||
"fieldtype": "Small Text",
|
||||
"in_list_view": 1,
|
||||
"label": "Description",
|
||||
"reqd": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "long_description",
|
||||
"fieldtype": "Text Editor",
|
||||
"label": "Long Description"
|
||||
},
|
||||
{
|
||||
"fieldname": "links_section",
|
||||
"fieldtype": "Tab Break",
|
||||
"label": "Support Links"
|
||||
},
|
||||
{
|
||||
"fieldname": "website",
|
||||
"fieldtype": "Data",
|
||||
"label": "Website",
|
||||
"options": "URL"
|
||||
},
|
||||
{
|
||||
"fieldname": "support",
|
||||
"fieldtype": "Data",
|
||||
"label": "Support",
|
||||
"options": "URL"
|
||||
},
|
||||
{
|
||||
"fieldname": "privacy_policy",
|
||||
"fieldtype": "Data",
|
||||
"label": "Privacy Policy",
|
||||
"options": "URL"
|
||||
},
|
||||
{
|
||||
"fieldname": "documentation",
|
||||
"fieldtype": "Data",
|
||||
"label": "Documentation",
|
||||
"options": "URL"
|
||||
},
|
||||
{
|
||||
"fieldname": "terms_of_service",
|
||||
"fieldtype": "Data",
|
||||
"label": "Terms of Service",
|
||||
"options": "URL"
|
||||
},
|
||||
{
|
||||
"fieldname": "route",
|
||||
"fieldtype": "Data",
|
||||
"label": "Route"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "published",
|
||||
"fieldtype": "Check",
|
||||
"hidden": 1,
|
||||
"label": "Published",
|
||||
"read_only": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "app",
|
||||
"fieldtype": "Link",
|
||||
"label": "App",
|
||||
"options": "App",
|
||||
"reqd": 1,
|
||||
"unique": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_16",
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"fieldname": "team",
|
||||
"fieldtype": "Link",
|
||||
"in_standard_filter": 1,
|
||||
"label": "Team",
|
||||
"options": "Team"
|
||||
},
|
||||
{
|
||||
"fieldname": "sources",
|
||||
"fieldtype": "Table",
|
||||
"label": "Sources",
|
||||
"options": "Marketplace App Version"
|
||||
},
|
||||
{
|
||||
"fieldname": "app_screenshots_section",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "App Screenshots"
|
||||
},
|
||||
{
|
||||
"fieldname": "screenshots",
|
||||
"fieldtype": "Table",
|
||||
"label": "Screenshots",
|
||||
"options": "Marketplace App Screenshot"
|
||||
},
|
||||
{
|
||||
"fieldname": "section_break_15",
|
||||
"fieldtype": "Section Break"
|
||||
},
|
||||
{
|
||||
"fieldname": "categories",
|
||||
"fieldtype": "Table",
|
||||
"label": "Categories",
|
||||
"options": "Marketplace App Categories"
|
||||
},
|
||||
{
|
||||
"default": "Free",
|
||||
"fieldname": "subscription_type",
|
||||
"fieldtype": "Select",
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 1,
|
||||
"label": "Subscription Type",
|
||||
"options": "Free\nPaid\nFreemium"
|
||||
},
|
||||
{
|
||||
"fieldname": "signup_email_template_section",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Signup Email Template"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "custom_verify_template",
|
||||
"fieldtype": "Check",
|
||||
"label": "Use custom verify template"
|
||||
},
|
||||
{
|
||||
"fieldname": "subject",
|
||||
"fieldtype": "Data",
|
||||
"label": "Subject"
|
||||
},
|
||||
{
|
||||
"fieldname": "message",
|
||||
"fieldtype": "Text Editor",
|
||||
"label": "Message"
|
||||
},
|
||||
{
|
||||
"fieldname": "signature",
|
||||
"fieldtype": "Text Editor",
|
||||
"label": "Signature"
|
||||
},
|
||||
{
|
||||
"fieldname": "poll_method",
|
||||
"fieldtype": "Data",
|
||||
"label": "Poll Method"
|
||||
},
|
||||
{
|
||||
"fieldname": "subscription_update_hook",
|
||||
"fieldtype": "Data",
|
||||
"label": "Subscription Update Hook"
|
||||
},
|
||||
{
|
||||
"fieldname": "saas_tab",
|
||||
"fieldtype": "Tab Break",
|
||||
"label": "SaaS"
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_32",
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_30",
|
||||
"fieldtype": "Section Break"
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_33",
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"fieldname": "descriptions_tab",
|
||||
"fieldtype": "Tab Break",
|
||||
"label": "Descriptions"
|
||||
},
|
||||
{
|
||||
"fieldname": "section_break_7",
|
||||
"fieldtype": "Section Break"
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_10",
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"fieldname": "outgoing_email",
|
||||
"fieldtype": "Data",
|
||||
"label": "Outgoing Email"
|
||||
},
|
||||
{
|
||||
"fieldname": "outgoing_sender_name",
|
||||
"fieldtype": "Data",
|
||||
"label": "Outgoing Sender Name"
|
||||
},
|
||||
{
|
||||
"fieldname": "scripts_tab",
|
||||
"fieldtype": "Tab Break",
|
||||
"label": "Scripts"
|
||||
},
|
||||
{
|
||||
"fieldname": "after_install_script",
|
||||
"fieldtype": "Code",
|
||||
"label": "After Install Script",
|
||||
"options": "Python"
|
||||
},
|
||||
{
|
||||
"fieldname": "after_uninstall_script",
|
||||
"fieldtype": "Code",
|
||||
"label": "After Uninstall Script",
|
||||
"options": "Python"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "run_after_install_script",
|
||||
"fieldtype": "Check",
|
||||
"label": "Rut After Install Script"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "run_after_uninstall_script",
|
||||
"fieldtype": "Check",
|
||||
"label": "Run After Uninstall Script"
|
||||
},
|
||||
{
|
||||
"fieldname": "review_tab",
|
||||
"fieldtype": "Tab Break",
|
||||
"label": "Review"
|
||||
},
|
||||
{
|
||||
"default": "Not Started",
|
||||
"fieldname": "review_stage",
|
||||
"fieldtype": "Select",
|
||||
"in_list_view": 1,
|
||||
"label": "Review Stage",
|
||||
"options": "Not Started\nDescription Missing\nLogo Missing\nApp Release Not Reviewed\nReady for Review\nReady to Publish\nRejected"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "jingrow_approved",
|
||||
"fieldtype": "Check",
|
||||
"label": "Jingrow Approved"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "stop_auto_review",
|
||||
"fieldtype": "Check",
|
||||
"label": "Stop Auto Review"
|
||||
},
|
||||
{
|
||||
"description": "This keys are added to site config on saas signup",
|
||||
"fieldname": "site_config",
|
||||
"fieldtype": "JSON",
|
||||
"label": "Site Config"
|
||||
},
|
||||
{
|
||||
"fieldname": "site_config_section",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Site Config"
|
||||
},
|
||||
{
|
||||
"fieldname": "onboarding_related_section",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Onboarding/Site Creation Related"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "show_for_site_creation",
|
||||
"fieldtype": "Check",
|
||||
"label": "Show for site creation"
|
||||
},
|
||||
{
|
||||
"fieldname": "dashboard_tab",
|
||||
"fieldtype": "Tab Break",
|
||||
"label": "Dashboard"
|
||||
},
|
||||
{
|
||||
"fieldname": "section_break_tlpw",
|
||||
"fieldtype": "Section Break"
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "average_rating",
|
||||
"fieldtype": "Float",
|
||||
"hidden": 1,
|
||||
"label": "Average Rating",
|
||||
"precision": "2"
|
||||
},
|
||||
{
|
||||
"fieldname": "localisation_apps",
|
||||
"fieldtype": "Table",
|
||||
"label": "Localisation Apps",
|
||||
"options": "Marketplace Localisation App"
|
||||
},
|
||||
{
|
||||
"default": "1",
|
||||
"fieldname": "subscription_level",
|
||||
"fieldtype": "Select",
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 1,
|
||||
"label": "Subscription Level",
|
||||
"options": "1\n2\n3\n4\n5"
|
||||
}
|
||||
],
|
||||
"has_web_view": 1,
|
||||
"image_field": "image",
|
||||
"index_web_pages_for_search": 1,
|
||||
"is_published_field": "published",
|
||||
"links": [
|
||||
{
|
||||
"group": "General",
|
||||
"link_fieldname": "marketplace_app",
|
||||
"link_pagetype": "App Release Approval Request"
|
||||
},
|
||||
{
|
||||
"group": "App Subscription",
|
||||
"link_fieldname": "app",
|
||||
"link_pagetype": "Marketplace App Plan"
|
||||
},
|
||||
{
|
||||
"group": "App Subscription",
|
||||
"link_fieldname": "app",
|
||||
"link_pagetype": "Marketplace App Subscription"
|
||||
}
|
||||
],
|
||||
"modified": "2025-10-22 15:50:31.087391",
|
||||
"modified_by": "Administrator",
|
||||
"module": "Jcloud",
|
||||
"name": "Local Marketplace",
|
||||
"owner": "Administrator",
|
||||
"pagetype": "PageType",
|
||||
"permissions": [
|
||||
{
|
||||
"create": 1,
|
||||
"delete": 1,
|
||||
"email": 1,
|
||||
"export": 1,
|
||||
"print": 1,
|
||||
"read": 1,
|
||||
"report": 1,
|
||||
"role": "System Manager",
|
||||
"share": 1,
|
||||
"write": 1
|
||||
}
|
||||
],
|
||||
"row_format": "Dynamic",
|
||||
"sort_field": "modified",
|
||||
"sort_order": "DESC",
|
||||
"states": [
|
||||
{
|
||||
"color": "Gray",
|
||||
"title": "Draft"
|
||||
},
|
||||
{
|
||||
"color": "Green",
|
||||
"title": "Published"
|
||||
}
|
||||
],
|
||||
"title_field": "title",
|
||||
"track_changes": 1
|
||||
}
|
||||
@ -0,0 +1,60 @@
|
||||
# Copyright (c) 2025, Jingrow and contributors
|
||||
# For license information, please see license.txt
|
||||
|
||||
# import jingrow
|
||||
from jingrow.model.page import Page
|
||||
|
||||
|
||||
class LocalMarketplace(Page):
|
||||
# begin: auto-generated types
|
||||
# This code is auto-generated. Do not modify anything in this block.
|
||||
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from jcloud.jcloud.pagetype.marketplace_app_categories.marketplace_app_categories import MarketplaceAppCategories
|
||||
from jcloud.jcloud.pagetype.marketplace_app_screenshot.marketplace_app_screenshot import MarketplaceAppScreenshot
|
||||
from jcloud.jcloud.pagetype.marketplace_app_version.marketplace_app_version import MarketplaceAppVersion
|
||||
from jcloud.jcloud.pagetype.marketplace_localisation_app.marketplace_localisation_app import MarketplaceLocalisationApp
|
||||
from jingrow.types import DF
|
||||
|
||||
after_install_script: DF.Code | None
|
||||
after_uninstall_script: DF.Code | None
|
||||
app: DF.Link
|
||||
average_rating: DF.Float
|
||||
categories: DF.Table[MarketplaceAppCategories]
|
||||
custom_verify_template: DF.Check
|
||||
description: DF.SmallText
|
||||
documentation: DF.Data | None
|
||||
image: DF.AttachImage | None
|
||||
jingrow_approved: DF.Check
|
||||
localisation_apps: DF.Table[MarketplaceLocalisationApp]
|
||||
long_description: DF.TextEditor | None
|
||||
message: DF.TextEditor | None
|
||||
outgoing_email: DF.Data | None
|
||||
outgoing_sender_name: DF.Data | None
|
||||
poll_method: DF.Data | None
|
||||
privacy_policy: DF.Data | None
|
||||
published: DF.Check
|
||||
review_stage: DF.Literal["Not Started", "Description Missing", "Logo Missing", "App Release Not Reviewed", "Ready for Review", "Ready to Publish", "Rejected"]
|
||||
route: DF.Data | None
|
||||
run_after_install_script: DF.Check
|
||||
run_after_uninstall_script: DF.Check
|
||||
screenshots: DF.Table[MarketplaceAppScreenshot]
|
||||
show_for_site_creation: DF.Check
|
||||
signature: DF.TextEditor | None
|
||||
site_config: DF.JSON | None
|
||||
sources: DF.Table[MarketplaceAppVersion]
|
||||
status: DF.Literal["Draft", "Published", "In Review", "Attention Required", "Rejected", "Disabled"]
|
||||
stop_auto_review: DF.Check
|
||||
subject: DF.Data | None
|
||||
subscription_level: DF.Literal["1", "2", "3", "4", "5"]
|
||||
subscription_type: DF.Literal["Free", "Paid", "Freemium"]
|
||||
subscription_update_hook: DF.Data | None
|
||||
support: DF.Data | None
|
||||
team: DF.Link | None
|
||||
terms_of_service: DF.Data | None
|
||||
title: DF.Data
|
||||
website: DF.Data | None
|
||||
# end: auto-generated types
|
||||
pass
|
||||
@ -0,0 +1,7 @@
|
||||
{% extends "templates/web.html" %}
|
||||
|
||||
{% block page_content %}
|
||||
<h1>{{ title }}</h1>
|
||||
{% endblock %}
|
||||
|
||||
<!-- this is a sample default web page template -->
|
||||
@ -0,0 +1,4 @@
|
||||
<div>
|
||||
<a href="{{ pg.route }}">{{ pg.title or pg.name }}</a>
|
||||
</div>
|
||||
<!-- this is a sample default list template -->
|
||||
@ -0,0 +1,9 @@
|
||||
# Copyright (c) 2025, Jingrow and Contributors
|
||||
# See license.txt
|
||||
|
||||
# import jingrow
|
||||
from jingrow.tests.utils import JingrowTestCase
|
||||
|
||||
|
||||
class TestLocalMarketplace(JingrowTestCase):
|
||||
pass
|
||||
Loading…
x
Reference in New Issue
Block a user