diff --git a/app/controllers/items_controller.rb b/app/controllers/items_controller.rb index 68362600..3c59e4e3 100644 --- a/app/controllers/items_controller.rb +++ b/app/controllers/items_controller.rb @@ -28,6 +28,12 @@ class ItemsController < ApplicationController render json: { items: @items.as_json( methods: [:nc?, :pb?, :owned?, :wanted?], + include: { + restricted_zones: { + only: [:id, :depth, :label], + methods: [:is_commonly_used_by_items], + }, + }, ), appearances: load_appearances.as_json( include: { diff --git a/app/javascript/wardrobe-2020/loaders/items.js b/app/javascript/wardrobe-2020/loaders/items.js index fe53941a..603f65e0 100644 --- a/app/javascript/wardrobe-2020/loaders/items.js +++ b/app/javascript/wardrobe-2020/loaders/items.js @@ -201,10 +201,10 @@ function normalizeItemSearchAppearance(data, item) { __typename: "ItemAppearance", id: `item-${item.id}-body-${data.body.id}`, layers: data.swf_assets.map(normalizeSwfAssetToLayer), - restrictedZones: data.swf_assets - .map((a) => a.restricted_zones) - .flat() - .map(normalizeZone), + restrictedZones: [ + ...item.restricted_zones, + ...data.swf_assets.map((a) => a.restricted_zones).flat(), + ].map(normalizeZone), }; }