SLDS Icons list to a Dynamic Picklist
The Following example will populated a dynamic component design picklist with all SLDS icons names.
public override VisualEditor.DynamicPickListRows getValues() { VisualEditor.DynamicPickListRows allPicklistValus = newVisualEditor.DynamicPickListRows(); //Gets All Icons Map<String,Object> allIcons = getAllIcons(); for(String category :allIcons.keySet()) { //Gets All Icons per category List<String> iconNames = (List<String>)allIcons.get(category); for(String icon:iconNames){ VisualEditor.DataRow value =newVisualEditor.DataRow(icon,icon); allPicklistValus.addRow(value); }} returnallPicklistValus; }
- That’s all the Icons – as of this post – Dec 2018
private static Map<String,Object> getAllIcons() { Map<String,Object> allIcons = new Map<String,Object>(); List<String> actionIcons = new List<String> { 'action:add_contact', 'action:add_file', 'action:add_photo_video', 'action:add_relationship', 'action:announcement', 'action:apex', 'action:approval', 'action:back', 'action:call', 'action:canvas', 'action:change_owner', 'action:change_record_type', 'action:check', 'action:clone', 'action:close', 'action:defer', 'action:delete', 'action:description', 'action:dial_in', 'action:download', 'action:edit_groups', 'action:edit_relationship', 'action:edit', 'action:email', 'action:fallback', 'action:filter', 'action:flow', 'action:follow', 'action:following', 'action:freeze_user', 'action:goal', 'action:google_news', 'action:info', 'action:join_group', 'action:lead_convert', 'action:leave_group', 'action:log_a_call', 'action:log_event', 'action:manage_perm_sets', 'action:map', 'action:more', 'action:new_account', 'action:new_campaign', 'action:new_case', 'action:new_child_case', 'action:new_contact', 'action:new_event', 'action:new_group', 'action:new_lead', 'action:new_note', 'action:new_notebook', 'action:new_opportunity', 'action:new_person_account', 'action:new_task', 'action:new', 'action:password_unlock', 'action:preview', 'action:priority', 'action:question_post_action', 'action:quote', 'action:recall', 'action:record', 'action:refresh', 'action:reject', 'action:remove_relationship', 'action:remove', 'action:reset_password', 'action:script', 'action:share_file', 'action:share_link', 'action:share_poll', 'action:share_post', 'action:share_thanks', 'action:share', 'action:sort', 'action:submit_for_approval', 'action:update_status', 'action:update', 'action:upload', 'action:user_activation', 'action:user', 'action:view_relationship' }; allIcons.put( 'action' , actionIcons); List<String> standardIcons = new List<String> { 'standard:account', 'standard:action_list_component', 'standard:address', 'standard:announcement', 'standard:answer_best', 'standard:answer_private', 'standard:answer_public', 'standard:approval', 'standard:apps_admin', 'standard:apps', 'standard:article', 'standard:asset_relationship', 'standard:assigned_resource', 'standard:avatar_loading', 'standard:avatar', 'standard:bot', 'standard:business_hours', 'standard:calibration', 'standard:call_history', 'standard:call', 'standard:campaign_members', 'standard:campaign', 'standard:canvas', 'standard:carousel', 'standard:case_change_status', 'standard:case_comment', 'standard:case_email', 'standard:case_log_a_call', 'standard:case_milestone', 'standard:case_transcript', 'standard:case', 'standard:channel_program_history', 'standard:channel_program_levels', 'standard:channel_program_members', 'standard:channel_programs', 'standard:client', 'standard:cms', 'standard:coaching', 'standard:connected_apps', 'standard:contact_list', 'standard:contact', 'standard:contract_line_item', 'standard:contract', 'standard:custom_notification', 'standard:custom', 'standard:customers', 'standard:dashboard', 'standard:data_integration_hub', 'standard:datadotcom', 'standard:default', 'standard:document', 'standard:drafts', 'standard:email_chatter', 'standard:email', 'standard:empty', 'standard:endorsement', 'standard:entitlement_process', 'standard:entitlement_template', 'standard:entitlement', 'standard:entity_milestone', 'standard:entity', 'standard:environment_hub', 'standard:event', 'standard:feed', 'standard:feedback', 'standard:file', 'standard:flow', 'standard:folder', 'standard:forecasts', 'standard:generic_loading', 'standard:goals', 'standard:group_loading', 'standard:groups', 'standard:hierarchy', 'standard:home', 'standard:household', 'standard:individual', 'standard:insights', 'standard:investment_account', 'standard:iot_orchestrations', 'standard:knowledge', 'standard:lead_insights', 'standard:lead_list', 'standard:lead', 'standard:link', 'standard:list_email', 'standard:live_chat_visitor', 'standard:live_chat', 'standard:location', 'standard:log_a_call', 'standard:logging', 'standard:macros', 'standard:maintenance_asset', 'standard:maintenance_plan', 'standard:marketing_actions', 'standard:merge', 'standard:messaging_conversation', 'standard:messaging_session', 'standard:messaging_user', 'standard:metrics', 'standard:news', 'standard:note', 'standard:omni_supervisor', 'standard:operating_hours', 'standard:opportunity_splits', 'standard:opportunity', 'standard:orders', 'standard:partner_fund_allocation', 'standard:partner_fund_claim', 'standard:partner_fund_request', 'standard:partner_marketing_budget', 'standard:partners', 'standard:past_chat', 'standard:people', 'standard:performance', 'standard:person_account', 'standard:photo', 'standard:poll', 'standard:portal', 'standard:post', 'standard:pricebook', 'standard:process', 'standard:product_consumed', 'standard:product_item_transaction', 'standard:product_item', 'standard:product_request_line_item', 'standard:product_request', 'standard:product_required', 'standard:product_transfer', 'standard:product', 'standard:question_best', 'standard:question_feed', 'standard:quick_text', 'standard:quip_sheet', 'standard:quip', 'standard:quotes', 'standard:read_receipts', 'standard:recent', 'standard:record', 'standard:related_list', 'standard:relationship', 'standard:report', 'standard:resource_absence', 'standard:resource_capacity', 'standard:resource_preference', 'standard:resource_skill', 'standard:return_order_line_item', 'standard:return_order', 'standard:reward', 'standard:rtc_presence', 'standard:sales_path', 'standard:scan_card', 'standard:search', 'standard:service_appointment', 'standard:service_contract', 'standard:service_crew_member', 'standard:service_crew', 'standard:service_report', 'standard:service_resource', 'standard:service_territory_location', 'standard:service_territory_member', 'standard:service_territory', 'standard:shipment', 'standard:skill_entity', 'standard:skill_requirement', 'standard:skill', 'standard:social', 'standard:solution', 'standard:sossession', 'standard:stage_collection', 'standard:stage', 'standard:survey', 'standard:task', 'standard:team_member', 'standard:template', 'standard:thanks_loading', 'standard:thanks', 'standard:timesheet_entry', 'standard:timesheet', 'standard:timeslot', 'standard:today', 'standard:topic', 'standard:unmatched', 'standard:user', 'standard:work_order_item', 'standard:work_order', 'standard:work_type' }; allIcons.put( 'standard' , standardIcons); List<String> utilityIcons = new List<String> { 'utility:activity', 'utility:ad_set', 'utility:add', 'utility:adduser', 'utility:anchor', 'utility:animal_and_nature', 'utility:announcement', 'utility:answer', 'utility:answered_twice', 'utility:apex', 'utility:approval', 'utility:apps', 'utility:arrowdown', 'utility:arrowup', 'utility:attach', 'utility:automate', 'utility:back', 'utility:ban', 'utility:block_visitor', 'utility:bold', 'utility:bookmark', 'utility:breadcrumbs', 'utility:broadcast', 'utility:brush', 'utility:bucket', 'utility:builder', 'utility:call', 'utility:campaign', 'utility:cancel_file_request', 'utility:cancel_transfer', 'utility:capslock', 'utility:case', 'utility:cases', 'utility:center_align_text', 'utility:change_owner', 'utility:change_record_type', 'utility:chart', 'utility:chat', 'utility:check', 'utility:checkin', 'utility:chevrondown', 'utility:chevronleft', 'utility:chevronright', 'utility:chevronup', 'utility:classic_interface', 'utility:clear', 'utility:clock', 'utility:close', 'utility:collapse_all', 'utility:color_swatch', 'utility:comments', 'utility:company', 'utility:connected_apps', 'utility:contract_alt', 'utility:contract', 'utility:copy_to_clipboard', 'utility:copy', 'utility:crossfilter', 'utility:custom_apps', 'utility:cut', 'utility:dash', 'utility:database', 'utility:datadotcom', 'utility:dayview', 'utility:delete', 'utility:deprecate', 'utility:description', 'utility:desktop_console', 'utility:desktop', 'utility:dialing', 'utility:dislike', 'utility:dock_panel', 'utility:down', 'utility:download', 'utility:drag', 'utility:edit_form', 'utility:edit', 'utility:einstein', 'utility:email', 'utility:emoji', 'utility:end_call', 'utility:end_chat', 'utility:end_messaging_session', 'utility:erect_window', 'utility:error', 'utility:event', 'utility:expand_all', 'utility:expand_alt', 'utility:expand', 'utility:fallback', 'utility:favorite', 'utility:feed', 'utility:file', 'utility:filter', 'utility:filterList', 'utility:flow', 'utility:food_and_drink', 'utility:forward', 'utility:frozen', 'utility:full_width_view', 'utility:graph', 'utility:groups', 'utility:help', 'utility:hide', 'utility:hierarchy', 'utility:home', 'utility:identity', 'utility:image', 'utility:inbox', 'utility:incoming_call', 'utility:info_alt', 'utility:info', 'utility:insert_tag_field', 'utility:insert_template', 'utility:internal_share', 'utility:italic', 'utility:jump_to_bottom', 'utility:jump_to_top', 'utility:justify_text', 'utility:kanban', 'utility:keyboard_dismiss', 'utility:knowledge_base', 'utility:layers', 'utility:layout', 'utility:left_align_text', 'utility:left', 'utility:level_down', 'utility:level_up', 'utility:light_bulb', 'utility:like', 'utility:link', 'utility:list', 'utility:listen', 'utility:location', 'utility:lock', 'utility:log_a_call', 'utility:logout', 'utility:lower_flag', 'utility:macros', 'utility:magicwand', 'utility:mark_all_as_read', 'utility:matrix', 'utility:merge_field', 'utility:merge', 'utility:metrics', 'utility:minimize_window', 'utility:missed_call', 'utility:moneybag', 'utility:monthlyview', 'utility:move', 'utility:muted', 'utility:new_direct_message', 'utility:new_window', 'utility:new', 'utility:news', 'utility:note', 'utility:notebook', 'utility:notification', 'utility:offline_cached', 'utility:offline', 'utility:omni_channel', 'utility:open_folder', 'utility:open', 'utility:opened_folder', 'utility:outbound_call', 'utility:overflow', 'utility:package_org_beta', 'utility:package_org', 'utility:package', 'utility:page', 'utility:palette', 'utility:paste', 'utility:pause', 'utility:people', 'utility:phone_landscape', 'utility:phone_portrait', 'utility:photo', 'utility:picklist', 'utility:pin', 'utility:pinned', 'utility:play', 'utility:power', 'utility:preview', 'utility:priority', 'utility:privately_shared', 'utility:process', 'utility:push', 'utility:puzzle', 'utility:question_mark', 'utility:question', 'utility:questions_and_answers', 'utility:quick_text', 'utility:quotation_marks', 'utility:rating', 'utility:record_create', 'utility:record', 'utility:recurring_exception', 'utility:redo', 'utility:refresh', 'utility:relate', 'utility:reminder', 'utility:remove_formatting', 'utility:remove_link', 'utility:replace', 'utility:reply_all', 'utility:reply', 'utility:reset_password', 'utility:resource_absence', 'utility:resource_capacity', 'utility:resource_territory', 'utility:retweet', 'utility:richtextbulletedlist', 'utility:richtextindent', 'utility:richtextnumberedlist', 'utility:richtextoutdent', 'utility:right_align_text', 'utility:right', 'utility:rotate', 'utility:rows', 'utility:rules', 'utility:save', 'utility:search', 'utility:sentiment_negative', 'utility:sentiment_neutral', 'utility:settings', 'utility:setup_assistant_guide', 'utility:setup', 'utility:share_file', 'utility:share_mobile', 'utility:share_post', 'utility:share', 'utility:shield', 'utility:shopping_bag', 'utility:side_list', 'utility:signpost', 'utility:smiley_and_people', 'utility:sms', 'utility:snippet', 'utility:socialshare', 'utility:sort', 'utility:spinner', 'utility:stage_collection', 'utility:stage', 'utility:standard_objects', 'utility:stop', 'utility:strikethrough', 'utility:success', 'utility:summary', 'utility:summarydetail', 'utility:survey', 'utility:switch', 'utility:symbols', 'utility:sync', 'utility:table', 'utility:tablet_landscape', 'utility:tablet_portrait', 'utility:tabset', 'utility:task', 'utility:text_background_color', 'utility:text_color', 'utility:threedots_vertical', 'utility:threedots', 'utility:thunder', 'utility:tile_card_list', 'utility:topic', 'utility:touch_action', 'utility:tracker', 'utility:trail', 'utility:travel_and_places', 'utility:trending', 'utility:turn_off_notifications', 'utility:type_tool', 'utility:type', 'utility:undelete', 'utility:undeprecate', 'utility:underline', 'utility:undo', 'utility:unlock', 'utility:unmuted', 'utility:up', 'utility:upload', 'utility:user_role', 'utility:user', 'utility:video', 'utility:voicemail_drop', 'utility:volume_high', 'utility:volume_low', 'utility:volume_off', 'utility:warning', 'utility:weeklyview', 'utility:wifi', 'utility:work_order_type', 'utility:world', 'utility:yubi_key', 'utility:zoomin', 'utility:zoomout' }; allIcons.put( 'utility' , utilityIcons); List<String> customIcons = new List<String> { 'custom:custom1', 'custom:custom2', 'custom:custom3', 'custom:custom4', 'custom:custom5', 'custom:custom6', 'custom:custom7', 'custom:custom8', 'custom:custom9', 'custom:custom10', 'custom:custom11', 'custom:custom12', 'custom:custom13', 'custom:custom14', 'custom:custom15', 'custom:custom16', 'custom:custom17', 'custom:custom18', 'custom:custom19', 'custom:custom20', 'custom:custom21', 'custom:custom22', 'custom:custom23', 'custom:custom24', 'custom:custom25', 'custom:custom26', 'custom:custom27', 'custom:custom28', 'custom:custom29', 'custom:custom30', 'custom:custom31', 'custom:custom32', 'custom:custom33', 'custom:custom34', 'custom:custom35', 'custom:custom36', 'custom:custom37', 'custom:custom38', 'custom:custom39', 'custom:custom40', 'custom:custom41', 'custom:custom42', 'custom:custom43', 'custom:custom44', 'custom:custom45', 'custom:custom46', 'custom:custom47', 'custom:custom48', 'custom:custom49', 'custom:custom50', 'custom:custom51', 'custom:custom52', 'custom:custom53', 'custom:custom54', 'custom:custom55', 'custom:custom56', 'custom:custom57', 'custom:custom58', 'custom:custom59', 'custom:custom60', 'custom:custom61', 'custom:custom62', 'custom:custom63', 'custom:custom64', 'custom:custom65', 'custom:custom66', 'custom:custom67', 'custom:custom68', 'custom:custom69', 'custom:custom70', 'custom:custom71', 'custom:custom72', 'custom:custom73', 'custom:custom74', 'custom:custom75', 'custom:custom76', 'custom:custom77', 'custom:custom78', 'custom:custom79', 'custom:custom80', 'custom:custom81', 'custom:custom82', 'custom:custom83', 'custom:custom84', 'custom:custom85', 'custom:custom86', 'custom:custom87', 'custom:custom88', 'custom:custom89', 'custom:custom90', 'custom:custom91', 'custom:custom92', 'custom:custom93', 'custom:custom94', 'custom:custom95', 'custom:custom96', 'custom:custom97', 'custom:custom98', 'custom:custom99', 'custom:custom100', 'custom:custom101', 'custom:custom102', 'custom:custom103', 'custom:custom104', 'custom:custom105', 'custom:custom106', 'custom:custom107', 'custom:custom108', 'custom:custom109', 'custom:custom110', 'custom:custom111', 'custom:custom112', 'custom:custom113' }; allIcons.put( 'custom' , customIcons); List<String> docTypeIcons = new List<String> { 'doctype:ai', 'doctype:attachment', 'doctype:audio', 'doctype:box_notes', 'doctype:csv', 'doctype:eps', 'doctype:excel', 'doctype:exe', 'doctype:flash', 'doctype:folder', 'doctype:gdoc', 'doctype:gdocs', 'doctype:gform', 'doctype:gpres', 'doctype:gsheet', 'doctype:html', 'doctype:image', 'doctype:keynote', 'doctype:library_folder', 'doctype:link', 'doctype:overlay', 'doctype:pack', 'doctype:pages', 'doctype:pdf', 'doctype:ppt', 'doctype:psd', 'doctype:quip_doc', 'doctype:quip_sheet', 'doctype:rtf', 'doctype:slide', 'doctype:stypi', 'doctype:txt', 'doctype:unknown', 'doctype:video', 'doctype:visio', 'doctype:webex', 'doctype:word', 'doctype:xml', 'doctype:zip' }; allIcons.put( 'doctype' , docTypeIcons); return allIcons; }