@sonicjs-cms/core 2.3.16 → 2.3.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-EUQDJQHJ.cjs → chunk-2XCJ3HT5.cjs} +3 -3
- package/dist/{chunk-EUQDJQHJ.cjs.map → chunk-2XCJ3HT5.cjs.map} +1 -1
- package/dist/{chunk-ICDJ7KPP.cjs → chunk-74DP754U.cjs} +90 -90
- package/dist/{chunk-ICDJ7KPP.cjs.map → chunk-74DP754U.cjs.map} +1 -1
- package/dist/{chunk-33Q6ETMQ.js → chunk-B6YJRVFQ.js} +2 -2
- package/dist/{chunk-33Q6ETMQ.js.map → chunk-B6YJRVFQ.js.map} +1 -1
- package/dist/{chunk-4CLJPURJ.cjs → chunk-IEWLOVP3.cjs} +2 -2
- package/dist/{chunk-4CLJPURJ.cjs.map → chunk-IEWLOVP3.cjs.map} +1 -1
- package/dist/{chunk-QUBMTYRI.js → chunk-QBWD6FKH.js} +8 -8
- package/dist/{chunk-QUBMTYRI.js.map → chunk-QBWD6FKH.js.map} +1 -1
- package/dist/{chunk-LRFDZHLM.js → chunk-TMQOLXLY.js} +3 -3
- package/dist/{chunk-LRFDZHLM.js.map → chunk-TMQOLXLY.js.map} +1 -1
- package/dist/{chunk-ATNWDVAD.js → chunk-VYL6RIV6.js} +3 -3
- package/dist/{chunk-ATNWDVAD.js.map → chunk-VYL6RIV6.js.map} +1 -1
- package/dist/{chunk-AE27GPMY.cjs → chunk-YHJB26RJ.cjs} +4 -4
- package/dist/{chunk-AE27GPMY.cjs.map → chunk-YHJB26RJ.cjs.map} +1 -1
- package/dist/index.cjs +646 -78
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +575 -7
- package/dist/index.js.map +1 -1
- package/dist/middleware.cjs +23 -23
- package/dist/middleware.js +2 -2
- package/dist/migrations-6HKPNPTK.js +4 -0
- package/dist/{migrations-7TWFJVNT.js.map → migrations-6HKPNPTK.js.map} +1 -1
- package/dist/migrations-EOV7NJZ7.cjs +13 -0
- package/dist/{migrations-QCBN4TLD.cjs.map → migrations-EOV7NJZ7.cjs.map} +1 -1
- package/dist/routes.cjs +24 -24
- package/dist/routes.js +4 -4
- package/dist/services.cjs +2 -2
- package/dist/services.js +1 -1
- package/dist/utils.cjs +11 -11
- package/dist/utils.js +1 -1
- package/package.json +1 -1
- package/dist/migrations-7TWFJVNT.js +0 -4
- package/dist/migrations-QCBN4TLD.cjs +0 -13
package/dist/index.cjs
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunk74DP754U_cjs = require('./chunk-74DP754U.cjs');
|
|
4
4
|
var chunk7FOAMNTI_cjs = require('./chunk-7FOAMNTI.cjs');
|
|
5
|
-
var
|
|
5
|
+
var chunkYHJB26RJ_cjs = require('./chunk-YHJB26RJ.cjs');
|
|
6
6
|
var chunkILZ3DP4I_cjs = require('./chunk-ILZ3DP4I.cjs');
|
|
7
|
-
var
|
|
7
|
+
var chunkIEWLOVP3_cjs = require('./chunk-IEWLOVP3.cjs');
|
|
8
8
|
var chunkYIXSSJWD_cjs = require('./chunk-YIXSSJWD.cjs');
|
|
9
9
|
var chunkAZLU3ROK_cjs = require('./chunk-AZLU3ROK.cjs');
|
|
10
10
|
var chunkDTLB6UIH_cjs = require('./chunk-DTLB6UIH.cjs');
|
|
11
|
-
var
|
|
11
|
+
var chunk2XCJ3HT5_cjs = require('./chunk-2XCJ3HT5.cjs');
|
|
12
12
|
require('./chunk-P3XDZL6Q.cjs');
|
|
13
13
|
var chunkRCQ2HIQD_cjs = require('./chunk-RCQ2HIQD.cjs');
|
|
14
14
|
var chunkKYGRJCZM_cjs = require('./chunk-KYGRJCZM.cjs');
|
|
@@ -558,7 +558,7 @@ function formatCellValue(value) {
|
|
|
558
558
|
// src/plugins/core-plugins/database-tools-plugin/admin-routes.ts
|
|
559
559
|
function createDatabaseToolsAdminRoutes() {
|
|
560
560
|
const router2 = new hono.Hono();
|
|
561
|
-
router2.use("*",
|
|
561
|
+
router2.use("*", chunkYHJB26RJ_cjs.requireAuth());
|
|
562
562
|
router2.get("/api/stats", async (c) => {
|
|
563
563
|
try {
|
|
564
564
|
const user = c.get("user");
|
|
@@ -738,8 +738,575 @@ function createDatabaseToolsAdminRoutes() {
|
|
|
738
738
|
});
|
|
739
739
|
return router2;
|
|
740
740
|
}
|
|
741
|
+
|
|
742
|
+
// src/plugins/core-plugins/seed-data-plugin/services/seed-data-service.ts
|
|
743
|
+
var SeedDataService = class {
|
|
744
|
+
constructor(db) {
|
|
745
|
+
this.db = db;
|
|
746
|
+
}
|
|
747
|
+
// First names for generating realistic users
|
|
748
|
+
firstNames = [
|
|
749
|
+
"Emma",
|
|
750
|
+
"Liam",
|
|
751
|
+
"Olivia",
|
|
752
|
+
"Noah",
|
|
753
|
+
"Ava",
|
|
754
|
+
"Ethan",
|
|
755
|
+
"Sophia",
|
|
756
|
+
"Mason",
|
|
757
|
+
"Isabella",
|
|
758
|
+
"William",
|
|
759
|
+
"Mia",
|
|
760
|
+
"James",
|
|
761
|
+
"Charlotte",
|
|
762
|
+
"Benjamin",
|
|
763
|
+
"Amelia",
|
|
764
|
+
"Lucas",
|
|
765
|
+
"Harper",
|
|
766
|
+
"Henry",
|
|
767
|
+
"Evelyn",
|
|
768
|
+
"Alexander"
|
|
769
|
+
];
|
|
770
|
+
// Last names for generating realistic users
|
|
771
|
+
lastNames = [
|
|
772
|
+
"Smith",
|
|
773
|
+
"Johnson",
|
|
774
|
+
"Williams",
|
|
775
|
+
"Brown",
|
|
776
|
+
"Jones",
|
|
777
|
+
"Garcia",
|
|
778
|
+
"Miller",
|
|
779
|
+
"Davis",
|
|
780
|
+
"Rodriguez",
|
|
781
|
+
"Martinez",
|
|
782
|
+
"Hernandez",
|
|
783
|
+
"Lopez",
|
|
784
|
+
"Gonzalez",
|
|
785
|
+
"Wilson",
|
|
786
|
+
"Anderson",
|
|
787
|
+
"Thomas",
|
|
788
|
+
"Taylor",
|
|
789
|
+
"Moore",
|
|
790
|
+
"Jackson",
|
|
791
|
+
"Martin"
|
|
792
|
+
];
|
|
793
|
+
// Content titles for blog posts
|
|
794
|
+
blogTitles = [
|
|
795
|
+
"Getting Started with Modern Web Development",
|
|
796
|
+
"The Future of JavaScript Frameworks",
|
|
797
|
+
"Building Scalable Applications with Microservices",
|
|
798
|
+
"Understanding TypeScript: A Complete Guide",
|
|
799
|
+
"Best Practices for API Design",
|
|
800
|
+
"Introduction to Cloud Computing",
|
|
801
|
+
"Mastering Git and Version Control",
|
|
802
|
+
"The Art of Code Review",
|
|
803
|
+
"Performance Optimization Techniques",
|
|
804
|
+
"Security Best Practices for Web Apps",
|
|
805
|
+
"Exploring Serverless Architecture",
|
|
806
|
+
"Database Design Fundamentals",
|
|
807
|
+
"Testing Strategies for Modern Apps",
|
|
808
|
+
"CI/CD Pipeline Implementation",
|
|
809
|
+
"Mobile-First Development Approach"
|
|
810
|
+
];
|
|
811
|
+
// Content titles for pages
|
|
812
|
+
pageTitles = [
|
|
813
|
+
"About Us",
|
|
814
|
+
"Contact",
|
|
815
|
+
"Privacy Policy",
|
|
816
|
+
"Terms of Service",
|
|
817
|
+
"FAQ",
|
|
818
|
+
"Our Team",
|
|
819
|
+
"Careers",
|
|
820
|
+
"Press Kit",
|
|
821
|
+
"Support",
|
|
822
|
+
"Documentation",
|
|
823
|
+
"Pricing",
|
|
824
|
+
"Features"
|
|
825
|
+
];
|
|
826
|
+
// Content titles for products
|
|
827
|
+
productTitles = [
|
|
828
|
+
"Premium Wireless Headphones",
|
|
829
|
+
"Smart Watch Pro",
|
|
830
|
+
"Laptop Stand Adjustable",
|
|
831
|
+
"Mechanical Keyboard RGB",
|
|
832
|
+
"HD Webcam 4K",
|
|
833
|
+
"USB-C Hub 7-in-1",
|
|
834
|
+
"Portable SSD 1TB",
|
|
835
|
+
"Wireless Mouse Ergonomic",
|
|
836
|
+
'Monitor 27" 4K',
|
|
837
|
+
"Desk Lamp LED",
|
|
838
|
+
"Phone Case Premium",
|
|
839
|
+
"Tablet Stand Aluminum",
|
|
840
|
+
"Cable Management Kit",
|
|
841
|
+
"Power Bank 20000mAh",
|
|
842
|
+
"Bluetooth Speaker Portable"
|
|
843
|
+
];
|
|
844
|
+
// Content for generating blog posts
|
|
845
|
+
blogContent = [
|
|
846
|
+
"This comprehensive guide covers everything you need to know about modern development practices and tools.",
|
|
847
|
+
"Learn the fundamentals and advanced concepts that will help you build better applications.",
|
|
848
|
+
"Discover the latest trends and best practices used by industry professionals.",
|
|
849
|
+
"A deep dive into the technologies and methodologies shaping the future of software development.",
|
|
850
|
+
"Practical tips and real-world examples to improve your development workflow.",
|
|
851
|
+
"Explore cutting-edge techniques and proven strategies for building robust applications.",
|
|
852
|
+
"Master the essential skills needed to excel in modern software development.",
|
|
853
|
+
"An in-depth look at the tools and frameworks that power today's web applications.",
|
|
854
|
+
"Step-by-step instructions and expert insights for developers of all levels.",
|
|
855
|
+
"Understanding the core principles that drive successful software projects."
|
|
856
|
+
];
|
|
857
|
+
// Generate a random ID
|
|
858
|
+
generateId() {
|
|
859
|
+
return `${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
|
|
860
|
+
}
|
|
861
|
+
// Generate a slug from a title
|
|
862
|
+
generateSlug(title) {
|
|
863
|
+
return title.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/(^-|-$)/g, "");
|
|
864
|
+
}
|
|
865
|
+
// Generate random date within the last year
|
|
866
|
+
randomDate() {
|
|
867
|
+
const now = /* @__PURE__ */ new Date();
|
|
868
|
+
const yearAgo = new Date(now.getFullYear() - 1, now.getMonth(), now.getDate());
|
|
869
|
+
const randomTime = yearAgo.getTime() + Math.random() * (now.getTime() - yearAgo.getTime());
|
|
870
|
+
return new Date(randomTime);
|
|
871
|
+
}
|
|
872
|
+
// Create 20 example users
|
|
873
|
+
async createUsers() {
|
|
874
|
+
const roles = ["admin", "editor", "author", "viewer"];
|
|
875
|
+
const hashedPassword = "password123";
|
|
876
|
+
let count = 0;
|
|
877
|
+
for (let i = 0; i < 20; i++) {
|
|
878
|
+
const firstName = this.firstNames[Math.floor(Math.random() * this.firstNames.length)] || "John";
|
|
879
|
+
const lastName = this.lastNames[Math.floor(Math.random() * this.lastNames.length)] || "Doe";
|
|
880
|
+
const username = `${firstName.toLowerCase()}${lastName.toLowerCase()}${i}`;
|
|
881
|
+
const email = `${username}@example.com`;
|
|
882
|
+
const createdAt = this.randomDate();
|
|
883
|
+
const createdAtTimestamp = Math.floor(createdAt.getTime() / 1e3);
|
|
884
|
+
const stmt = this.db.prepare(`
|
|
885
|
+
INSERT INTO users (id, email, username, first_name, last_name, password_hash, role, is_active, last_login_at, created_at, updated_at)
|
|
886
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
887
|
+
`);
|
|
888
|
+
await stmt.bind(
|
|
889
|
+
this.generateId(),
|
|
890
|
+
email,
|
|
891
|
+
username,
|
|
892
|
+
firstName,
|
|
893
|
+
lastName,
|
|
894
|
+
hashedPassword,
|
|
895
|
+
roles[Math.floor(Math.random() * roles.length)],
|
|
896
|
+
Math.random() > 0.1 ? 1 : 0,
|
|
897
|
+
// 90% active
|
|
898
|
+
Math.random() > 0.3 ? createdAtTimestamp : null,
|
|
899
|
+
createdAtTimestamp,
|
|
900
|
+
createdAtTimestamp
|
|
901
|
+
).run();
|
|
902
|
+
count++;
|
|
903
|
+
}
|
|
904
|
+
return count;
|
|
905
|
+
}
|
|
906
|
+
// Create 200 content items across different types
|
|
907
|
+
async createContent() {
|
|
908
|
+
const usersStmt = this.db.prepare("SELECT * FROM users");
|
|
909
|
+
const { results: allUsers } = await usersStmt.all();
|
|
910
|
+
const collectionsStmt = this.db.prepare("SELECT * FROM collections");
|
|
911
|
+
const { results: allCollections } = await collectionsStmt.all();
|
|
912
|
+
if (!allUsers || allUsers.length === 0) {
|
|
913
|
+
throw new Error("No users found. Please create users first.");
|
|
914
|
+
}
|
|
915
|
+
if (!allCollections || allCollections.length === 0) {
|
|
916
|
+
throw new Error("No collections found. Please create collections first.");
|
|
917
|
+
}
|
|
918
|
+
const statuses = ["draft", "published", "archived"];
|
|
919
|
+
let count = 0;
|
|
920
|
+
for (let i = 0; i < 200; i++) {
|
|
921
|
+
const collection = allCollections[Math.floor(Math.random() * allCollections.length)];
|
|
922
|
+
const author = allUsers[Math.floor(Math.random() * allUsers.length)];
|
|
923
|
+
const status = statuses[Math.floor(Math.random() * statuses.length)];
|
|
924
|
+
let title;
|
|
925
|
+
let contentData;
|
|
926
|
+
if (collection.name === "blog_posts" || collection.name.includes("blog")) {
|
|
927
|
+
title = this.blogTitles[Math.floor(Math.random() * this.blogTitles.length)] || "Untitled Blog Post";
|
|
928
|
+
contentData = {
|
|
929
|
+
body: this.blogContent[Math.floor(Math.random() * this.blogContent.length)] || "Blog content here",
|
|
930
|
+
excerpt: "A brief introduction to this article that provides an overview of the main topics covered.",
|
|
931
|
+
tags: this.generateTags(),
|
|
932
|
+
featured: Math.random() > 0.7
|
|
933
|
+
};
|
|
934
|
+
} else if (collection.name === "pages" || collection.name.includes("page")) {
|
|
935
|
+
title = this.pageTitles[Math.floor(Math.random() * this.pageTitles.length)] || "Untitled Page";
|
|
936
|
+
contentData = {
|
|
937
|
+
body: "This is a standard page with important information about our services and policies.",
|
|
938
|
+
template: "default",
|
|
939
|
+
showInMenu: Math.random() > 0.5
|
|
940
|
+
};
|
|
941
|
+
} else if (collection.name === "products" || collection.name.includes("product")) {
|
|
942
|
+
title = this.productTitles[Math.floor(Math.random() * this.productTitles.length)] || "Untitled Product";
|
|
943
|
+
contentData = {
|
|
944
|
+
description: "High-quality product with excellent features and great value for money.",
|
|
945
|
+
price: (Math.random() * 500 + 10).toFixed(2),
|
|
946
|
+
sku: `SKU-${Math.random().toString(36).substr(2, 9).toUpperCase()}`,
|
|
947
|
+
inStock: Math.random() > 0.2,
|
|
948
|
+
rating: (Math.random() * 2 + 3).toFixed(1)
|
|
949
|
+
// 3.0 - 5.0
|
|
950
|
+
};
|
|
951
|
+
} else {
|
|
952
|
+
title = `${collection.display_name || collection.name} Item ${i + 1}`;
|
|
953
|
+
contentData = {
|
|
954
|
+
description: "This is a sample content item with generic data.",
|
|
955
|
+
value: Math.floor(Math.random() * 1e3)
|
|
956
|
+
};
|
|
957
|
+
}
|
|
958
|
+
const slug = `${this.generateSlug(title)}-${i}`;
|
|
959
|
+
const createdAt = this.randomDate();
|
|
960
|
+
const createdAtTimestamp = Math.floor(createdAt.getTime() / 1e3);
|
|
961
|
+
const publishedAtTimestamp = status === "published" ? createdAtTimestamp : null;
|
|
962
|
+
const stmt = this.db.prepare(`
|
|
963
|
+
INSERT INTO content (id, collection_id, slug, title, data, status, published_at, author_id, created_at, updated_at)
|
|
964
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
965
|
+
`);
|
|
966
|
+
await stmt.bind(
|
|
967
|
+
this.generateId(),
|
|
968
|
+
collection.id,
|
|
969
|
+
slug,
|
|
970
|
+
`${title} ${i}`,
|
|
971
|
+
JSON.stringify(contentData),
|
|
972
|
+
status,
|
|
973
|
+
publishedAtTimestamp,
|
|
974
|
+
author.id,
|
|
975
|
+
createdAtTimestamp,
|
|
976
|
+
createdAtTimestamp
|
|
977
|
+
).run();
|
|
978
|
+
count++;
|
|
979
|
+
}
|
|
980
|
+
return count;
|
|
981
|
+
}
|
|
982
|
+
// Generate random tags for blog posts
|
|
983
|
+
generateTags() {
|
|
984
|
+
const allTags = [
|
|
985
|
+
"tutorial",
|
|
986
|
+
"guide",
|
|
987
|
+
"javascript",
|
|
988
|
+
"typescript",
|
|
989
|
+
"web-dev",
|
|
990
|
+
"backend",
|
|
991
|
+
"frontend",
|
|
992
|
+
"best-practices",
|
|
993
|
+
"security",
|
|
994
|
+
"performance",
|
|
995
|
+
"testing",
|
|
996
|
+
"deployment",
|
|
997
|
+
"cloud",
|
|
998
|
+
"database",
|
|
999
|
+
"api"
|
|
1000
|
+
];
|
|
1001
|
+
const numTags = Math.floor(Math.random() * 4) + 1;
|
|
1002
|
+
const shuffled = allTags.sort(() => 0.5 - Math.random());
|
|
1003
|
+
return shuffled.slice(0, numTags);
|
|
1004
|
+
}
|
|
1005
|
+
// Seed all data
|
|
1006
|
+
async seedAll() {
|
|
1007
|
+
const userCount = await this.createUsers();
|
|
1008
|
+
const contentCount = await this.createContent();
|
|
1009
|
+
return {
|
|
1010
|
+
users: userCount,
|
|
1011
|
+
content: contentCount
|
|
1012
|
+
};
|
|
1013
|
+
}
|
|
1014
|
+
// Clear all seed data (optional cleanup method)
|
|
1015
|
+
async clearSeedData() {
|
|
1016
|
+
const deleteContentStmt = this.db.prepare("DELETE FROM content");
|
|
1017
|
+
await deleteContentStmt.run();
|
|
1018
|
+
const deleteUsersStmt = this.db.prepare(
|
|
1019
|
+
"DELETE FROM users WHERE role != 'admin'"
|
|
1020
|
+
);
|
|
1021
|
+
await deleteUsersStmt.run();
|
|
1022
|
+
}
|
|
1023
|
+
};
|
|
1024
|
+
|
|
1025
|
+
// src/plugins/core-plugins/seed-data-plugin/admin-routes.ts
|
|
1026
|
+
function createSeedDataAdminRoutes() {
|
|
1027
|
+
const routes = new hono.Hono();
|
|
1028
|
+
routes.get("/", async (c) => {
|
|
1029
|
+
const html3 = `
|
|
1030
|
+
<!DOCTYPE html>
|
|
1031
|
+
<html>
|
|
1032
|
+
<head>
|
|
1033
|
+
<title>Seed Data - SonicJS Admin</title>
|
|
1034
|
+
<meta charset="utf-8">
|
|
1035
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
1036
|
+
<style>
|
|
1037
|
+
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
1038
|
+
body {
|
|
1039
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
1040
|
+
background: #f5f5f5;
|
|
1041
|
+
padding: 2rem;
|
|
1042
|
+
}
|
|
1043
|
+
.container {
|
|
1044
|
+
max-width: 800px;
|
|
1045
|
+
margin: 0 auto;
|
|
1046
|
+
background: white;
|
|
1047
|
+
border-radius: 8px;
|
|
1048
|
+
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
|
|
1049
|
+
padding: 2rem;
|
|
1050
|
+
}
|
|
1051
|
+
h1 {
|
|
1052
|
+
color: #333;
|
|
1053
|
+
margin-bottom: 1rem;
|
|
1054
|
+
font-size: 2rem;
|
|
1055
|
+
}
|
|
1056
|
+
.description {
|
|
1057
|
+
color: #666;
|
|
1058
|
+
margin-bottom: 2rem;
|
|
1059
|
+
line-height: 1.6;
|
|
1060
|
+
}
|
|
1061
|
+
.card {
|
|
1062
|
+
background: #f9f9f9;
|
|
1063
|
+
border-radius: 6px;
|
|
1064
|
+
padding: 1.5rem;
|
|
1065
|
+
margin-bottom: 1.5rem;
|
|
1066
|
+
}
|
|
1067
|
+
.card h2 {
|
|
1068
|
+
color: #333;
|
|
1069
|
+
font-size: 1.25rem;
|
|
1070
|
+
margin-bottom: 0.75rem;
|
|
1071
|
+
}
|
|
1072
|
+
.card p {
|
|
1073
|
+
color: #666;
|
|
1074
|
+
line-height: 1.6;
|
|
1075
|
+
margin-bottom: 1rem;
|
|
1076
|
+
}
|
|
1077
|
+
.card ul {
|
|
1078
|
+
color: #666;
|
|
1079
|
+
margin-left: 1.5rem;
|
|
1080
|
+
margin-bottom: 1rem;
|
|
1081
|
+
}
|
|
1082
|
+
.card li {
|
|
1083
|
+
margin-bottom: 0.5rem;
|
|
1084
|
+
}
|
|
1085
|
+
button {
|
|
1086
|
+
background: #3b82f6;
|
|
1087
|
+
color: white;
|
|
1088
|
+
border: none;
|
|
1089
|
+
padding: 0.75rem 1.5rem;
|
|
1090
|
+
border-radius: 6px;
|
|
1091
|
+
font-size: 1rem;
|
|
1092
|
+
cursor: pointer;
|
|
1093
|
+
transition: background 0.2s;
|
|
1094
|
+
}
|
|
1095
|
+
button:hover {
|
|
1096
|
+
background: #2563eb;
|
|
1097
|
+
}
|
|
1098
|
+
button:disabled {
|
|
1099
|
+
background: #94a3b8;
|
|
1100
|
+
cursor: not-allowed;
|
|
1101
|
+
}
|
|
1102
|
+
.danger {
|
|
1103
|
+
background: #ef4444;
|
|
1104
|
+
}
|
|
1105
|
+
.danger:hover {
|
|
1106
|
+
background: #dc2626;
|
|
1107
|
+
}
|
|
1108
|
+
.warning {
|
|
1109
|
+
background: #f59e0b;
|
|
1110
|
+
color: #fff;
|
|
1111
|
+
padding: 1rem;
|
|
1112
|
+
border-radius: 6px;
|
|
1113
|
+
margin-bottom: 1.5rem;
|
|
1114
|
+
}
|
|
1115
|
+
.success {
|
|
1116
|
+
background: #10b981;
|
|
1117
|
+
color: #fff;
|
|
1118
|
+
padding: 1rem;
|
|
1119
|
+
border-radius: 6px;
|
|
1120
|
+
margin-bottom: 1.5rem;
|
|
1121
|
+
display: none;
|
|
1122
|
+
}
|
|
1123
|
+
.error {
|
|
1124
|
+
background: #ef4444;
|
|
1125
|
+
color: #fff;
|
|
1126
|
+
padding: 1rem;
|
|
1127
|
+
border-radius: 6px;
|
|
1128
|
+
margin-bottom: 1.5rem;
|
|
1129
|
+
display: none;
|
|
1130
|
+
}
|
|
1131
|
+
.loading {
|
|
1132
|
+
display: none;
|
|
1133
|
+
margin-left: 1rem;
|
|
1134
|
+
}
|
|
1135
|
+
.back-link {
|
|
1136
|
+
display: inline-block;
|
|
1137
|
+
margin-bottom: 1rem;
|
|
1138
|
+
color: #3b82f6;
|
|
1139
|
+
text-decoration: none;
|
|
1140
|
+
font-size: 0.9rem;
|
|
1141
|
+
}
|
|
1142
|
+
.back-link:hover {
|
|
1143
|
+
text-decoration: underline;
|
|
1144
|
+
}
|
|
1145
|
+
</style>
|
|
1146
|
+
</head>
|
|
1147
|
+
<body>
|
|
1148
|
+
<div class="container">
|
|
1149
|
+
<a href="/admin/plugins/seed-data" class="back-link">\u2190 Back to Plugin Settings</a>
|
|
1150
|
+
<h1>\u{1F331} Seed Data Generator</h1>
|
|
1151
|
+
<p class="description">
|
|
1152
|
+
Generate realistic example data for testing and development. This will create 20 users and 200 content items with realistic data.
|
|
1153
|
+
</p>
|
|
1154
|
+
|
|
1155
|
+
<div class="warning">
|
|
1156
|
+
<strong>\u26A0\uFE0F Warning:</strong> This will create new data in your database. Make sure you're not running this in production!
|
|
1157
|
+
</div>
|
|
1158
|
+
|
|
1159
|
+
<div class="success" id="successMessage"></div>
|
|
1160
|
+
<div class="error" id="errorMessage"></div>
|
|
1161
|
+
|
|
1162
|
+
<div class="card">
|
|
1163
|
+
<h2>What will be created?</h2>
|
|
1164
|
+
<ul>
|
|
1165
|
+
<li><strong>20 Users:</strong> With realistic names, emails, and various roles (admin, editor, author, viewer)</li>
|
|
1166
|
+
<li><strong>200 Content Items:</strong> Including blog posts, pages, and products with realistic titles and data</li>
|
|
1167
|
+
<li><strong>All passwords:</strong> Set to "password123" for testing</li>
|
|
1168
|
+
<li><strong>Random dates:</strong> Created within the last year</li>
|
|
1169
|
+
<li><strong>Various statuses:</strong> Draft, published, and archived content</li>
|
|
1170
|
+
</ul>
|
|
1171
|
+
</div>
|
|
1172
|
+
|
|
1173
|
+
<div class="card">
|
|
1174
|
+
<h2>Generate Seed Data</h2>
|
|
1175
|
+
<p>Click the button below to generate example data. This may take a few moments.</p>
|
|
1176
|
+
<button id="seedButton" onclick="generateSeedData()">
|
|
1177
|
+
Generate Data
|
|
1178
|
+
<span class="loading" id="loading">...</span>
|
|
1179
|
+
</button>
|
|
1180
|
+
</div>
|
|
1181
|
+
|
|
1182
|
+
<div class="card">
|
|
1183
|
+
<h2>Clear Seed Data</h2>
|
|
1184
|
+
<p>Remove all users and content from the database (except admin users).</p>
|
|
1185
|
+
<button class="danger" id="clearButton" onclick="clearSeedData()">
|
|
1186
|
+
Clear All Data
|
|
1187
|
+
<span class="loading" id="clearLoading">...</span>
|
|
1188
|
+
</button>
|
|
1189
|
+
</div>
|
|
1190
|
+
</div>
|
|
1191
|
+
|
|
1192
|
+
<script>
|
|
1193
|
+
async function generateSeedData() {
|
|
1194
|
+
const button = document.getElementById('seedButton');
|
|
1195
|
+
const loading = document.getElementById('loading');
|
|
1196
|
+
const success = document.getElementById('successMessage');
|
|
1197
|
+
const error = document.getElementById('errorMessage');
|
|
1198
|
+
|
|
1199
|
+
button.disabled = true;
|
|
1200
|
+
loading.style.display = 'inline';
|
|
1201
|
+
success.style.display = 'none';
|
|
1202
|
+
error.style.display = 'none';
|
|
1203
|
+
|
|
1204
|
+
try {
|
|
1205
|
+
const response = await fetch('/admin/seed-data/generate', {
|
|
1206
|
+
method: 'POST',
|
|
1207
|
+
headers: {
|
|
1208
|
+
'Content-Type': 'application/json'
|
|
1209
|
+
}
|
|
1210
|
+
});
|
|
1211
|
+
|
|
1212
|
+
const data = await response.json();
|
|
1213
|
+
|
|
1214
|
+
if (response.ok) {
|
|
1215
|
+
success.textContent = \`\u2705 Successfully created \${data.users} users and \${data.content} content items!\`;
|
|
1216
|
+
success.style.display = 'block';
|
|
1217
|
+
} else {
|
|
1218
|
+
throw new Error(data.error || 'Failed to generate seed data');
|
|
1219
|
+
}
|
|
1220
|
+
} catch (err) {
|
|
1221
|
+
error.textContent = \`\u274C Error: \${err.message}\`;
|
|
1222
|
+
error.style.display = 'block';
|
|
1223
|
+
} finally {
|
|
1224
|
+
button.disabled = false;
|
|
1225
|
+
loading.style.display = 'none';
|
|
1226
|
+
}
|
|
1227
|
+
}
|
|
1228
|
+
|
|
1229
|
+
async function clearSeedData() {
|
|
1230
|
+
if (!confirm('Are you sure you want to clear all data? This cannot be undone!')) {
|
|
1231
|
+
return;
|
|
1232
|
+
}
|
|
1233
|
+
|
|
1234
|
+
const button = document.getElementById('clearButton');
|
|
1235
|
+
const loading = document.getElementById('clearLoading');
|
|
1236
|
+
const success = document.getElementById('successMessage');
|
|
1237
|
+
const error = document.getElementById('errorMessage');
|
|
1238
|
+
|
|
1239
|
+
button.disabled = true;
|
|
1240
|
+
loading.style.display = 'inline';
|
|
1241
|
+
success.style.display = 'none';
|
|
1242
|
+
error.style.display = 'none';
|
|
1243
|
+
|
|
1244
|
+
try {
|
|
1245
|
+
const response = await fetch('/admin/seed-data/clear', {
|
|
1246
|
+
method: 'POST',
|
|
1247
|
+
headers: {
|
|
1248
|
+
'Content-Type': 'application/json'
|
|
1249
|
+
}
|
|
1250
|
+
});
|
|
1251
|
+
|
|
1252
|
+
const data = await response.json();
|
|
1253
|
+
|
|
1254
|
+
if (response.ok) {
|
|
1255
|
+
success.textContent = '\u2705 Successfully cleared all seed data!';
|
|
1256
|
+
success.style.display = 'block';
|
|
1257
|
+
} else {
|
|
1258
|
+
throw new Error(data.error || 'Failed to clear seed data');
|
|
1259
|
+
}
|
|
1260
|
+
} catch (err) {
|
|
1261
|
+
error.textContent = \`\u274C Error: \${err.message}\`;
|
|
1262
|
+
error.style.display = 'block';
|
|
1263
|
+
} finally {
|
|
1264
|
+
button.disabled = false;
|
|
1265
|
+
loading.style.display = 'none';
|
|
1266
|
+
}
|
|
1267
|
+
}
|
|
1268
|
+
</script>
|
|
1269
|
+
</body>
|
|
1270
|
+
</html>
|
|
1271
|
+
`;
|
|
1272
|
+
return c.html(html3);
|
|
1273
|
+
});
|
|
1274
|
+
routes.post("/generate", async (c) => {
|
|
1275
|
+
try {
|
|
1276
|
+
const db = c.env.DB;
|
|
1277
|
+
const seedService = new SeedDataService(db);
|
|
1278
|
+
const result = await seedService.seedAll();
|
|
1279
|
+
return c.json({
|
|
1280
|
+
success: true,
|
|
1281
|
+
users: result.users,
|
|
1282
|
+
content: result.content
|
|
1283
|
+
});
|
|
1284
|
+
} catch (error) {
|
|
1285
|
+
return c.json({
|
|
1286
|
+
success: false,
|
|
1287
|
+
error: error.message
|
|
1288
|
+
}, 500);
|
|
1289
|
+
}
|
|
1290
|
+
});
|
|
1291
|
+
routes.post("/clear", async (c) => {
|
|
1292
|
+
try {
|
|
1293
|
+
const db = c.env.DB;
|
|
1294
|
+
const seedService = new SeedDataService(db);
|
|
1295
|
+
await seedService.clearSeedData();
|
|
1296
|
+
return c.json({
|
|
1297
|
+
success: true
|
|
1298
|
+
});
|
|
1299
|
+
} catch (error) {
|
|
1300
|
+
return c.json({
|
|
1301
|
+
success: false,
|
|
1302
|
+
error: error.message
|
|
1303
|
+
}, 500);
|
|
1304
|
+
}
|
|
1305
|
+
});
|
|
1306
|
+
return routes;
|
|
1307
|
+
}
|
|
741
1308
|
function createEmailPlugin() {
|
|
742
|
-
const builder =
|
|
1309
|
+
const builder = chunk74DP754U_cjs.PluginBuilder.create({
|
|
743
1310
|
name: "email",
|
|
744
1311
|
version: "1.0.0-beta.1",
|
|
745
1312
|
description: "Send transactional emails using Resend"
|
|
@@ -1416,7 +1983,7 @@ var DEFAULT_SETTINGS = {
|
|
|
1416
1983
|
appName: "SonicJS"
|
|
1417
1984
|
};
|
|
1418
1985
|
function createOTPLoginPlugin() {
|
|
1419
|
-
const builder =
|
|
1986
|
+
const builder = chunk74DP754U_cjs.PluginBuilder.create({
|
|
1420
1987
|
name: "otp-login",
|
|
1421
1988
|
version: "1.0.0-beta.1",
|
|
1422
1989
|
description: "Passwordless authentication via email one-time codes"
|
|
@@ -1580,7 +2147,7 @@ function createOTPLoginPlugin() {
|
|
|
1580
2147
|
error: "Account is deactivated"
|
|
1581
2148
|
}, 403);
|
|
1582
2149
|
}
|
|
1583
|
-
const token = await
|
|
2150
|
+
const token = await chunkYHJB26RJ_cjs.AuthManager.generateToken(user.id, user.email, user.role);
|
|
1584
2151
|
cookie.setCookie(c, "auth_token", token, {
|
|
1585
2152
|
httpOnly: true,
|
|
1586
2153
|
secure: true,
|
|
@@ -1983,12 +2550,12 @@ function createMagicLinkAuthPlugin() {
|
|
|
1983
2550
|
SET used = 1, used_at = ?
|
|
1984
2551
|
WHERE id = ?
|
|
1985
2552
|
`).bind(Date.now(), magicLink.id).run();
|
|
1986
|
-
const jwtToken = await
|
|
2553
|
+
const jwtToken = await chunkYHJB26RJ_cjs.AuthManager.generateToken(
|
|
1987
2554
|
user.id,
|
|
1988
2555
|
user.email,
|
|
1989
2556
|
user.role
|
|
1990
2557
|
);
|
|
1991
|
-
|
|
2558
|
+
chunkYHJB26RJ_cjs.AuthManager.setAuthCookie(c, jwtToken);
|
|
1992
2559
|
await db.prepare(`
|
|
1993
2560
|
UPDATE users SET last_login_at = ? WHERE id = ?
|
|
1994
2561
|
`).bind(Date.now(), user.id).run();
|
|
@@ -2136,14 +2703,14 @@ createMagicLinkAuthPlugin();
|
|
|
2136
2703
|
// src/app.ts
|
|
2137
2704
|
function createSonicJSApp(config = {}) {
|
|
2138
2705
|
const app = new hono.Hono();
|
|
2139
|
-
const appVersion = config.version ||
|
|
2706
|
+
const appVersion = config.version || chunk2XCJ3HT5_cjs.getCoreVersion();
|
|
2140
2707
|
const appName = config.name || "SonicJS AI";
|
|
2141
2708
|
app.use("*", async (c, next) => {
|
|
2142
2709
|
c.set("appVersion", appVersion);
|
|
2143
2710
|
await next();
|
|
2144
2711
|
});
|
|
2145
|
-
app.use("*",
|
|
2146
|
-
app.use("*",
|
|
2712
|
+
app.use("*", chunkYHJB26RJ_cjs.metricsMiddleware());
|
|
2713
|
+
app.use("*", chunkYHJB26RJ_cjs.bootstrapMiddleware(config));
|
|
2147
2714
|
if (config.middleware?.beforeAuth) {
|
|
2148
2715
|
for (const middleware of config.middleware.beforeAuth) {
|
|
2149
2716
|
app.use("*", middleware);
|
|
@@ -2160,21 +2727,22 @@ function createSonicJSApp(config = {}) {
|
|
|
2160
2727
|
app.use("*", middleware);
|
|
2161
2728
|
}
|
|
2162
2729
|
}
|
|
2163
|
-
app.route("/api",
|
|
2164
|
-
app.route("/api/media",
|
|
2165
|
-
app.route("/api/system",
|
|
2166
|
-
app.route("/admin/api",
|
|
2167
|
-
app.route("/admin/dashboard",
|
|
2168
|
-
app.route("/admin/collections",
|
|
2169
|
-
app.route("/admin/settings",
|
|
2730
|
+
app.route("/api", chunk74DP754U_cjs.api_default);
|
|
2731
|
+
app.route("/api/media", chunk74DP754U_cjs.api_media_default);
|
|
2732
|
+
app.route("/api/system", chunk74DP754U_cjs.api_system_default);
|
|
2733
|
+
app.route("/admin/api", chunk74DP754U_cjs.admin_api_default);
|
|
2734
|
+
app.route("/admin/dashboard", chunk74DP754U_cjs.router);
|
|
2735
|
+
app.route("/admin/collections", chunk74DP754U_cjs.adminCollectionsRoutes);
|
|
2736
|
+
app.route("/admin/settings", chunk74DP754U_cjs.adminSettingsRoutes);
|
|
2170
2737
|
app.route("/admin/database-tools", createDatabaseToolsAdminRoutes());
|
|
2171
|
-
app.route("/admin/
|
|
2172
|
-
app.route("/admin/
|
|
2173
|
-
app.route("/admin/
|
|
2174
|
-
app.route("/admin/
|
|
2175
|
-
app.route("/admin",
|
|
2176
|
-
app.route("/
|
|
2177
|
-
app.route("/",
|
|
2738
|
+
app.route("/admin/seed-data", createSeedDataAdminRoutes());
|
|
2739
|
+
app.route("/admin/content", chunk74DP754U_cjs.admin_content_default);
|
|
2740
|
+
app.route("/admin/media", chunk74DP754U_cjs.adminMediaRoutes);
|
|
2741
|
+
app.route("/admin/plugins", chunk74DP754U_cjs.adminPluginRoutes);
|
|
2742
|
+
app.route("/admin/logs", chunk74DP754U_cjs.adminLogsRoutes);
|
|
2743
|
+
app.route("/admin", chunk74DP754U_cjs.userRoutes);
|
|
2744
|
+
app.route("/auth", chunk74DP754U_cjs.auth_default);
|
|
2745
|
+
app.route("/", chunk74DP754U_cjs.test_cleanup_default);
|
|
2178
2746
|
if (emailPlugin.routes && emailPlugin.routes.length > 0) {
|
|
2179
2747
|
for (const route of emailPlugin.routes) {
|
|
2180
2748
|
app.route(route.path, route.handler);
|
|
@@ -2254,83 +2822,83 @@ function createDb(d1$1) {
|
|
|
2254
2822
|
}
|
|
2255
2823
|
|
|
2256
2824
|
// src/index.ts
|
|
2257
|
-
var VERSION =
|
|
2825
|
+
var VERSION = chunk2XCJ3HT5_cjs.package_default.version;
|
|
2258
2826
|
|
|
2259
2827
|
Object.defineProperty(exports, "ROUTES_INFO", {
|
|
2260
2828
|
enumerable: true,
|
|
2261
|
-
get: function () { return
|
|
2829
|
+
get: function () { return chunk74DP754U_cjs.ROUTES_INFO; }
|
|
2262
2830
|
});
|
|
2263
2831
|
Object.defineProperty(exports, "adminApiRoutes", {
|
|
2264
2832
|
enumerable: true,
|
|
2265
|
-
get: function () { return
|
|
2833
|
+
get: function () { return chunk74DP754U_cjs.admin_api_default; }
|
|
2266
2834
|
});
|
|
2267
2835
|
Object.defineProperty(exports, "adminCheckboxRoutes", {
|
|
2268
2836
|
enumerable: true,
|
|
2269
|
-
get: function () { return
|
|
2837
|
+
get: function () { return chunk74DP754U_cjs.adminCheckboxRoutes; }
|
|
2270
2838
|
});
|
|
2271
2839
|
Object.defineProperty(exports, "adminCodeExamplesRoutes", {
|
|
2272
2840
|
enumerable: true,
|
|
2273
|
-
get: function () { return
|
|
2841
|
+
get: function () { return chunk74DP754U_cjs.admin_code_examples_default; }
|
|
2274
2842
|
});
|
|
2275
2843
|
Object.defineProperty(exports, "adminCollectionsRoutes", {
|
|
2276
2844
|
enumerable: true,
|
|
2277
|
-
get: function () { return
|
|
2845
|
+
get: function () { return chunk74DP754U_cjs.adminCollectionsRoutes; }
|
|
2278
2846
|
});
|
|
2279
2847
|
Object.defineProperty(exports, "adminContentRoutes", {
|
|
2280
2848
|
enumerable: true,
|
|
2281
|
-
get: function () { return
|
|
2849
|
+
get: function () { return chunk74DP754U_cjs.admin_content_default; }
|
|
2282
2850
|
});
|
|
2283
2851
|
Object.defineProperty(exports, "adminDashboardRoutes", {
|
|
2284
2852
|
enumerable: true,
|
|
2285
|
-
get: function () { return
|
|
2853
|
+
get: function () { return chunk74DP754U_cjs.router; }
|
|
2286
2854
|
});
|
|
2287
2855
|
Object.defineProperty(exports, "adminDesignRoutes", {
|
|
2288
2856
|
enumerable: true,
|
|
2289
|
-
get: function () { return
|
|
2857
|
+
get: function () { return chunk74DP754U_cjs.adminDesignRoutes; }
|
|
2290
2858
|
});
|
|
2291
2859
|
Object.defineProperty(exports, "adminLogsRoutes", {
|
|
2292
2860
|
enumerable: true,
|
|
2293
|
-
get: function () { return
|
|
2861
|
+
get: function () { return chunk74DP754U_cjs.adminLogsRoutes; }
|
|
2294
2862
|
});
|
|
2295
2863
|
Object.defineProperty(exports, "adminMediaRoutes", {
|
|
2296
2864
|
enumerable: true,
|
|
2297
|
-
get: function () { return
|
|
2865
|
+
get: function () { return chunk74DP754U_cjs.adminMediaRoutes; }
|
|
2298
2866
|
});
|
|
2299
2867
|
Object.defineProperty(exports, "adminPluginRoutes", {
|
|
2300
2868
|
enumerable: true,
|
|
2301
|
-
get: function () { return
|
|
2869
|
+
get: function () { return chunk74DP754U_cjs.adminPluginRoutes; }
|
|
2302
2870
|
});
|
|
2303
2871
|
Object.defineProperty(exports, "adminSettingsRoutes", {
|
|
2304
2872
|
enumerable: true,
|
|
2305
|
-
get: function () { return
|
|
2873
|
+
get: function () { return chunk74DP754U_cjs.adminSettingsRoutes; }
|
|
2306
2874
|
});
|
|
2307
2875
|
Object.defineProperty(exports, "adminTestimonialsRoutes", {
|
|
2308
2876
|
enumerable: true,
|
|
2309
|
-
get: function () { return
|
|
2877
|
+
get: function () { return chunk74DP754U_cjs.admin_testimonials_default; }
|
|
2310
2878
|
});
|
|
2311
2879
|
Object.defineProperty(exports, "adminUsersRoutes", {
|
|
2312
2880
|
enumerable: true,
|
|
2313
|
-
get: function () { return
|
|
2881
|
+
get: function () { return chunk74DP754U_cjs.userRoutes; }
|
|
2314
2882
|
});
|
|
2315
2883
|
Object.defineProperty(exports, "apiContentCrudRoutes", {
|
|
2316
2884
|
enumerable: true,
|
|
2317
|
-
get: function () { return
|
|
2885
|
+
get: function () { return chunk74DP754U_cjs.api_content_crud_default; }
|
|
2318
2886
|
});
|
|
2319
2887
|
Object.defineProperty(exports, "apiMediaRoutes", {
|
|
2320
2888
|
enumerable: true,
|
|
2321
|
-
get: function () { return
|
|
2889
|
+
get: function () { return chunk74DP754U_cjs.api_media_default; }
|
|
2322
2890
|
});
|
|
2323
2891
|
Object.defineProperty(exports, "apiRoutes", {
|
|
2324
2892
|
enumerable: true,
|
|
2325
|
-
get: function () { return
|
|
2893
|
+
get: function () { return chunk74DP754U_cjs.api_default; }
|
|
2326
2894
|
});
|
|
2327
2895
|
Object.defineProperty(exports, "apiSystemRoutes", {
|
|
2328
2896
|
enumerable: true,
|
|
2329
|
-
get: function () { return
|
|
2897
|
+
get: function () { return chunk74DP754U_cjs.api_system_default; }
|
|
2330
2898
|
});
|
|
2331
2899
|
Object.defineProperty(exports, "authRoutes", {
|
|
2332
2900
|
enumerable: true,
|
|
2333
|
-
get: function () { return
|
|
2901
|
+
get: function () { return chunk74DP754U_cjs.auth_default; }
|
|
2334
2902
|
});
|
|
2335
2903
|
Object.defineProperty(exports, "Logger", {
|
|
2336
2904
|
enumerable: true,
|
|
@@ -2498,83 +3066,83 @@ Object.defineProperty(exports, "workflowHistory", {
|
|
|
2498
3066
|
});
|
|
2499
3067
|
Object.defineProperty(exports, "AuthManager", {
|
|
2500
3068
|
enumerable: true,
|
|
2501
|
-
get: function () { return
|
|
3069
|
+
get: function () { return chunkYHJB26RJ_cjs.AuthManager; }
|
|
2502
3070
|
});
|
|
2503
3071
|
Object.defineProperty(exports, "PermissionManager", {
|
|
2504
3072
|
enumerable: true,
|
|
2505
|
-
get: function () { return
|
|
3073
|
+
get: function () { return chunkYHJB26RJ_cjs.PermissionManager; }
|
|
2506
3074
|
});
|
|
2507
3075
|
Object.defineProperty(exports, "bootstrapMiddleware", {
|
|
2508
3076
|
enumerable: true,
|
|
2509
|
-
get: function () { return
|
|
3077
|
+
get: function () { return chunkYHJB26RJ_cjs.bootstrapMiddleware; }
|
|
2510
3078
|
});
|
|
2511
3079
|
Object.defineProperty(exports, "cacheHeaders", {
|
|
2512
3080
|
enumerable: true,
|
|
2513
|
-
get: function () { return
|
|
3081
|
+
get: function () { return chunkYHJB26RJ_cjs.cacheHeaders; }
|
|
2514
3082
|
});
|
|
2515
3083
|
Object.defineProperty(exports, "compressionMiddleware", {
|
|
2516
3084
|
enumerable: true,
|
|
2517
|
-
get: function () { return
|
|
3085
|
+
get: function () { return chunkYHJB26RJ_cjs.compressionMiddleware; }
|
|
2518
3086
|
});
|
|
2519
3087
|
Object.defineProperty(exports, "detailedLoggingMiddleware", {
|
|
2520
3088
|
enumerable: true,
|
|
2521
|
-
get: function () { return
|
|
3089
|
+
get: function () { return chunkYHJB26RJ_cjs.detailedLoggingMiddleware; }
|
|
2522
3090
|
});
|
|
2523
3091
|
Object.defineProperty(exports, "getActivePlugins", {
|
|
2524
3092
|
enumerable: true,
|
|
2525
|
-
get: function () { return
|
|
3093
|
+
get: function () { return chunkYHJB26RJ_cjs.getActivePlugins; }
|
|
2526
3094
|
});
|
|
2527
3095
|
Object.defineProperty(exports, "isPluginActive", {
|
|
2528
3096
|
enumerable: true,
|
|
2529
|
-
get: function () { return
|
|
3097
|
+
get: function () { return chunkYHJB26RJ_cjs.isPluginActive; }
|
|
2530
3098
|
});
|
|
2531
3099
|
Object.defineProperty(exports, "logActivity", {
|
|
2532
3100
|
enumerable: true,
|
|
2533
|
-
get: function () { return
|
|
3101
|
+
get: function () { return chunkYHJB26RJ_cjs.logActivity; }
|
|
2534
3102
|
});
|
|
2535
3103
|
Object.defineProperty(exports, "loggingMiddleware", {
|
|
2536
3104
|
enumerable: true,
|
|
2537
|
-
get: function () { return
|
|
3105
|
+
get: function () { return chunkYHJB26RJ_cjs.loggingMiddleware; }
|
|
2538
3106
|
});
|
|
2539
3107
|
Object.defineProperty(exports, "optionalAuth", {
|
|
2540
3108
|
enumerable: true,
|
|
2541
|
-
get: function () { return
|
|
3109
|
+
get: function () { return chunkYHJB26RJ_cjs.optionalAuth; }
|
|
2542
3110
|
});
|
|
2543
3111
|
Object.defineProperty(exports, "performanceLoggingMiddleware", {
|
|
2544
3112
|
enumerable: true,
|
|
2545
|
-
get: function () { return
|
|
3113
|
+
get: function () { return chunkYHJB26RJ_cjs.performanceLoggingMiddleware; }
|
|
2546
3114
|
});
|
|
2547
3115
|
Object.defineProperty(exports, "requireActivePlugin", {
|
|
2548
3116
|
enumerable: true,
|
|
2549
|
-
get: function () { return
|
|
3117
|
+
get: function () { return chunkYHJB26RJ_cjs.requireActivePlugin; }
|
|
2550
3118
|
});
|
|
2551
3119
|
Object.defineProperty(exports, "requireActivePlugins", {
|
|
2552
3120
|
enumerable: true,
|
|
2553
|
-
get: function () { return
|
|
3121
|
+
get: function () { return chunkYHJB26RJ_cjs.requireActivePlugins; }
|
|
2554
3122
|
});
|
|
2555
3123
|
Object.defineProperty(exports, "requireAnyPermission", {
|
|
2556
3124
|
enumerable: true,
|
|
2557
|
-
get: function () { return
|
|
3125
|
+
get: function () { return chunkYHJB26RJ_cjs.requireAnyPermission; }
|
|
2558
3126
|
});
|
|
2559
3127
|
Object.defineProperty(exports, "requireAuth", {
|
|
2560
3128
|
enumerable: true,
|
|
2561
|
-
get: function () { return
|
|
3129
|
+
get: function () { return chunkYHJB26RJ_cjs.requireAuth; }
|
|
2562
3130
|
});
|
|
2563
3131
|
Object.defineProperty(exports, "requirePermission", {
|
|
2564
3132
|
enumerable: true,
|
|
2565
|
-
get: function () { return
|
|
3133
|
+
get: function () { return chunkYHJB26RJ_cjs.requirePermission; }
|
|
2566
3134
|
});
|
|
2567
3135
|
Object.defineProperty(exports, "requireRole", {
|
|
2568
3136
|
enumerable: true,
|
|
2569
|
-
get: function () { return
|
|
3137
|
+
get: function () { return chunkYHJB26RJ_cjs.requireRole; }
|
|
2570
3138
|
});
|
|
2571
3139
|
Object.defineProperty(exports, "securityHeaders", {
|
|
2572
3140
|
enumerable: true,
|
|
2573
|
-
get: function () { return
|
|
3141
|
+
get: function () { return chunkYHJB26RJ_cjs.securityHeaders; }
|
|
2574
3142
|
});
|
|
2575
3143
|
Object.defineProperty(exports, "securityLoggingMiddleware", {
|
|
2576
3144
|
enumerable: true,
|
|
2577
|
-
get: function () { return
|
|
3145
|
+
get: function () { return chunkYHJB26RJ_cjs.securityLoggingMiddleware; }
|
|
2578
3146
|
});
|
|
2579
3147
|
Object.defineProperty(exports, "PluginBootstrapService", {
|
|
2580
3148
|
enumerable: true,
|
|
@@ -2630,7 +3198,7 @@ Object.defineProperty(exports, "validateCollectionConfig", {
|
|
|
2630
3198
|
});
|
|
2631
3199
|
Object.defineProperty(exports, "MigrationService", {
|
|
2632
3200
|
enumerable: true,
|
|
2633
|
-
get: function () { return
|
|
3201
|
+
get: function () { return chunkIEWLOVP3_cjs.MigrationService; }
|
|
2634
3202
|
});
|
|
2635
3203
|
Object.defineProperty(exports, "renderFilterBar", {
|
|
2636
3204
|
enumerable: true,
|
|
@@ -2690,43 +3258,43 @@ Object.defineProperty(exports, "ScopedHookSystemClass", {
|
|
|
2690
3258
|
});
|
|
2691
3259
|
Object.defineProperty(exports, "QueryFilterBuilder", {
|
|
2692
3260
|
enumerable: true,
|
|
2693
|
-
get: function () { return
|
|
3261
|
+
get: function () { return chunk2XCJ3HT5_cjs.QueryFilterBuilder; }
|
|
2694
3262
|
});
|
|
2695
3263
|
Object.defineProperty(exports, "SONICJS_VERSION", {
|
|
2696
3264
|
enumerable: true,
|
|
2697
|
-
get: function () { return
|
|
3265
|
+
get: function () { return chunk2XCJ3HT5_cjs.SONICJS_VERSION; }
|
|
2698
3266
|
});
|
|
2699
3267
|
Object.defineProperty(exports, "TemplateRenderer", {
|
|
2700
3268
|
enumerable: true,
|
|
2701
|
-
get: function () { return
|
|
3269
|
+
get: function () { return chunk2XCJ3HT5_cjs.TemplateRenderer; }
|
|
2702
3270
|
});
|
|
2703
3271
|
Object.defineProperty(exports, "buildQuery", {
|
|
2704
3272
|
enumerable: true,
|
|
2705
|
-
get: function () { return
|
|
3273
|
+
get: function () { return chunk2XCJ3HT5_cjs.buildQuery; }
|
|
2706
3274
|
});
|
|
2707
3275
|
Object.defineProperty(exports, "escapeHtml", {
|
|
2708
3276
|
enumerable: true,
|
|
2709
|
-
get: function () { return
|
|
3277
|
+
get: function () { return chunk2XCJ3HT5_cjs.escapeHtml; }
|
|
2710
3278
|
});
|
|
2711
3279
|
Object.defineProperty(exports, "getCoreVersion", {
|
|
2712
3280
|
enumerable: true,
|
|
2713
|
-
get: function () { return
|
|
3281
|
+
get: function () { return chunk2XCJ3HT5_cjs.getCoreVersion; }
|
|
2714
3282
|
});
|
|
2715
3283
|
Object.defineProperty(exports, "renderTemplate", {
|
|
2716
3284
|
enumerable: true,
|
|
2717
|
-
get: function () { return
|
|
3285
|
+
get: function () { return chunk2XCJ3HT5_cjs.renderTemplate; }
|
|
2718
3286
|
});
|
|
2719
3287
|
Object.defineProperty(exports, "sanitizeInput", {
|
|
2720
3288
|
enumerable: true,
|
|
2721
|
-
get: function () { return
|
|
3289
|
+
get: function () { return chunk2XCJ3HT5_cjs.sanitizeInput; }
|
|
2722
3290
|
});
|
|
2723
3291
|
Object.defineProperty(exports, "sanitizeObject", {
|
|
2724
3292
|
enumerable: true,
|
|
2725
|
-
get: function () { return
|
|
3293
|
+
get: function () { return chunk2XCJ3HT5_cjs.sanitizeObject; }
|
|
2726
3294
|
});
|
|
2727
3295
|
Object.defineProperty(exports, "templateRenderer", {
|
|
2728
3296
|
enumerable: true,
|
|
2729
|
-
get: function () { return
|
|
3297
|
+
get: function () { return chunk2XCJ3HT5_cjs.templateRenderer; }
|
|
2730
3298
|
});
|
|
2731
3299
|
Object.defineProperty(exports, "metricsTracker", {
|
|
2732
3300
|
enumerable: true,
|