supermaker-ai-image-master 1766.566.648
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.
- checksums.yaml +7 -0
- data/LICENSE +1 -0
- data/README.md +73 -0
- data/lib/supermaker_ai_image_master.rb +42 -0
- metadata +90 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: '0289f5f54e05b4c47b47a4e95f7e0d8d3dbce9f5be30d1c584b50e25210b51ea'
|
|
4
|
+
data.tar.gz: f4364f070ab80035bdc36e60db3782d13a4aab725fe99cd06ebc444f0499b95f
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: e3f7f93be68cf96a1feecd30f87c723ce408dd4ede249aebb5e76e25ceb579b39f454e0f02afcfb6b38ad523056e3161f756d8896d9b638be509dbae6bcd5f22
|
|
7
|
+
data.tar.gz: 23a2a9265eb84783009a81762367275486fb58b2c86d41b9839e6ea60755d672c433e0c9a9a71fa1380f8e2a9f71e777338ea3ed368ee53d3c4e3e915996e8a8
|
data/LICENSE
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
MIT License
|
data/README.md
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# supermaker-ai-image-master
|
|
2
|
+
|
|
3
|
+
A lightweight utility library for managing and generating dynamic links with tracking parameters.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- Simple and intuitive API
|
|
8
|
+
- Support for custom UTM parameters
|
|
9
|
+
- HTML anchor generation with customizable attributes
|
|
10
|
+
- Pure Ruby implementation
|
|
11
|
+
- Ruby 2.6+ compatible
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
Add to your `Gemfile`:
|
|
16
|
+
|
|
17
|
+
```ruby
|
|
18
|
+
gem 'supermaker-ai-image-master'
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Then run:
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
bundle install
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Or install directly:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
gem install supermaker-ai-image-master
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Quick Start
|
|
34
|
+
|
|
35
|
+
```ruby
|
|
36
|
+
require 'supermaker_ai_image_master'
|
|
37
|
+
|
|
38
|
+
builder = ::LinkBuilder.new('https://supermaker.ai/image/')
|
|
39
|
+
|
|
40
|
+
# Create a tracked link
|
|
41
|
+
link = builder.build_link(
|
|
42
|
+
utm_source: 'newsletter',
|
|
43
|
+
utm_medium: 'email',
|
|
44
|
+
utm_campaign: 'spring-2025'
|
|
45
|
+
)
|
|
46
|
+
|
|
47
|
+
# Generate HTML markup
|
|
48
|
+
html = builder.generate_anchor(
|
|
49
|
+
'Learn more',
|
|
50
|
+
utm_source: 'blog',
|
|
51
|
+
utm_medium: 'article',
|
|
52
|
+
class_name: 'cta-button'
|
|
53
|
+
)
|
|
54
|
+
|
|
55
|
+
puts link
|
|
56
|
+
puts html
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Use Cases
|
|
60
|
+
|
|
61
|
+
This library is perfect for:
|
|
62
|
+
- Marketing campaigns with UTM tracking
|
|
63
|
+
- Dynamic link generation in templates
|
|
64
|
+
- Building referral systems
|
|
65
|
+
- Analytics and conversion tracking
|
|
66
|
+
|
|
67
|
+
## Resources
|
|
68
|
+
|
|
69
|
+
For more information and examples, visit [https://supermaker.ai/image/](https://supermaker.ai/image/).
|
|
70
|
+
|
|
71
|
+
## License
|
|
72
|
+
|
|
73
|
+
MIT
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module
|
|
4
|
+
VERSION = "1766.566.648"
|
|
5
|
+
|
|
6
|
+
class LinkBuilder
|
|
7
|
+
attr_reader :base_url
|
|
8
|
+
|
|
9
|
+
def initialize(base_url)
|
|
10
|
+
@base_url = base_url
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def build_link(utm_source: nil, utm_medium: nil, utm_campaign: nil)
|
|
14
|
+
url = base_url
|
|
15
|
+
params = []
|
|
16
|
+
|
|
17
|
+
params << "utm_source=#{CGI.escape(utm_source)}" if utm_source
|
|
18
|
+
params << "utm_medium=#{CGI.escape(utm_medium)}" if utm_medium
|
|
19
|
+
params << "utm_campaign=#{CGI.escape(utm_campaign)}" if utm_campaign
|
|
20
|
+
|
|
21
|
+
url += "?" + params.join("&") if params.any?
|
|
22
|
+
url
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def generate_anchor(text, utm_source: nil, utm_medium: nil, utm_campaign: nil, rel: "nofollow", target: "_blank", class_name: nil)
|
|
26
|
+
href = build_link(utm_source: utm_source, utm_medium: utm_medium, utm_campaign: utm_campaign)
|
|
27
|
+
class_attr = class_name ? " class=\"#{html_escape(class_name)}\"" : ""
|
|
28
|
+
|
|
29
|
+
"<a href=\"#{html_escape(href)}\" rel=\"#{html_escape(rel)}\" target=\"#{html_escape(target)}\"#{class_attr}>#{html_escape(text)}</a>"
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
private
|
|
33
|
+
|
|
34
|
+
def html_escape(str)
|
|
35
|
+
str.gsub("&", "&")
|
|
36
|
+
.gsub("<", "<")
|
|
37
|
+
.gsub(">", ">")
|
|
38
|
+
.gsub("\"", """)
|
|
39
|
+
.gsub("'", "'")
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: supermaker-ai-image-master
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 1766.566.648
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- qy-upup
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2025-12-24 00:00:00.000000000 Z
|
|
12
|
+
dependencies:
|
|
13
|
+
- !ruby/object:Gem::Dependency
|
|
14
|
+
name: bundler
|
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
|
16
|
+
requirements:
|
|
17
|
+
- - "~>"
|
|
18
|
+
- !ruby/object:Gem::Version
|
|
19
|
+
version: '2.0'
|
|
20
|
+
type: :development
|
|
21
|
+
prerelease: false
|
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
+
requirements:
|
|
24
|
+
- - "~>"
|
|
25
|
+
- !ruby/object:Gem::Version
|
|
26
|
+
version: '2.0'
|
|
27
|
+
- !ruby/object:Gem::Dependency
|
|
28
|
+
name: rake
|
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - "~>"
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '13.0'
|
|
34
|
+
type: :development
|
|
35
|
+
prerelease: false
|
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
37
|
+
requirements:
|
|
38
|
+
- - "~>"
|
|
39
|
+
- !ruby/object:Gem::Version
|
|
40
|
+
version: '13.0'
|
|
41
|
+
- !ruby/object:Gem::Dependency
|
|
42
|
+
name: rspec
|
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
|
44
|
+
requirements:
|
|
45
|
+
- - "~>"
|
|
46
|
+
- !ruby/object:Gem::Version
|
|
47
|
+
version: '3.0'
|
|
48
|
+
type: :development
|
|
49
|
+
prerelease: false
|
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
51
|
+
requirements:
|
|
52
|
+
- - "~>"
|
|
53
|
+
- !ruby/object:Gem::Version
|
|
54
|
+
version: '3.0'
|
|
55
|
+
description: A lightweight utility library for managing and generating dynamic links
|
|
56
|
+
with tracking parameters.
|
|
57
|
+
email:
|
|
58
|
+
- email@example.com
|
|
59
|
+
executables: []
|
|
60
|
+
extensions: []
|
|
61
|
+
extra_rdoc_files: []
|
|
62
|
+
files:
|
|
63
|
+
- LICENSE
|
|
64
|
+
- README.md
|
|
65
|
+
- lib/supermaker_ai_image_master.rb
|
|
66
|
+
homepage: https://supermaker.ai/image/
|
|
67
|
+
licenses:
|
|
68
|
+
- MIT
|
|
69
|
+
metadata: {}
|
|
70
|
+
post_install_message:
|
|
71
|
+
rdoc_options: []
|
|
72
|
+
require_paths:
|
|
73
|
+
- lib
|
|
74
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
75
|
+
requirements:
|
|
76
|
+
- - ">="
|
|
77
|
+
- !ruby/object:Gem::Version
|
|
78
|
+
version: 2.6.0
|
|
79
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
80
|
+
requirements:
|
|
81
|
+
- - ">="
|
|
82
|
+
- !ruby/object:Gem::Version
|
|
83
|
+
version: '0'
|
|
84
|
+
requirements: []
|
|
85
|
+
rubygems_version: 3.0.3.1
|
|
86
|
+
signing_key:
|
|
87
|
+
specification_version: 4
|
|
88
|
+
summary: A lightweight utility library for managing and generating dynamic links with
|
|
89
|
+
tracking parameters.
|
|
90
|
+
test_files: []
|