private void OnExamined(EntityUid uid, PaperLabelComponent comp, ExaminedEvent args)
        {
            if (comp.LabelSlot.Item is not {
                Valid : true
            } item)
            {
                return;
            }

            if (!args.IsInDetailsRange)
            {
                args.PushMarkup(Loc.GetString("comp-paper-label-has-label-cant-read"));
                return;
            }

            if (!EntityManager.TryGetComponent(item, out PaperComponent paper))
            {
                // Assuming yaml has the correct entity whitelist, this should not happen.
                return;
            }

            if (string.IsNullOrWhiteSpace(paper.Content))
            {
                args.PushMarkup(Loc.GetString("comp-paper-label-has-label-blank"));
                return;
            }

            args.PushMarkup(Loc.GetString("comp-paper-label-has-label"));
            var text = paper.Content;

            args.PushMarkup(text.TrimEnd());
        }
        private void OnComponentInit(EntityUid uid, PaperLabelComponent component, ComponentInit args)
        {
            _itemSlotsSystem.AddItemSlot(uid, component.Name, component.LabelSlot);

            if (!EntityManager.TryGetComponent(uid, out AppearanceComponent appearance))
            {
                return;
            }

            appearance.SetData(PaperLabelVisuals.HasLabel, false);
        }
        private void OnContainerModified(EntityUid uid, PaperLabelComponent label, ContainerModifiedMessage args)
        {
            if (args.Container.ID != label.LabelSlot.ID)
            {
                return;
            }

            if (!EntityManager.TryGetComponent(uid, out AppearanceComponent appearance))
            {
                return;
            }

            appearance.SetData(PaperLabelVisuals.HasLabel, label.LabelSlot.HasItem);
        }
 private void OnComponentRemove(EntityUid uid, PaperLabelComponent component, ComponentRemove args)
 {
     _itemSlotsSystem.RemoveItemSlot(uid, component.LabelSlot);
 }