Initial commit: Add logistics and order_detail message types
Some checks failed
Lock Threads / action (push) Has been cancelled
Mark stale issues and pull requests / stale (push) Has been cancelled
Publish Chatwoot EE docker images / build (linux/amd64, ubuntu-latest) (push) Has been cancelled
Publish Chatwoot EE docker images / build (linux/arm64, ubuntu-22.04-arm) (push) Has been cancelled
Publish Chatwoot EE docker images / merge (push) Has been cancelled
Publish Chatwoot CE docker images / build (linux/amd64, ubuntu-latest) (push) Has been cancelled
Publish Chatwoot CE docker images / build (linux/arm64, ubuntu-22.04-arm) (push) Has been cancelled
Publish Chatwoot CE docker images / merge (push) Has been cancelled
Run Chatwoot CE spec / lint-backend (push) Has been cancelled
Run Chatwoot CE spec / lint-frontend (push) Has been cancelled
Run Chatwoot CE spec / frontend-tests (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (0, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (1, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (10, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (11, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (12, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (13, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (14, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (15, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (2, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (3, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (4, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (5, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (6, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (7, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (8, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (9, 16) (push) Has been cancelled
Run Linux nightly installer / nightly (push) Has been cancelled

- Add Logistics component with progress tracking
- Add OrderDetail component for order information
- Support data-driven steps and actions
- Add blue color scale to widget SCSS
- Fix node overflow and progress bar rendering issues
- Add English translations for dashboard components

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Liang XJ
2026-01-26 11:16:56 +08:00
commit 092fb2e083
7646 changed files with 975643 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
json.id article.id
json.category_id article.category_id
json.title article.title
json.content article.content
json.description article.description
json.status article.status
json.position article.position
json.account_id article.account_id
json.last_updated_at article.updated_at
json.slug article.slug
if article.portal.present?
json.portal do
json.partial! 'public/api/v1/models/hc/portal', formats: [:json], portal: article.portal
end
end
if article.category.present?
json.category do
json.id article.category.id
json.slug article.category.slug
json.locale article.category.locale
end
end
json.views article.views
if article.author.present?
json.author do
json.partial! 'public/api/v1/models/hc/author', formats: [:json], resource: article.author
end
end
json.associated_articles do
if article.associated_articles.any?
json.array! article.associated_articles.each do |associated_article|
json.partial! 'public/api/v1/models/hc/associated_article', formats: [:json], article: associated_article
end
end
end
json.link "hc/#{article.portal.slug}/articles/#{article.slug}"

View File

@@ -0,0 +1,5 @@
json.name category.name
json.slug category.slug
json.locale category.locale
json.description category.description
json.position category.position

View File

@@ -0,0 +1,9 @@
json.name category.name
json.slug category.slug
json.locale category.locale
json.description category.description
json.position category.position
json.meta do
json.articles_count category.articles.published.size
end

View File

@@ -0,0 +1,4 @@
json.id resource.id
json.name resource.name
json.email resource.email
json.phone_number resource.phone_number

View File

@@ -0,0 +1,12 @@
json.id resource.display_id
json.uuid resource.uuid
json.inbox_id resource.inbox_id
json.contact_last_seen_at resource.contact_last_seen_at.to_i
json.status resource.status
json.agent_last_seen_at resource.agent_last_seen_at.to_i
json.messages do
json.array! resource.messages.chat do |message|
json.partial! 'public/api/v1/models/message', formats: [:json], resource: message
end
end
json.contact resource.contact

View File

@@ -0,0 +1,9 @@
json.id resource.id
json.csat_survey_response resource.csat_survey_response
json.display_type resource.inbox.csat_config.try(:[], 'display_type') || 'emoji'
json.content resource.inbox.csat_config.try(:[], 'message')
json.inbox_avatar_url resource.inbox.avatar_url
json.inbox_name resource.inbox.name
json.locale resource.account.locale
json.conversation_id resource.conversation_id
json.created_at resource.created_at

View File

@@ -0,0 +1,6 @@
json.name resource.name
json.timezone resource.timezone
json.working_hours resource.weekly_schedule
json.working_hours_enabled resource.working_hours_enabled
json.csat_survey_enabled resource.csat_survey_enabled
json.greeting_enabled resource.greeting_enabled

View File

@@ -0,0 +1,9 @@
json.id resource.id
json.content resource.content
json.message_type resource.message_type_before_type_cast
json.content_type resource.content_type
json.content_attributes resource.content_attributes
json.created_at resource.created_at.to_i
json.conversation_id resource.conversation.display_id
json.attachments resource.attachments.map(&:push_event_data) if resource.attachments.present?
json.sender resource.sender.push_event_data if resource.sender

View File

@@ -0,0 +1,15 @@
json.id article.id
json.category_id article.category_id
json.title article.title
json.content article.content
json.description article.description
json.status article.status
json.account_id article.account_id
json.last_updated_at article.updated_at
json.views article.views
if article.author.present?
json.author do
json.partial! 'public/api/v1/models/hc/author', formats: [:json], resource: article.author
end
end

View File

@@ -0,0 +1,3 @@
json.available_name resource.available_name
json.name resource.name
json.thumbnail resource.avatar_url

View File

@@ -0,0 +1,22 @@
json.custom_domain portal.custom_domain
json.header_text portal.header_text
json.homepage_link portal.homepage_link
json.name portal.name
json.page_title portal.page_title
json.slug portal.slug
json.categories do
if portal.categories.any?
json.array! portal.categories.each do |category|
json.partial! 'public/api/v1/models/category', formats: [:json], category: category
end
end
end
json.logo portal.file_base_data if portal.logo.present?
json.meta do
json.articles_count portal.articles.published.size
json.categories_count portal.categories.size
json.default_locale portal.default_locale
end