@myissue/vue-website-page-builder 3.2.76 → 3.2.77
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/vue-website-page-builder.js +424 -400
- package/dist/vue-website-page-builder.umd.cjs +3 -3
- package/package.json +1 -1
- package/src/DemoComponents/HomeSection.vue +4 -4
- package/src/DemoComponents/html.json +0 -1
- package/src/PageBuilder/PageBuilder.vue +2 -0
- package/src/composables/PageBuilderClass.ts +78 -9
package/package.json
CHANGED
|
@@ -95,10 +95,10 @@ pageBuilderClass.setConfigPageBuilder(configPageBuilder)
|
|
|
95
95
|
|
|
96
96
|
onMounted(async () => {
|
|
97
97
|
if (typeof getLocalStorageItemName.value === 'string' && getLocalStorageItemName.value) {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
)
|
|
98
|
+
const value = localStorage.getItem(getLocalStorageItemName.value)
|
|
99
|
+
|
|
100
|
+
if (value) {
|
|
101
|
+
pageBuilderClass.loadExistingContent(JSON.stringify(value))
|
|
102
102
|
} else {
|
|
103
103
|
pageBuilderClass.loadExistingContent(JSON.stringify(html), true)
|
|
104
104
|
// pageBuilderClass.loadExistingContent(rawHTML, true)
|
|
@@ -958,7 +958,10 @@ class PageBuilderClass {
|
|
|
958
958
|
}
|
|
959
959
|
|
|
960
960
|
updateLocalStorageItemName(): void {
|
|
961
|
-
const updateOrCreate =
|
|
961
|
+
const updateOrCreate =
|
|
962
|
+
this.pageBuilderStateStore.getConfigPageBuilder &&
|
|
963
|
+
this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate &&
|
|
964
|
+
this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate.formType
|
|
962
965
|
|
|
963
966
|
const resourceData = this.pageBuilderStateStore.getConfigPageBuilder?.resourceData
|
|
964
967
|
|
|
@@ -1132,7 +1135,7 @@ class PageBuilderClass {
|
|
|
1132
1135
|
localStorage.setItem(
|
|
1133
1136
|
this.getLocalStorageItemName.value,
|
|
1134
1137
|
JSON.stringify({
|
|
1135
|
-
|
|
1138
|
+
pageBuilderContentSavedAt: new Date().toISOString(),
|
|
1136
1139
|
components: componentsToSave,
|
|
1137
1140
|
}),
|
|
1138
1141
|
)
|
|
@@ -1157,6 +1160,61 @@ class PageBuilderClass {
|
|
|
1157
1160
|
}
|
|
1158
1161
|
}
|
|
1159
1162
|
|
|
1163
|
+
//
|
|
1164
|
+
deleteOldPageBuilderLocalStorage(): void {
|
|
1165
|
+
if (
|
|
1166
|
+
this.pageBuilderStateStore.getConfigPageBuilder &&
|
|
1167
|
+
this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate &&
|
|
1168
|
+
typeof this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate.formType === 'string' &&
|
|
1169
|
+
this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate.formType === 'update'
|
|
1170
|
+
) {
|
|
1171
|
+
let oldCountLocalStorages = 0
|
|
1172
|
+
const deletedItemsLog: { Number: number; Key: string; SavedAt: string }[] = []
|
|
1173
|
+
|
|
1174
|
+
// const pastTime = new Date(Date.now() - 1 * 60 * 1000) // 1 minute
|
|
1175
|
+
const pastTime = new Date(Date.now() - 14 * 24 * 60 * 60 * 1000) // 2 weeks
|
|
1176
|
+
|
|
1177
|
+
for (let i = 0; i < localStorage.length; i++) {
|
|
1178
|
+
const key = localStorage.key(i)
|
|
1179
|
+
|
|
1180
|
+
if (!key) continue
|
|
1181
|
+
if (!key.startsWith('page-builder-update-resource-')) continue
|
|
1182
|
+
|
|
1183
|
+
try {
|
|
1184
|
+
const storeComponents = localStorage.getItem(key)
|
|
1185
|
+
if (!storeComponents) continue
|
|
1186
|
+
|
|
1187
|
+
const storeComponentsParsed = JSON.parse(storeComponents)
|
|
1188
|
+
const savedAt = storeComponentsParsed.pageBuilderContentSavedAt
|
|
1189
|
+
if (savedAt) {
|
|
1190
|
+
const savedAtDate = new Date(savedAt)
|
|
1191
|
+
|
|
1192
|
+
if (savedAtDate < pastTime) {
|
|
1193
|
+
oldCountLocalStorages++
|
|
1194
|
+
deletedItemsLog.push({
|
|
1195
|
+
Number: oldCountLocalStorages,
|
|
1196
|
+
Key: key,
|
|
1197
|
+
SavedAt: savedAt,
|
|
1198
|
+
})
|
|
1199
|
+
|
|
1200
|
+
// Delete old items
|
|
1201
|
+
localStorage.removeItem(key)
|
|
1202
|
+
}
|
|
1203
|
+
}
|
|
1204
|
+
} catch (e) {
|
|
1205
|
+
// Ignore parse errors for unrelated keys
|
|
1206
|
+
}
|
|
1207
|
+
}
|
|
1208
|
+
|
|
1209
|
+
if (deletedItemsLog.length > 0) {
|
|
1210
|
+
console.info(
|
|
1211
|
+
`Deleted ${deletedItemsLog.length} localStorage item(s) older than ${pastTime} days:`,
|
|
1212
|
+
)
|
|
1213
|
+
console.table(deletedItemsLog)
|
|
1214
|
+
}
|
|
1215
|
+
}
|
|
1216
|
+
}
|
|
1217
|
+
|
|
1160
1218
|
getStorageItemNameForResource(): string | null {
|
|
1161
1219
|
return this.getLocalStorageItemName.value
|
|
1162
1220
|
}
|
|
@@ -1431,19 +1489,20 @@ class PageBuilderClass {
|
|
|
1431
1489
|
}
|
|
1432
1490
|
}
|
|
1433
1491
|
|
|
1434
|
-
// Private method to parse JSON components and save
|
|
1492
|
+
// Private method to parse JSON components and save pageBuilderContentSavedAt to localStorage
|
|
1435
1493
|
#parseJSONComponents(jsonData: string): void {
|
|
1436
1494
|
try {
|
|
1437
1495
|
const parsedData = JSON.parse(jsonData)
|
|
1438
1496
|
let componentsArray: ComponentObject[] = []
|
|
1439
|
-
let
|
|
1497
|
+
let pageBuilderContentSavedAt: string | undefined = undefined
|
|
1440
1498
|
|
|
1441
1499
|
// Support both old and new structure
|
|
1442
1500
|
if (Array.isArray(parsedData)) {
|
|
1443
1501
|
componentsArray = parsedData
|
|
1444
1502
|
} else if (parsedData && Array.isArray(parsedData.components)) {
|
|
1445
1503
|
componentsArray = parsedData.components
|
|
1446
|
-
|
|
1504
|
+
|
|
1505
|
+
pageBuilderContentSavedAt = parsedData.pageBuilderContentSavedAt
|
|
1447
1506
|
}
|
|
1448
1507
|
|
|
1449
1508
|
let savedCurrentDesign: ComponentObject[] = []
|
|
@@ -1479,9 +1538,9 @@ class PageBuilderClass {
|
|
|
1479
1538
|
|
|
1480
1539
|
this.pageBuilderStateStore.setComponents(savedCurrentDesign)
|
|
1481
1540
|
|
|
1482
|
-
// Save to localStorage with
|
|
1541
|
+
// Save to localStorage with pageBuilderContentSavedAt using the correct key
|
|
1483
1542
|
const dataToSave = {
|
|
1484
|
-
|
|
1543
|
+
pageBuilderContentSavedAt: parsedData.pageBuilderContentSavedAt || new Date().toISOString(),
|
|
1485
1544
|
components: savedCurrentDesign,
|
|
1486
1545
|
}
|
|
1487
1546
|
|
|
@@ -1549,13 +1608,23 @@ class PageBuilderClass {
|
|
|
1549
1608
|
|
|
1550
1609
|
const storedData = this.areComponentsStoredInLocalStorage()
|
|
1551
1610
|
|
|
1552
|
-
if (
|
|
1611
|
+
if (
|
|
1612
|
+
this.pageBuilderStateStore.getConfigPageBuilder &&
|
|
1613
|
+
this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate &&
|
|
1614
|
+
typeof this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate.formType === 'string' &&
|
|
1615
|
+
this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate.formType === 'create'
|
|
1616
|
+
) {
|
|
1553
1617
|
if (storedData) {
|
|
1554
1618
|
this.setComponentsFromData(storedData)
|
|
1555
1619
|
}
|
|
1556
1620
|
}
|
|
1557
1621
|
|
|
1558
|
-
if (
|
|
1622
|
+
if (
|
|
1623
|
+
this.pageBuilderStateStore.getConfigPageBuilder &&
|
|
1624
|
+
this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate &&
|
|
1625
|
+
typeof this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate.formType === 'string' &&
|
|
1626
|
+
this.pageBuilderStateStore.getConfigPageBuilder.updateOrCreate.formType === 'update'
|
|
1627
|
+
) {
|
|
1559
1628
|
if (data) {
|
|
1560
1629
|
this.setComponentsFromData(data)
|
|
1561
1630
|
}
|