@pixelated-tech/components 3.9.6 → 3.9.10
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/README.md +2 -0
- package/dist/components/admin/site-health/site-health-axe-core.js +4 -1
- package/dist/components/admin/site-health/site-health-uptime.integration.js +21 -2
- package/dist/components/config/config.js +3 -0
- package/dist/components/general/sitemap.js +2 -2
- package/dist/components/general/smartimage.js +1 -1
- package/dist/components/{utilities/functions.js → general/utilities.js} +2 -5
- package/dist/components/{general → integrations}/contentful.items.components.js +1 -1
- package/dist/components/{general → integrations}/flickr.js +1 -1
- package/dist/components/{utilities → integrations}/gemini-api.client.js +4 -1
- package/dist/components/{utilities → integrations}/gemini-api.server.js +10 -4
- package/dist/components/{general → integrations}/google.reviews.components.js +1 -1
- package/dist/components/{general → integrations}/instagram.components.js +2 -2
- package/dist/components/{general → integrations}/socialcard.js +2 -2
- package/dist/components/{general → integrations}/wordpress.components.js +3 -3
- package/dist/components/shoppingcart/ebay.components.js +1 -1
- package/dist/components/shoppingcart/ebay.functions.js +1 -1
- package/dist/components/shoppingcart/shoppingcart.functions.js +1 -1
- package/dist/components/sitebuilder/config/ConfigBuilder.js +7 -3
- package/dist/components/sitebuilder/form/formfieldvalidations.js +1 -1
- package/dist/components/sitebuilder/form/formutils.js +1 -1
- package/dist/components/sitebuilder/page/components/PageEngine.js +1 -1
- package/dist/components/sitebuilder/page/lib/pageStorageContentful.js +2 -2
- package/dist/config/pixelated.config.json.enc +1 -0
- package/dist/index.adminserver.js +1 -1
- package/dist/index.js +21 -22
- package/dist/index.server.js +10 -18
- package/dist/scripts/build.sh +86 -0
- package/dist/scripts/config-vault.js +24 -9
- package/dist/scripts/config-vault.ts +24 -9
- package/dist/scripts/release.sh +232 -85
- package/dist/scripts/validate-exports.cjs +1 -1
- package/dist/scripts/validate-exports.js +1 -1
- package/dist/types/components/admin/site-health/site-health-axe-core.d.ts.map +1 -1
- package/dist/types/components/admin/site-health/site-health-uptime.integration.d.ts.map +1 -1
- package/dist/types/components/config/config.d.ts.map +1 -1
- package/dist/types/components/general/schema-blogposting.functions.d.ts +1 -1
- package/dist/types/components/general/schema-blogposting.functions.d.ts.map +1 -1
- package/dist/types/components/general/sitemap.d.ts.map +1 -1
- package/dist/types/components/{utilities/functions.d.ts → general/utilities.d.ts} +1 -2
- package/dist/types/components/general/utilities.d.ts.map +1 -0
- package/dist/types/components/integrations/calendly.d.ts.map +1 -0
- package/dist/types/components/integrations/cloudinary.d.ts.map +1 -0
- package/dist/types/components/integrations/contentful.delivery.d.ts.map +1 -0
- package/dist/types/components/integrations/contentful.items.components.d.ts.map +1 -0
- package/dist/types/components/integrations/contentful.management.d.ts.map +1 -0
- package/dist/types/components/{general → integrations}/flickr.d.ts +1 -1
- package/dist/types/components/integrations/flickr.d.ts.map +1 -0
- package/dist/types/components/integrations/gemini-api.client.d.ts.map +1 -0
- package/dist/types/components/integrations/gemini-api.server.d.ts.map +1 -0
- package/dist/types/components/integrations/google.reviews.components.d.ts.map +1 -0
- package/dist/types/components/integrations/google.reviews.functions.d.ts.map +1 -0
- package/dist/types/components/integrations/googleanalytics.d.ts.map +1 -0
- package/dist/types/components/integrations/googlemap.d.ts.map +1 -0
- package/dist/types/components/integrations/googlesearch.d.ts.map +1 -0
- package/dist/types/components/integrations/gravatar.components.d.ts.map +1 -0
- package/dist/types/components/integrations/gravatar.functions.d.ts.map +1 -0
- package/dist/types/components/integrations/hubspot.components.d.ts.map +1 -0
- package/dist/types/components/integrations/instagram.components.d.ts.map +1 -0
- package/dist/types/components/{general → integrations}/instagram.functions.d.ts +1 -1
- package/dist/types/components/integrations/instagram.functions.d.ts.map +1 -0
- package/dist/types/components/integrations/socialcard.d.ts.map +1 -0
- package/dist/types/components/integrations/wordpress.components.d.ts.map +1 -0
- package/dist/types/components/integrations/wordpress.functions.d.ts.map +1 -0
- package/dist/types/components/integrations/yelp.d.ts.map +1 -0
- package/dist/types/components/sitebuilder/config/ConfigBuilder.d.ts.map +1 -1
- package/dist/types/components/sitebuilder/form/formutils.d.ts +1 -1
- package/dist/types/components/sitebuilder/form/formutils.d.ts.map +1 -1
- package/dist/types/components/sitebuilder/page/lib/pageStorageContentful.d.ts +1 -1
- package/dist/types/components/sitebuilder/page/lib/pageStorageContentful.d.ts.map +1 -1
- package/dist/types/index.adminserver.d.ts +1 -1
- package/dist/types/index.d.ts +21 -22
- package/dist/types/index.server.d.ts +10 -10
- package/dist/types/stories/general/contentful.item.stories.d.ts +1 -1
- package/dist/types/stories/general/contentful.item.stories.d.ts.map +1 -1
- package/dist/types/stories/general/contentful.items.stories.d.ts +1 -1
- package/dist/types/stories/general/contentful.items.stories.d.ts.map +1 -1
- package/dist/types/stories/general/google.reviews.stories.d.ts +1 -1
- package/dist/types/stories/general/google.reviews.stories.d.ts.map +1 -1
- package/dist/types/stories/general/googleanalytics.stories.d.ts +1 -1
- package/dist/types/stories/general/googleanalytics.stories.d.ts.map +1 -1
- package/dist/types/stories/general/googlesearch.stories.d.ts +1 -1
- package/dist/types/stories/general/googlesearch.stories.d.ts.map +1 -1
- package/dist/types/stories/general/gravatar.stories.d.ts +1 -1
- package/dist/types/stories/general/gravatar.stories.d.ts.map +1 -1
- package/dist/types/stories/general/instagram.stories.d.ts +1 -1
- package/dist/types/stories/general/instagram.stories.d.ts.map +1 -1
- package/dist/types/stories/general/socialcard.stories.d.ts +1 -1
- package/dist/types/stories/general/socialcard.stories.d.ts.map +1 -1
- package/dist/types/stories/general/wordpress.stories.d.ts +1 -1
- package/dist/types/stories/general/wordpress.stories.d.ts.map +1 -1
- package/dist/types/tests/utilities.test.d.ts +2 -0
- package/dist/types/tests/utilities.test.d.ts.map +1 -0
- package/package.json +14 -11
- package/dist/config/pixelated.config.json +0 -85
- package/dist/test/config.mock.js +0 -13
- package/dist/test/run-analyzeGitHealth.js +0 -50
- package/dist/test/setup.js +0 -46
- package/dist/test/test-utils.js +0 -23
- package/dist/types/components/general/calendly.d.ts.map +0 -1
- package/dist/types/components/general/cloudinary.d.ts.map +0 -1
- package/dist/types/components/general/contentful.delivery.d.ts.map +0 -1
- package/dist/types/components/general/contentful.items.components.d.ts.map +0 -1
- package/dist/types/components/general/contentful.management.d.ts.map +0 -1
- package/dist/types/components/general/flickr.d.ts.map +0 -1
- package/dist/types/components/general/google.reviews.components.d.ts.map +0 -1
- package/dist/types/components/general/google.reviews.functions.d.ts.map +0 -1
- package/dist/types/components/general/googleanalytics.d.ts.map +0 -1
- package/dist/types/components/general/googlemap.d.ts.map +0 -1
- package/dist/types/components/general/googlesearch.d.ts.map +0 -1
- package/dist/types/components/general/gravatar.components.d.ts.map +0 -1
- package/dist/types/components/general/gravatar.functions.d.ts.map +0 -1
- package/dist/types/components/general/hubspot.components.d.ts.map +0 -1
- package/dist/types/components/general/instagram.components.d.ts.map +0 -1
- package/dist/types/components/general/instagram.functions.d.ts.map +0 -1
- package/dist/types/components/general/socialcard.d.ts.map +0 -1
- package/dist/types/components/general/wordpress.components.d.ts.map +0 -1
- package/dist/types/components/general/wordpress.functions.d.ts.map +0 -1
- package/dist/types/components/general/yelp.d.ts.map +0 -1
- package/dist/types/components/utilities/functions.d.ts.map +0 -1
- package/dist/types/components/utilities/gemini-api.client.d.ts.map +0 -1
- package/dist/types/components/utilities/gemini-api.server.d.ts.map +0 -1
- package/dist/types/tests/functions.test.d.ts +0 -2
- package/dist/types/tests/functions.test.d.ts.map +0 -1
- /package/dist/components/{general → integrations}/calendly.js +0 -0
- /package/dist/components/{general → integrations}/cloudinary.js +0 -0
- /package/dist/components/{general → integrations}/contentful.delivery.js +0 -0
- /package/dist/components/{general → integrations}/contentful.items.css +0 -0
- /package/dist/components/{general → integrations}/contentful.management.js +0 -0
- /package/dist/components/{general → integrations}/google.reviews.css +0 -0
- /package/dist/components/{general → integrations}/google.reviews.functions.js +0 -0
- /package/dist/components/{general → integrations}/googleanalytics.js +0 -0
- /package/dist/components/{general → integrations}/googlemap.js +0 -0
- /package/dist/components/{general → integrations}/googlesearch.css +0 -0
- /package/dist/components/{general → integrations}/googlesearch.js +0 -0
- /package/dist/components/{general → integrations}/gravatar.components.js +0 -0
- /package/dist/components/{general → integrations}/gravatar.css +0 -0
- /package/dist/components/{general → integrations}/gravatar.functions.js +0 -0
- /package/dist/components/{general → integrations}/hubspot.components.js +0 -0
- /package/dist/components/{general → integrations}/instagram.functions.js +0 -0
- /package/dist/components/{general → integrations}/socialcard.css +0 -0
- /package/dist/components/{general → integrations}/wordpress.css +0 -0
- /package/dist/components/{general → integrations}/wordpress.functions.js +0 -0
- /package/dist/components/{general → integrations}/yelp.js +0 -0
- /package/dist/types/components/{general → integrations}/calendly.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/cloudinary.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/contentful.delivery.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/contentful.items.components.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/contentful.management.d.ts +0 -0
- /package/dist/types/components/{utilities → integrations}/gemini-api.client.d.ts +0 -0
- /package/dist/types/components/{utilities → integrations}/gemini-api.server.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/google.reviews.components.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/google.reviews.functions.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/googleanalytics.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/googlemap.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/googlesearch.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/gravatar.components.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/gravatar.functions.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/hubspot.components.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/instagram.components.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/socialcard.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/wordpress.components.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/wordpress.functions.d.ts +0 -0
- /package/dist/types/components/{general → integrations}/yelp.d.ts +0 -0
|
@@ -7,6 +7,10 @@ import { encrypt, decrypt, isEncrypted } from '../components/config/crypto';
|
|
|
7
7
|
* Usage:
|
|
8
8
|
* npx tsx src/scripts/config-vault.js encrypt <filePath> <key>
|
|
9
9
|
* npx tsx src/scripts/config-vault.js decrypt <filePath> <key>
|
|
10
|
+
*
|
|
11
|
+
* Behavior changes:
|
|
12
|
+
* - `encrypt` writes to `<file>.enc` (does not overwrite the plain file)
|
|
13
|
+
* - `decrypt` writes atomically to the plain filename (when given a `.enc` file it writes to the base name)
|
|
10
14
|
*/
|
|
11
15
|
const [, , command, targetPath, argKey] = process.argv;
|
|
12
16
|
let key = argKey || process.env.PIXELATED_CONFIG_KEY;
|
|
@@ -23,8 +27,8 @@ if (!key) {
|
|
|
23
27
|
}
|
|
24
28
|
if (!command || !targetPath || !key) {
|
|
25
29
|
console.log('Usage:');
|
|
26
|
-
console.log(' encrypt <filePath> [key] - Encrypts the file
|
|
27
|
-
console.log(' decrypt <filePath> [key] - Decrypts the file
|
|
30
|
+
console.log(' encrypt <filePath> [key] - Encrypts the file and writes `<filePath>.enc`');
|
|
31
|
+
console.log(' decrypt <filePath> [key] - Decrypts the file and writes the plaintext file (atomic write)');
|
|
28
32
|
console.log('\nNote: Key can be passed as argument or via PIXELATED_CONFIG_KEY env var.');
|
|
29
33
|
process.exit(1);
|
|
30
34
|
}
|
|
@@ -33,25 +37,36 @@ if (!fs.existsSync(fullPath)) {
|
|
|
33
37
|
console.error(`File not found: ${fullPath}`);
|
|
34
38
|
process.exit(1);
|
|
35
39
|
}
|
|
36
|
-
const
|
|
40
|
+
const atomicWrite = (destPath, data) => {
|
|
41
|
+
const dir = path.dirname(destPath);
|
|
42
|
+
const base = path.basename(destPath);
|
|
43
|
+
const tmp = path.join(dir, `.${base}.tmp`);
|
|
44
|
+
fs.writeFileSync(tmp, data, 'utf8');
|
|
45
|
+
fs.renameSync(tmp, destPath);
|
|
46
|
+
};
|
|
37
47
|
try {
|
|
38
48
|
if (command === 'encrypt') {
|
|
49
|
+
const content = fs.readFileSync(fullPath, 'utf8');
|
|
39
50
|
if (isEncrypted(content)) {
|
|
40
|
-
console.log('File is already encrypted.');
|
|
51
|
+
console.log('File is already encrypted. No action taken.');
|
|
41
52
|
process.exit(0);
|
|
42
53
|
}
|
|
43
54
|
const encrypted = encrypt(content, key);
|
|
44
|
-
|
|
45
|
-
|
|
55
|
+
const encPath = fullPath.endsWith('.enc') ? fullPath : `${fullPath}.enc`;
|
|
56
|
+
atomicWrite(encPath, encrypted);
|
|
57
|
+
console.log(`Successfully encrypted ${targetPath} -> ${path.basename(encPath)}`);
|
|
46
58
|
}
|
|
47
59
|
else if (command === 'decrypt') {
|
|
60
|
+
const content = fs.readFileSync(fullPath, 'utf8');
|
|
48
61
|
if (!isEncrypted(content)) {
|
|
49
|
-
console.log('File is not encrypted.');
|
|
62
|
+
console.log('File is not encrypted. No action taken.');
|
|
50
63
|
process.exit(0);
|
|
51
64
|
}
|
|
52
65
|
const decrypted = decrypt(content, key);
|
|
53
|
-
|
|
54
|
-
|
|
66
|
+
// Destination: if input ends with .enc, strip it; otherwise overwrite the provided path
|
|
67
|
+
const destPath = fullPath.endsWith('.enc') ? fullPath.slice(0, -4) : fullPath;
|
|
68
|
+
atomicWrite(destPath, decrypted);
|
|
69
|
+
console.log(`Successfully decrypted ${path.basename(fullPath)} -> ${path.basename(destPath)}`);
|
|
55
70
|
}
|
|
56
71
|
else {
|
|
57
72
|
console.error(`Unknown command: ${command}`);
|
|
@@ -8,6 +8,10 @@ import { encrypt, decrypt, isEncrypted } from '../components/config/crypto';
|
|
|
8
8
|
* Usage:
|
|
9
9
|
* npx tsx src/scripts/config-vault.js encrypt <filePath> <key>
|
|
10
10
|
* npx tsx src/scripts/config-vault.js decrypt <filePath> <key>
|
|
11
|
+
*
|
|
12
|
+
* Behavior changes:
|
|
13
|
+
* - `encrypt` writes to `<file>.enc` (does not overwrite the plain file)
|
|
14
|
+
* - `decrypt` writes atomically to the plain filename (when given a `.enc` file it writes to the base name)
|
|
11
15
|
*/
|
|
12
16
|
|
|
13
17
|
const [,, command, targetPath, argKey] = process.argv;
|
|
@@ -27,8 +31,8 @@ if (!key) {
|
|
|
27
31
|
|
|
28
32
|
if (!command || !targetPath || !key) {
|
|
29
33
|
console.log('Usage:');
|
|
30
|
-
console.log(' encrypt <filePath> [key] - Encrypts the file
|
|
31
|
-
console.log(' decrypt <filePath> [key] - Decrypts the file
|
|
34
|
+
console.log(' encrypt <filePath> [key] - Encrypts the file and writes `<filePath>.enc`');
|
|
35
|
+
console.log(' decrypt <filePath> [key] - Decrypts the file and writes the plaintext file (atomic write)');
|
|
32
36
|
console.log('\nNote: Key can be passed as argument or via PIXELATED_CONFIG_KEY env var.');
|
|
33
37
|
process.exit(1);
|
|
34
38
|
}
|
|
@@ -40,25 +44,36 @@ if (!fs.existsSync(fullPath)) {
|
|
|
40
44
|
process.exit(1);
|
|
41
45
|
}
|
|
42
46
|
|
|
43
|
-
const
|
|
47
|
+
const atomicWrite = (destPath: string, data: string) => {
|
|
48
|
+
const dir = path.dirname(destPath);
|
|
49
|
+
const base = path.basename(destPath);
|
|
50
|
+
const tmp = path.join(dir, `.${base}.tmp`);
|
|
51
|
+
fs.writeFileSync(tmp, data, 'utf8');
|
|
52
|
+
fs.renameSync(tmp, destPath);
|
|
53
|
+
};
|
|
44
54
|
|
|
45
55
|
try {
|
|
46
56
|
if (command === 'encrypt') {
|
|
57
|
+
const content = fs.readFileSync(fullPath, 'utf8');
|
|
47
58
|
if (isEncrypted(content)) {
|
|
48
|
-
console.log('File is already encrypted.');
|
|
59
|
+
console.log('File is already encrypted. No action taken.');
|
|
49
60
|
process.exit(0);
|
|
50
61
|
}
|
|
51
62
|
const encrypted = encrypt(content, key);
|
|
52
|
-
|
|
53
|
-
|
|
63
|
+
const encPath = fullPath.endsWith('.enc') ? fullPath : `${fullPath}.enc`;
|
|
64
|
+
atomicWrite(encPath, encrypted);
|
|
65
|
+
console.log(`Successfully encrypted ${targetPath} -> ${path.basename(encPath)}`);
|
|
54
66
|
} else if (command === 'decrypt') {
|
|
67
|
+
const content = fs.readFileSync(fullPath, 'utf8');
|
|
55
68
|
if (!isEncrypted(content)) {
|
|
56
|
-
console.log('File is not encrypted.');
|
|
69
|
+
console.log('File is not encrypted. No action taken.');
|
|
57
70
|
process.exit(0);
|
|
58
71
|
}
|
|
59
72
|
const decrypted = decrypt(content, key);
|
|
60
|
-
|
|
61
|
-
|
|
73
|
+
// Destination: if input ends with .enc, strip it; otherwise overwrite the provided path
|
|
74
|
+
const destPath = fullPath.endsWith('.enc') ? fullPath.slice(0, -4) : fullPath;
|
|
75
|
+
atomicWrite(destPath, decrypted);
|
|
76
|
+
console.log(`Successfully decrypted ${path.basename(fullPath)} -> ${path.basename(destPath)}`);
|
|
62
77
|
} else {
|
|
63
78
|
console.error(`Unknown command: ${command}`);
|
|
64
79
|
process.exit(1);
|
package/dist/scripts/release.sh
CHANGED
|
@@ -8,6 +8,36 @@ set -e # Exit on any error
|
|
|
8
8
|
# Get project name from package.json
|
|
9
9
|
PROJECT_NAME=$(node -p "require('./package.json').name" 2>/dev/null || echo "unknown-project")
|
|
10
10
|
|
|
11
|
+
# Initialize step counter
|
|
12
|
+
STEP_COUNT=1
|
|
13
|
+
|
|
14
|
+
# Function to get current version
|
|
15
|
+
get_current_version() {
|
|
16
|
+
node -p "require('./package.json').version"
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
echo ""
|
|
22
|
+
echo "================================================="
|
|
23
|
+
echo "🚀 Starting Release Process for $PROJECT_NAME"
|
|
24
|
+
echo "================================================="
|
|
25
|
+
echo ""
|
|
26
|
+
# Check if we're on dev branch
|
|
27
|
+
current_branch=$(git branch --show-current)
|
|
28
|
+
if [ "$current_branch" != "dev" ]; then
|
|
29
|
+
echo "❌ Error: Must be on dev branch to run this script"
|
|
30
|
+
echo "Current branch: $current_branch"
|
|
31
|
+
echo "Please switch to dev branch: git checkout dev"
|
|
32
|
+
exit 1
|
|
33
|
+
fi
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
# Select remote
|
|
38
|
+
echo ""
|
|
39
|
+
echo "🔑 Step $((STEP_COUNT++)): Locating GitHub token in config..."
|
|
40
|
+
echo "================================================="
|
|
11
41
|
# Function to prompt for remote selection
|
|
12
42
|
prompt_remote_selection() {
|
|
13
43
|
echo "Available git remotes:" >&2
|
|
@@ -17,10 +47,8 @@ prompt_remote_selection() {
|
|
|
17
47
|
echo "$i) $remote" >&2
|
|
18
48
|
((i++))
|
|
19
49
|
done
|
|
20
|
-
|
|
21
50
|
local choice
|
|
22
51
|
read -p "Select remote to use (1-${#remotes[@]}): " choice >&2
|
|
23
|
-
|
|
24
52
|
case $choice in
|
|
25
53
|
[1-9]|[1-9][0-9])
|
|
26
54
|
if [ "$choice" -le "${#remotes[@]}" ]; then
|
|
@@ -32,80 +60,57 @@ prompt_remote_selection() {
|
|
|
32
60
|
*) echo "${remotes[0]}" ;; # Default to first remote
|
|
33
61
|
esac
|
|
34
62
|
}
|
|
35
|
-
|
|
36
|
-
# Select remote
|
|
37
63
|
REMOTE_NAME=$(prompt_remote_selection)
|
|
38
64
|
|
|
39
|
-
echo ""
|
|
40
|
-
echo "🚀 Starting Release Process for $PROJECT_NAME"
|
|
41
|
-
echo "================================================="
|
|
42
|
-
echo ""
|
|
43
65
|
|
|
44
|
-
# Function to get current version
|
|
45
|
-
get_current_version() {
|
|
46
|
-
node -p "require('./package.json').version"
|
|
47
|
-
}
|
|
48
66
|
|
|
49
|
-
# Function to prompt for version bump type
|
|
50
|
-
prompt_version_type() {
|
|
51
|
-
echo "Current version: $(get_current_version)" >&2
|
|
52
|
-
echo "Select version bump type:" >&2
|
|
53
|
-
echo "1) patch (x.x.1)" >&2
|
|
54
|
-
echo "2) minor (x.1.0)" >&2
|
|
55
|
-
echo "3) major (1.x.x)" >&2
|
|
56
|
-
echo "4) custom version" >&2
|
|
57
|
-
echo "5) no version bump" >&2
|
|
58
|
-
read -p "Enter choice (1-5): " choice >&2
|
|
59
|
-
case $choice in
|
|
60
|
-
1) version_type="patch" ;;
|
|
61
|
-
2) version_type="minor" ;;
|
|
62
|
-
3) version_type="major" ;;
|
|
63
|
-
4)
|
|
64
|
-
read -p "Enter custom version: " custom_version >&2
|
|
65
|
-
version_type="$custom_version"
|
|
66
|
-
;;
|
|
67
|
-
5) version_type="none" ;;
|
|
68
|
-
*) version_type="patch" ;; # default
|
|
69
|
-
esac
|
|
70
|
-
}
|
|
71
67
|
|
|
72
|
-
#
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
68
|
+
# Attempt to source GITHUB token from pixelated config (without printing it)
|
|
69
|
+
# Looks in a few common locations; will decrypt if needed and possible
|
|
70
|
+
echo ""
|
|
71
|
+
echo "🔑 Step $((STEP_COUNT++)): Locating GitHub token in config..."
|
|
72
|
+
echo "================================================="
|
|
73
|
+
GITHUB_TOKEN_SOURCE=""
|
|
74
|
+
config_paths=("src/app/config/pixelated.config.json" "src/config/pixelated.config.json" "src/pixelated.config.json")
|
|
75
|
+
for cfg in "${config_paths[@]}"; do
|
|
76
|
+
if [ -f "$cfg" ]; then
|
|
77
|
+
token=$(node -e "try{const fs=require('fs');const p=process.argv[1];const d=JSON.parse(fs.readFileSync(p,'utf8'));const v=d.GITHUB_TOKEN||(d.github&&d.github.token)||d.github_token||(d.tokens&&d.tokens.github&&d.tokens.github.token); if(v) console.log(v)}catch(e){}" "$cfg" 2>/dev/null || true)
|
|
78
|
+
if [ -n "$token" ]; then
|
|
79
|
+
export GITHUB_TOKEN="$token"
|
|
80
|
+
GITHUB_TOKEN_SOURCE="$cfg"
|
|
81
|
+
echo "✅ GITHUB token loaded from $cfg"
|
|
82
|
+
break
|
|
83
|
+
fi
|
|
79
84
|
fi
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
if [ "$should_publish" = "y" ] || [ "$should_publish" = "Y" ]; then
|
|
86
|
-
echo "yes"
|
|
85
|
+
done
|
|
86
|
+
# If not found and we have config:decrypt available and a key, try to decrypt temporarily
|
|
87
|
+
if [ -z "$GITHUB_TOKEN" ] && grep -q "\"config:decrypt\":" package.json 2>/dev/null; then
|
|
88
|
+
if [ -z "$PIXELATED_CONFIG_KEY" ]; then
|
|
89
|
+
echo "⚠️ PIXELATED_CONFIG_KEY not set; cannot decrypt config to find token"
|
|
87
90
|
else
|
|
88
|
-
echo "
|
|
91
|
+
echo "🔓 Decrypting config to locate GitHub token..."
|
|
92
|
+
if npm run config:decrypt; then
|
|
93
|
+
for cfg in "${config_paths[@]}"; do
|
|
94
|
+
if [ -f "$cfg" ]; then
|
|
95
|
+
token=$(node -e "try{const fs=require('fs');const p=process.argv[1];const d=JSON.parse(fs.readFileSync(p,'utf8'));const v=d.GITHUB_TOKEN||(d.github&&d.github.token)||d.github_token||(d.tokens&&d.tokens.github&&d.tokens.github.token); if(v) console.log(v)}catch(e){}" "$cfg" 2>/dev/null || true)
|
|
96
|
+
if [ -n "$token" ]; then
|
|
97
|
+
export GITHUB_TOKEN="$token"
|
|
98
|
+
GITHUB_TOKEN_SOURCE="$cfg"
|
|
99
|
+
echo "✅ GITHUB token loaded from $cfg after decrypt"
|
|
100
|
+
break
|
|
101
|
+
fi
|
|
102
|
+
fi
|
|
103
|
+
done
|
|
104
|
+
else
|
|
105
|
+
echo "❌ config:decrypt failed; cannot load GitHub token"
|
|
106
|
+
fi
|
|
89
107
|
fi
|
|
90
|
-
|
|
108
|
+
fi
|
|
91
109
|
|
|
92
|
-
# Function to prompt for OTP
|
|
93
|
-
prompt_otp() {
|
|
94
|
-
read -p "Enter npm OTP: " otp
|
|
95
|
-
echo "$otp"
|
|
96
|
-
}
|
|
97
110
|
|
|
98
|
-
# Check if we're on dev branch
|
|
99
|
-
current_branch=$(git branch --show-current)
|
|
100
|
-
if [ "$current_branch" != "dev" ]; then
|
|
101
|
-
echo "❌ Error: Must be on dev branch to run this script"
|
|
102
|
-
echo "Current branch: $current_branch"
|
|
103
|
-
echo "Please switch to dev branch: git checkout dev"
|
|
104
|
-
exit 1
|
|
105
|
-
fi
|
|
106
111
|
|
|
107
112
|
echo ""
|
|
108
|
-
echo "📦 Step
|
|
113
|
+
echo "📦 Step $((STEP_COUNT++)): Updating dependencies..."
|
|
109
114
|
echo "================================================="
|
|
110
115
|
UPDATES=$(npm outdated | awk 'NR>1 {print $1"@"$4}' || true)
|
|
111
116
|
if [ -n "$UPDATES" ]; then
|
|
@@ -117,19 +122,88 @@ else
|
|
|
117
122
|
fi
|
|
118
123
|
npm audit fix --force 2>/dev/null || true
|
|
119
124
|
|
|
125
|
+
|
|
126
|
+
|
|
120
127
|
echo ""
|
|
121
|
-
echo "🔍 Step
|
|
128
|
+
echo "🔍 Step $((STEP_COUNT++)): Running lint..."
|
|
122
129
|
echo "================================================="
|
|
123
130
|
npm run lint
|
|
124
131
|
|
|
132
|
+
|
|
133
|
+
|
|
125
134
|
echo ""
|
|
126
|
-
echo "🔨 Step
|
|
135
|
+
echo "🔨 Step $((STEP_COUNT++)): Encrypting configuration..."
|
|
136
|
+
echo "================================================="
|
|
137
|
+
if grep -q "\"config:encrypt\":" package.json; then
|
|
138
|
+
echo "🔒 Encrypting configuration..."
|
|
139
|
+
npm run config:encrypt
|
|
140
|
+
echo "✅ Encrypted configuration successfully."
|
|
141
|
+
else
|
|
142
|
+
echo "❌ Encryption failed. Please add config:encrypt script to package.json."
|
|
143
|
+
exit 1
|
|
144
|
+
fi
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
echo ""
|
|
149
|
+
echo "🔨 Step $((STEP_COUNT++)): Building project..."
|
|
127
150
|
echo "================================================="
|
|
128
151
|
npm run build
|
|
129
152
|
|
|
153
|
+
# Post-build: if a dist folder exists, ensure it does NOT contain plaintext config and that the .enc file is present
|
|
130
154
|
echo ""
|
|
131
|
-
echo "
|
|
155
|
+
echo "🔧 Step $((STEP_COUNT++)): Post-build config check: cleaning dist and verifying .enc..."
|
|
132
156
|
echo "================================================="
|
|
157
|
+
DIST_DIR="dist"
|
|
158
|
+
PLAIN_DIST_CFG="$DIST_DIR/config/pixelated.config.json"
|
|
159
|
+
ENC_DIST_CFG="$DIST_DIR/config/pixelated.config.json.enc"
|
|
160
|
+
|
|
161
|
+
if [ -d "$DIST_DIR" ]; then
|
|
162
|
+
if [ -f "$PLAIN_DIST_CFG" ]; then
|
|
163
|
+
echo "⚠️ Found plaintext config in dist at $PLAIN_DIST_CFG — removing it to avoid accidental publish."
|
|
164
|
+
rm -f "$PLAIN_DIST_CFG"
|
|
165
|
+
echo "✅ Removed $PLAIN_DIST_CFG"
|
|
166
|
+
else
|
|
167
|
+
echo "ℹ️ No plaintext config found in dist."
|
|
168
|
+
fi
|
|
169
|
+
|
|
170
|
+
if [ -f "$ENC_DIST_CFG" ]; then
|
|
171
|
+
echo "✅ Found encrypted config at $ENC_DIST_CFG"
|
|
172
|
+
else
|
|
173
|
+
echo "❌ Missing encrypted config in dist: $ENC_DIST_CFG. Aborting release."
|
|
174
|
+
exit 1
|
|
175
|
+
fi
|
|
176
|
+
else
|
|
177
|
+
echo "ℹ️ No dist directory found; skipping dist cleanup/verification."
|
|
178
|
+
fi
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
echo ""
|
|
183
|
+
echo "🏷️ Step $((STEP_COUNT++)): Version bump..."
|
|
184
|
+
echo "================================================="
|
|
185
|
+
# Function to prompt for version bump type
|
|
186
|
+
prompt_version_type() {
|
|
187
|
+
echo "Current version: $(get_current_version)" >&2
|
|
188
|
+
echo "Select version bump type:" >&2
|
|
189
|
+
echo "1) patch (x.x.1)" >&2
|
|
190
|
+
echo "2) minor (x.1.0)" >&2
|
|
191
|
+
echo "3) major (1.x.x)" >&2
|
|
192
|
+
echo "4) custom version" >&2
|
|
193
|
+
echo "5) no version bump" >&2
|
|
194
|
+
read -p "Enter choice (1-5): " choice >&2
|
|
195
|
+
case $choice in
|
|
196
|
+
1) version_type="patch" ;;
|
|
197
|
+
2) version_type="minor" ;;
|
|
198
|
+
3) version_type="major" ;;
|
|
199
|
+
4)
|
|
200
|
+
read -p "Enter custom version: " custom_version >&2
|
|
201
|
+
version_type="$custom_version"
|
|
202
|
+
;;
|
|
203
|
+
5) version_type="none" ;;
|
|
204
|
+
*) version_type="patch" ;; # default
|
|
205
|
+
esac
|
|
206
|
+
}
|
|
133
207
|
prompt_version_type
|
|
134
208
|
if [ "$version_type" != "none" ]; then
|
|
135
209
|
if [ "$version_type" = "patch" ] || [ "$version_type" = "minor" ] || [ "$version_type" = "major" ]; then
|
|
@@ -140,13 +214,20 @@ if [ "$version_type" != "none" ]; then
|
|
|
140
214
|
fi
|
|
141
215
|
fi
|
|
142
216
|
|
|
217
|
+
|
|
218
|
+
|
|
143
219
|
echo ""
|
|
144
|
-
echo "💾 Step
|
|
220
|
+
echo "💾 Step $((STEP_COUNT++)): Committing changes..."
|
|
145
221
|
echo "================================================="
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
222
|
+
# Function to prompt for commit message
|
|
223
|
+
prompt_commit_message() {
|
|
224
|
+
read -p "Enter commit message (or press enter for default): " commit_msg
|
|
225
|
+
if [ -z "$commit_msg" ]; then
|
|
226
|
+
echo "chore: release $(get_current_version)"
|
|
227
|
+
else
|
|
228
|
+
echo "$commit_msg"
|
|
229
|
+
fi
|
|
230
|
+
}
|
|
150
231
|
commit_message=$(prompt_commit_message)
|
|
151
232
|
git add . -v
|
|
152
233
|
if git diff --cached --quiet; then
|
|
@@ -155,8 +236,10 @@ else
|
|
|
155
236
|
git commit -m "$commit_message"
|
|
156
237
|
fi
|
|
157
238
|
|
|
239
|
+
|
|
240
|
+
|
|
158
241
|
echo ""
|
|
159
|
-
echo "📤 Step
|
|
242
|
+
echo "📤 Step $((STEP_COUNT++)): Pushing dev branch..."
|
|
160
243
|
echo "================================================="
|
|
161
244
|
# Try to push, if it fails due to remote changes, fetch and rebase
|
|
162
245
|
if ! git push $REMOTE_NAME dev; then
|
|
@@ -174,8 +257,10 @@ if ! git push $REMOTE_NAME dev; then
|
|
|
174
257
|
fi
|
|
175
258
|
fi
|
|
176
259
|
|
|
260
|
+
|
|
261
|
+
|
|
177
262
|
echo ""
|
|
178
|
-
echo "🔄 Step
|
|
263
|
+
echo "🔄 Step $((STEP_COUNT++)): Updating main branch..."
|
|
179
264
|
echo "================================================="
|
|
180
265
|
# Force main to match dev exactly
|
|
181
266
|
git push $REMOTE_NAME dev:main --force
|
|
@@ -189,44 +274,106 @@ if git show-ref --verify --quiet refs/heads/main; then
|
|
|
189
274
|
git checkout dev
|
|
190
275
|
fi
|
|
191
276
|
|
|
277
|
+
|
|
278
|
+
|
|
192
279
|
echo ""
|
|
193
|
-
echo "🏷️ Step
|
|
280
|
+
echo "🏷️ Step $((STEP_COUNT++)): Creating and pushing git tag and release..."
|
|
194
281
|
echo "================================================="
|
|
195
282
|
new_version=$(get_current_version)
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
283
|
+
release_tag="v${new_version}"
|
|
284
|
+
# Use commit message as tag/release message when available, otherwise default
|
|
285
|
+
tag_message="${commit_message:-"Release $release_tag"}"
|
|
286
|
+
if ! git tag -l | grep -q "$release_tag"; then
|
|
287
|
+
echo "🔖 Creating annotated tag $release_tag"
|
|
288
|
+
git tag -a "$release_tag" -m "$tag_message"
|
|
289
|
+
git push $REMOTE_NAME "$release_tag"
|
|
199
290
|
else
|
|
200
|
-
echo "ℹ️ Tag
|
|
291
|
+
echo "ℹ️ Tag $release_tag already exists"
|
|
201
292
|
fi
|
|
202
293
|
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
# Create a published GitHub release for this tag (prefer gh CLI, fallback to API)
|
|
297
|
+
echo ""
|
|
298
|
+
echo "📣 Step $((STEP_COUNT++)): Creating GitHub release..."
|
|
299
|
+
echo "================================================="
|
|
300
|
+
REMOTE_URL=$(git remote get-url $REMOTE_NAME 2>/dev/null || true)
|
|
301
|
+
|
|
302
|
+
# Use GitHub API only (no gh CLI). Ensure GITHUB_TOKEN is present
|
|
303
|
+
if [ -z "$GITHUB_TOKEN" ]; then
|
|
304
|
+
echo "⚠️ GITHUB_TOKEN not set; skipping GitHub release creation via API"
|
|
305
|
+
else
|
|
306
|
+
# Derive owner/repo from remote URL
|
|
307
|
+
repo_path=$(echo "$REMOTE_URL" | sed -E 's#(git@github.com:|https://github.com/)(.+)(\.git)?$#\2#')
|
|
308
|
+
if [ -z "$repo_path" ]; then
|
|
309
|
+
echo "⚠️ Unable to determine repo path from remote URL; skipping API-based release creation"
|
|
310
|
+
else
|
|
311
|
+
# Check if release exists
|
|
312
|
+
if curl -s -H "Authorization: token $GITHUB_TOKEN" "https://api.github.com/repos/$repo_path/releases/tags/$release_tag" | grep -q '"tag_name"'; then
|
|
313
|
+
echo "ℹ️ Release for $release_tag already exists on GitHub (API)."
|
|
314
|
+
else
|
|
315
|
+
echo "🔔 Creating release via GitHub API for $release_tag"
|
|
316
|
+
payload=$(printf '{"tag_name":"%s","name":"%s","body":"%s","draft":false,"prerelease":false}' "$release_tag" "$release_tag" "${tag_message//\"/\\\"}")
|
|
317
|
+
resp=$(curl -s -X POST -H "Authorization: token $GITHUB_TOKEN" -H "Content-Type: application/json" -d "$payload" "https://api.github.com/repos/$repo_path/releases")
|
|
318
|
+
if echo "$resp" | grep -q '"id"'; then
|
|
319
|
+
echo "✅ Created GitHub release $release_tag"
|
|
320
|
+
else
|
|
321
|
+
echo "❌ Failed to create GitHub release: $resp"
|
|
322
|
+
fi
|
|
323
|
+
fi
|
|
324
|
+
fi
|
|
206
325
|
fi
|
|
207
326
|
|
|
327
|
+
|
|
328
|
+
|
|
208
329
|
echo ""
|
|
209
|
-
echo "🔐 Step
|
|
330
|
+
echo "🔐 Step $((STEP_COUNT++)): Publishing to npm..."
|
|
210
331
|
echo "================================================="
|
|
332
|
+
# Function to prompt for publishing
|
|
333
|
+
prompt_publish() {
|
|
334
|
+
read -p "Do you want to publish to npm? (y/n): " should_publish
|
|
335
|
+
if [ "$should_publish" = "y" ] || [ "$should_publish" = "Y" ]; then
|
|
336
|
+
echo "yes"
|
|
337
|
+
else
|
|
338
|
+
echo "no"
|
|
339
|
+
fi
|
|
340
|
+
}
|
|
341
|
+
# Function to prompt for OTP
|
|
342
|
+
prompt_otp() {
|
|
343
|
+
read -p "Enter npm OTP: " otp
|
|
344
|
+
echo "$otp"
|
|
345
|
+
}
|
|
211
346
|
should_publish=$(prompt_publish)
|
|
212
347
|
if [ "$should_publish" = "yes" ]; then
|
|
213
348
|
npm login
|
|
214
349
|
otp=$(prompt_otp)
|
|
215
|
-
npm publish --access public --otp=$otp
|
|
350
|
+
npm publish --loglevel warn --access public --otp=$otp
|
|
216
351
|
echo "✅ Successfully published to npm!"
|
|
217
352
|
else
|
|
218
353
|
echo "ℹ️ Skipping npm publish"
|
|
219
354
|
echo "You can publish manually with: npm publish --access public"
|
|
220
355
|
fi
|
|
221
356
|
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
if grep -q "\"config:decrypt\":" package.json; then
|
|
360
|
+
echo ""
|
|
361
|
+
echo "🔓 Step $((STEP_COUNT++)): Decrypting configuration for local development..."
|
|
362
|
+
echo "================================================="
|
|
363
|
+
npm run config:decrypt
|
|
364
|
+
fi
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
|
|
222
368
|
echo ""
|
|
223
369
|
echo ""
|
|
224
370
|
echo "================================================="
|
|
225
371
|
echo "✅ Release complete!"
|
|
372
|
+
echo "================================================="
|
|
226
373
|
echo "📦 Version: $(get_current_version)"
|
|
227
374
|
echo "📋 Branches updated: dev, main"
|
|
228
375
|
echo "🏷️ Tag created: v$(get_current_version)"
|
|
229
376
|
|
|
230
377
|
if [ "$should_publish" = "yes" ]; then
|
|
231
378
|
echo "🔗 https://www.npmjs.com/package/$PROJECT_NAME"
|
|
232
|
-
fi
|
|
379
|
+
fi
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import glob from 'glob';
|
|
3
|
-
import { CLIENT_ONLY_PATTERNS, TS_FILE_IGNORE_PATTERNS, TSX_FILE_IGNORE_PATTERNS, SERVER_ONLY_PATTERNS } from '../components/utilities
|
|
3
|
+
import { CLIENT_ONLY_PATTERNS, TS_FILE_IGNORE_PATTERNS, TSX_FILE_IGNORE_PATTERNS, SERVER_ONLY_PATTERNS } from '../components/general/utilities.js';
|
|
4
4
|
|
|
5
5
|
console.log('🔍 Validating exports...\n');
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import glob from 'glob';
|
|
3
|
-
import { CLIENT_ONLY_PATTERNS, TS_FILE_IGNORE_PATTERNS, TSX_FILE_IGNORE_PATTERNS, SERVER_ONLY_PATTERNS } from '../components/utilities
|
|
3
|
+
import { CLIENT_ONLY_PATTERNS, TS_FILE_IGNORE_PATTERNS, TSX_FILE_IGNORE_PATTERNS, SERVER_ONLY_PATTERNS } from '../components/general/utilities.js';
|
|
4
4
|
|
|
5
5
|
console.log('🔍 Validating exports...\n');
|
|
6
6
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"site-health-axe-core.d.ts","sourceRoot":"","sources":["../../../../../src/components/admin/site-health/site-health-axe-core.tsx"],"names":[],"mappings":"AAGA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"site-health-axe-core.d.ts","sourceRoot":"","sources":["../../../../../src/components/admin/site-health/site-health-axe-core.tsx"],"names":[],"mappings":"AAGA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAWnD,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC;AACnF,wBAAgB,iBAAiB,CAAC,EAAE,QAAQ,EAAE,EAAE,qBAAqB,2CAiSpE;yBAjSe,iBAAiB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"site-health-uptime.integration.d.ts","sourceRoot":"","sources":["../../../../../src/components/admin/site-health/site-health-uptime.integration.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"site-health-uptime.integration.d.ts","sourceRoot":"","sources":["../../../../../src/components/admin/site-health/site-health-uptime.integration.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC;IAC5B,IAAI,CAAC,EAAE;QACL,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA+CzF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/components/config/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,gBAAgB,CAAC;AAO1E;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,eAAe,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/components/config/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,gBAAgB,CAAC;AAO1E;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,eAAe,CA0DxD;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,CAAC,EAAE,eAAe,GAAG,eAAe,CAIpF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-blogposting.functions.d.ts","sourceRoot":"","sources":["../../../../src/components/general/schema-blogposting.functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"schema-blogposting.functions.d.ts","sourceRoot":"","sources":["../../../../src/components/general/schema-blogposting.functions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGxE,MAAM,WAAW,iBAAiB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC;KACb,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACxC,IAAI,EAAE,YAAY,EAClB,kBAAkB,GAAE,OAAe,GACjC,iBAAiB,CAyCnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sitemap.d.ts","sourceRoot":"","sources":["../../../../src/components/general/sitemap.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAS1C,MAAM,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAWzD,MAAM,MAAM,aAAa,GAAG;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,SAAS,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,SAAS,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,MAAM,CAAC,EAAE,GAAG,CAAC;CACb,CAAC;AAKF;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,CAAC,EAAE;IAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,SAAS,EAAE,cAAc,SAA0B,UAU7I;AAED,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAEnD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,WAAW,CAAC,EAAE;IAAE,GAAG,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,SAAS,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,UAAU,CAK7I;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAAC,cAAc,SAA0B,mBAatF;AAID,wBAAgB,aAAa,CAAC,MAAM,EAAE,GAAG,SAGxC;AAID,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,YAAY,EAAE,UAU3D;AAID;;;GAGG;AACH,wBAAsB,eAAe,CAAC,GAAG,GAAE,aAAkB,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAmEnH;AAKD,wBAAsB,cAAc,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,EAAE,MAAM,EAAE,MAAM;;;;;;
|
|
1
|
+
{"version":3,"file":"sitemap.d.ts","sourceRoot":"","sources":["../../../../src/components/general/sitemap.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,6 @@ export declare function html2dom(str: string): ChildNode | null;
|
|
|
2
2
|
export declare function mergeDeep(a: any, b: any): {
|
|
3
3
|
[key: string]: any;
|
|
4
4
|
};
|
|
5
|
-
export declare function pushNewValueToStateArray(that: any, oldState: any, newValue: any): void;
|
|
6
5
|
export declare function randomBetween(min: number, max: number): number;
|
|
7
6
|
export declare function generateKey(): string;
|
|
8
7
|
export declare function generateUUID(): string;
|
|
@@ -34,4 +33,4 @@ export declare const TSX_FILE_IGNORE_PATTERNS: string[];
|
|
|
34
33
|
* Regex patterns that identify server-only code that should not run on client
|
|
35
34
|
*/
|
|
36
35
|
export declare const SERVER_ONLY_PATTERNS: RegExp[];
|
|
37
|
-
//# sourceMappingURL=
|
|
36
|
+
//# sourceMappingURL=utilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../../../src/components/general/utilities.ts"],"names":[],"mappings":"AAGA,wBAAgB,QAAQ,CAAE,GAAG,EAAE,MAAM,oBAUpC;AAGD,wBAAgB,SAAS,CAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG;;EAmBxC;AAED,wBAAgB,aAAa,CAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAOtD;AAED,wBAAgB,WAAW,WAc1B;AAED,wBAAgB,YAAY,WAK3B;AAED,wBAAgB,UAAU,CAAE,GAAG,EAAE,MAAM,UAEtC;AAQD,wBAAgB,YAAY,CAAE,YAAY,EAAE,MAAM,UAgCjD;AAID;;;;OAII;AACJ,wBAAgB,YAAY,SAoB3B;AAKD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,UA0BhC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAE9D;AAGD;;GAEG;AACH,eAAO,MAAM,uBAAuB,UAQnC,CAAC;AAEF,eAAO,MAAM,wBAAwB,UAOpC,CAAC;AAGF;;GAEG;AACH,eAAO,MAAM,oBAAoB,UAoBhC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calendly.d.ts","sourceRoot":"","sources":["../../../../src/components/integrations/calendly.tsx"],"names":[],"mappings":"AACA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAOnD,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC;AACjE,wBAAgB,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,YAAY,2CAmB5D;yBAnBe,QAAQ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloudinary.d.ts","sourceRoot":"","sources":["../../../../src/components/integrations/cloudinary.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAiBnD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAAE,UA0CxM;AAQD,MAAM,MAAM,+BAA+B,GAAG,UAAU,CAAC,OAAO,2BAA2B,CAAC,SAAS,CAAC,CAAC;AACvG,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,+BAA+B,UAKjF;yBALe,2BAA2B;;;;;;AAQ3C,wBAAgB,YAAY,YAO3B;AAOD,MAAM,MAAM,+BAA+B,GAAG,UAAU,CAAC,OAAO,2BAA2B,CAAC,SAAS,CAAC,CAAC;AACvG,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,+BAA+B,QAqBjF;yBArBe,2BAA2B"}
|