@lordicon/web 1.0.0

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.
@@ -0,0 +1 @@
1
+ {"v":"5.8.1","fr":60,"ip":200,"op":260,"w":430,"h":430,"nm":"wired-outline-94-lock-unlock","ddd":0,"assets":[{"id":"comp_0","nm":"in-reveal","fr":60,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Rectangle 28","parent":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[0,53,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.25,"y":1},"o":{"x":0.167,"y":0.167},"t":37,"s":[{"i":[[0,0],[0,0],[0,0],[-48.877,0],[0,0],[0,49.429]],"o":[[0,0],[0,0],[0,48.877],[0,0],[49.429,0],[0,0]],"v":[[90,-95],[-90,-95],[-90,-95],[-1.5,-6.5],[0.5,-6.5],[90,-96]],"c":true}]},{"t":52,"s":[{"i":[[0,0],[0,0],[0,0],[-22.091,0],[0,0],[0,22.091]],"o":[[0,0],[0,0],[0,22.091],[0,0],[22.091,0],[0,0]],"v":[[130,-95],[-130,-95],[-130,55],[-90,95],[90,95],[130,55]],"c":true}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"i":{"x":[0.25],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"t":37,"s":[38]},{"t":52,"s":[0]}],"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":1,"k":[{"i":{"x":[0.25],"y":[1]},"o":{"x":[0.167],"y":[0.167]},"t":37,"s":[0]},{"t":52,"s":[54]}],"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.071,0.075,0.192,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('primary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".primary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"primary"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 28","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":37,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.395],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[0]},{"i":{"x":[0.267],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":33,"s":[28]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":63,"s":[-17]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.243],"y":[0]},"t":96,"s":[6]},{"t":120,"s":[0]}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0.395,"y":1},"o":{"x":0.333,"y":0},"t":0,"s":[215.283,164.656,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.267,"y":1},"o":{"x":0.333,"y":0},"t":27,"s":[215.283,97.656,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":57,"s":[215.283,144.656,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.243,"y":0},"t":90,"s":[215.283,113.656,0],"to":[0,0,0],"ti":[0,0,0]},{"t":114,"s":[215.283,124.656,0]}],"ix":2,"l":2},"a":{"a":0,"k":[0.283,-107.344,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.305,"y":1},"o":{"x":0.167,"y":0.167},"t":0,"s":[{"i":[[0,-6.456],[0,0],[6.456,0],[0,6.456],[0,0],[-6.456,0]],"o":[[0,0],[0,6.456],[-6.456,0],[0,0],[0,-6.456],[6.456,0]],"v":[[11.689,-0.218],[11.689,-0.282],[0,11.406],[-11.689,-0.282],[-11.689,-0.218],[0,-11.906]],"c":true}]},{"i":{"x":0.833,"y":0.662},"o":{"x":0.624,"y":0},"t":27,"s":[{"i":[[0,-45.5],[0,0],[45.5,0],[0,45.5],[0,0],[-45.5,0]],"o":[[0,0],[0,45.5],[-45.5,0],[0,0],[0,-45.5],[45.5,0]],"v":[[82.385,-0.021],[82.385,-0.479],[0,81.906],[-82.385,-0.479],[-82.385,-0.021],[0,-82.406]],"c":true}]},{"t":37,"s":[{"i":[[0,-49.706],[0,0],[49.706,0],[0,49.706],[0,0],[-49.706,0]],"o":[[0,0],[0,49.706],[-49.706,0],[0,0],[0,-49.706],[49.706,0]],"v":[[90,0],[90,63.5],[0,153.5],[-90,63.5],[-90,0],[0,-90]],"c":true}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":1,"k":[{"t":0,"s":[0],"h":1},{"t":37,"s":[21],"h":1}],"ix":1},"e":{"a":1,"k":[{"t":0,"s":[100],"h":1},{"t":37,"s":[79.5],"h":1}],"ix":2},"o":{"a":0,"k":106,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.031,0.659,0.541,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('secondary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".secondary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"secondary"},{"ty":"tr","p":{"a":0,"k":[0.283,-107.094],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":1,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Vector","parent":2,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.535],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":42,"s":[0]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":66,"s":[-39]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":87,"s":[12]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.243],"y":[0]},"t":104,"s":[-6]},{"t":120,"s":[0]}],"ix":10},"p":{"a":0,"k":[0,53,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.11,"y":1},"o":{"x":0.167,"y":0.167},"t":42,"s":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-35,-35],[-33.881,-35.397],[36.119,-35.397],[35,-35]],"c":true}]},{"t":71,"s":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-35,-35],[-35,35],[35,35],[35,-35]],"c":true}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.031,0.659,0.541,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('secondary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".secondary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"secondary"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Vector","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":42,"op":1800,"st":0,"bm":0}]},{"id":"comp_1","nm":"hover-locked","fr":60,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Rectangle 28","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.299],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[0]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":15,"s":[16]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":32,"s":[-15]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":44,"s":[4]},{"t":57,"s":[0]}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0.207,"y":1},"o":{"x":0.333,"y":0},"t":0,"s":[215,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":9,"s":[245,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":26,"s":[195,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":38,"s":[225,285,0],"to":[0,0,0],"ti":[0,0,0]},{"t":51,"s":[215,285,0]}],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[-22.091,0],[0,0],[0,22.091]],"o":[[0,0],[0,0],[0,22.091],[0,0],[22.091,0],[0,0]],"v":[[130,-95],[-130,-95],[-130,55],[-90,95],[90,95],[130,55]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"tm","s":{"a":0,"k":0,"ix":1},"e":{"a":0,"k":100,"ix":2},"o":{"a":0,"k":54,"ix":3},"m":1,"ix":2,"nm":"Trim Paths 1","mn":"ADBE Vector Filter - Trim","hd":false},{"ty":"st","c":{"a":0,"k":[0.071,0.075,0.192,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('primary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".primary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"primary"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 28","np":3,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1763,"st":-37,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 1","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[0.283,-160.344,0],"ix":2,"l":2},"a":{"a":0,"k":[0.283,-107.344,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":6,"s":[{"i":[[0,49.706],[0,0],[-49.706,0],[0,-49.706],[0,0]],"o":[[0,0],[0,-49.706],[49.706,0],[0,0],[0,49.706]],"v":[[-90,63.5],[-90,0],[0,-90],[90,0],[90,63.5]],"c":false}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":14,"s":[{"i":[[0,49.706],[0,0],[-49.706,0],[0,-49.706],[0,0]],"o":[[0,0],[0,-49.706],[49.706,0],[0,0],[0,49.706]],"v":[[-90,63.5],[-89.152,24.724],[0.848,-65.276],[90.848,24.724],[90,63.5]],"c":false}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":26,"s":[{"i":[[0,49.706],[0,0],[-49.706,0],[0,-49.706],[0,0]],"o":[[0,0],[0,-49.706],[49.706,0],[0,0],[0,49.706]],"v":[[-90,63.5],[-89.152,24.724],[0.848,-65.276],[90.848,24.724],[90,63.5]],"c":false}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":37,"s":[{"i":[[0,49.706],[0,0],[-49.706,0],[0,-49.706],[0,0]],"o":[[0,0],[0,-49.706],[49.706,0],[0,0],[0,49.706]],"v":[[-90,63.5],[-89.792,-12.368],[0.208,-102.368],[90.208,-12.368],[90,63.5]],"c":false}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":49,"s":[{"i":[[0,49.706],[0,0],[-49.706,0],[0,-49.706],[0,0]],"o":[[0,0],[0,-49.706],[49.706,0],[0,0],[0,49.706]],"v":[[-90,63.5],[-90.439,8.05],[-0.439,-81.95],[89.561,8.05],[90,63.5]],"c":false}]},{"t":57,"s":[{"i":[[0,49.706],[0,0],[-49.706,0],[0,-49.706],[0,0]],"o":[[0,0],[0,-49.706],[49.706,0],[0,0],[0,49.706]],"v":[[-90,63.5],[-90,0],[0,-90],[90,0],[90,63.5]],"c":false}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.031,0.659,0.541,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('secondary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".secondary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"secondary"},{"ty":"tr","p":{"a":0,"k":[0.283,-107.094],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1799,"st":-1,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Vector","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.299],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[0]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":19,"s":[28]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":36,"s":[-21]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":48,"s":[7]},{"t":60,"s":[0]}],"ix":10},"p":{"a":0,"k":[0,0,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-35,-35],[-35,35],[35,35],[35,-35]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.031,0.659,0.541,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('secondary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".secondary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"secondary"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Vector","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1758,"st":-42,"bm":0}]},{"id":"comp_2","nm":"morph-unlocked","fr":60,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Rectangle 28","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.45],"y":[1]},"o":{"x":[0.497],"y":[0]},"t":0,"s":[0]},{"i":{"x":[0.45],"y":[1]},"o":{"x":[0.55],"y":[0]},"t":9,"s":[-3]},{"i":{"x":[0.466],"y":[1]},"o":{"x":[0.348],"y":[0]},"t":37,"s":[6]},{"t":60,"s":[0]}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0.45,"y":1},"o":{"x":0.333,"y":0},"t":0,"s":[215,285,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.45,"y":1},"o":{"x":0.55,"y":0},"t":15,"s":[197,288,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.466,"y":1},"o":{"x":0.348,"y":0},"t":45,"s":[266,279,0],"to":[0,0,0],"ti":[0,0,0]},{"t":60,"s":[255,280,0]}],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.45,"y":1},"o":{"x":0.55,"y":0},"t":15,"s":[{"i":[[0,0],[0,0],[0,0],[-22.091,0],[0,0],[0,22.091]],"o":[[0,0],[0,0],[0,22.091],[0,0],[22.091,0],[0,0]],"v":[[130,-95],[-130,-95],[-130,55],[-90,95],[90,95],[130,55]],"c":true}]},{"t":45,"s":[{"i":[[0,0],[0,0],[0,0],[-19.118,0],[0,0],[0,19.118]],"o":[[0,0],[0,0],[0,19.118],[0,0],[19.118,0],[0,0]],"v":[[130,-95],[-95,-95],[-95,34.808],[-60.385,69.423],[95.385,69.423],[130,34.808]],"c":true}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.071,0.075,0.192,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('primary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".primary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"primary"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 28","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Shape Layer 1","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.45,"y":0.45},"o":{"x":0.333,"y":0.333},"t":0,"s":[-89.717,-96.594,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.45,"y":1},"o":{"x":0.55,"y":0},"t":15,"s":[-89.717,-96.594,0],"to":[0,0,0],"ti":[0,0,0]},{"t":45,"s":[-69.717,-96.594,0]}],"ix":2,"l":2},"a":{"a":0,"k":[-89.717,-43.594,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.385,"y":1},"o":{"x":0.362,"y":0},"t":0,"s":[{"i":[[0,0],[0,0],[-49.706,0],[0,-49.706],[0,0]],"o":[[0,0],[0,-49.706],[49.706,0],[0,0],[0,0]],"v":[[-90,63.5],[-90,0],[0,-90],[90,0],[90,63.5]],"c":false}]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0},"t":15,"s":[{"i":[[0,0],[0,0],[-49.706,0],[0,-49.706],[0,0]],"o":[[0,0],[0,-49.706],[49.706,0],[0,0],[0,0]],"v":[[-90,63.5],[-90.313,39.664],[-0.313,-50.336],[89.687,39.664],[90,63.5]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.333,"y":0},"t":25,"s":[{"i":[[0,0],[0,0],[-36.862,0],[0,-46.902],[0,0]],"o":[[0,0],[0,-46.902],[36.862,0],[0,0],[0,0]],"v":[[-90,63.5],[-90.745,-19.426],[-24,-104.349],[42.745,-19.426],[43.32,14.378]],"c":false}]},{"i":{"x":0.45,"y":1},"o":{"x":0.167,"y":0.167},"t":28,"s":[{"i":[[0,0],[0,0],[-30.438,0],[0,-46.058],[0,0]],"o":[[0,0],[0,-46.058],[30.438,0],[0,0],[0,0]],"v":[[-89.638,63.5],[-90.576,-13.104],[-35.462,-96.499],[19.651,-13.104],[20.374,25.574]],"c":false}]},{"t":45,"s":[{"i":[[0,0],[0,0],[42.88,0],[0,-43.199],[0,0]],"o":[[0,0],[0,-43.199],[-42.88,0],[0,0],[0,0]],"v":[[-90,63.5],[-90,8.312],[-167.642,-69.906],[-245.283,8.312],[-245.283,63.5]],"c":false}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.031,0.659,0.541,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('secondary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".secondary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"secondary"},{"ty":"tr","p":{"a":0,"k":[0.283,-107.094],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 1","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Vector","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":1,"k":[{"i":{"x":0.45,"y":1},"o":{"x":0.55,"y":0},"t":15,"s":[0,0,0],"to":[0,0,0],"ti":[0,0,0]},{"t":45,"s":[16.5,-12.5,0]}],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.45,"y":1},"o":{"x":0.55,"y":0},"t":15,"s":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-35,-35],[-35,35],[35,35],[35,-35]],"c":true}]},{"t":45,"s":[{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-30,-30],[-30,30],[30,30],[30,-30]],"c":true}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.031,0.659,0.541,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('secondary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".secondary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"secondary"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Vector","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0}]},{"id":"comp_3","nm":"hover-unlocked","fr":60,"layers":[{"ddd":0,"ind":1,"ty":4,"nm":"Rectangle 31","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.299],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[0]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":15,"s":[6]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":32,"s":[-6]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":44,"s":[4]},{"t":57,"s":[0]}],"ix":10},"p":{"a":1,"k":[{"i":{"x":0.141,"y":1},"o":{"x":0.333,"y":0},"t":0,"s":[272.5,267.5,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":9,"s":[292.5,267.5,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":26,"s":[262.5,267.5,0],"to":[0,0,0],"ti":[0,0,0]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":38,"s":[282.5,267.5,0],"to":[0,0,0],"ti":[0,0,0]},{"t":51,"s":[272.5,267.5,0]}],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[-22.091,0],[0,0],[0,22.091]],"o":[[0,0],[0,0],[0,22.091],[0,0],[22.091,0],[0,0]],"v":[[112.5,-82.5],[-112.5,-82.5],[-112.5,42.5],[-72.5,82.5],[72.5,82.5],[112.5,42.5]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.071,0.075,0.192,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('primary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":1,"lj":2,"bm":0,"nm":".primary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"primary"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 28","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":4,"nm":"Rectangle 30","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[-165,-150,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":1,"k":[{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":5,"s":[{"i":[[0,0],[0,0],[-42.802,0],[0,-42.802],[0,0]],"o":[[0,0],[0,-42.802],[42.802,0],[0,0],[0,0]],"v":[[-77.5,67.5],[-77.5,10],[0,-67.5],[77.5,10],[77.5,67.5]],"c":false}]},{"i":{"x":0.833,"y":0.833},"o":{"x":0.333,"y":0},"t":19,"s":[{"i":[[0,0],[0,0],[-36.878,0],[0,-42.802],[0,0]],"o":[[0,0],[0,-42.802],[36.878,0],[0,0],[0,0]],"v":[[-56.047,67.5],[-56.047,10],[10.726,-67.5],[77.5,10],[77.5,67.5]],"c":false}]},{"i":{"x":0.667,"y":1},"o":{"x":0.167,"y":0.167},"t":27,"s":[{"i":[[0,0],[0,0],[-42.802,0],[0,-42.802],[0,0]],"o":[[0,0],[0,-42.802],[42.802,0],[0,0],[0,0]],"v":[[-77.5,67.5],[-77.5,10],[0,-67.5],[77.5,10],[77.5,67.5]],"c":false}]},{"i":{"x":0.667,"y":1},"o":{"x":0.333,"y":0},"t":36,"s":[{"i":[[0,0],[0,0],[-40.746,0],[0,-42.802],[0,0]],"o":[[0,0],[0,-42.802],[40.746,0],[0,0],[0,0]],"v":[[-70.055,67.5],[-70.055,10],[3.722,-67.5],[77.5,10],[77.5,67.5]],"c":false}]},{"t":47,"s":[{"i":[[0,0],[0,0],[-42.802,0],[0,-42.802],[0,0]],"o":[[0,0],[0,-42.802],[42.802,0],[0,0],[0,0]],"v":[[-77.5,67.5],[-77.5,10],[0,-67.5],[77.5,10],[77.5,67.5]],"c":false}]}],"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.031,0.659,0.541,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('secondary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".secondary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"secondary"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Rectangle 29","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":4,"nm":"Vector 2","parent":1,"sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":1,"k":[{"i":{"x":[0.299],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":0,"s":[0]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":19,"s":[28]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":36,"s":[-21]},{"i":{"x":[0.667],"y":[1]},"o":{"x":[0.333],"y":[0]},"t":48,"s":[7]},{"t":60,"s":[0]}],"ix":10},"p":{"a":0,"k":[-0.5,0.5,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"shapes":[{"ty":"gr","it":[{"ind":0,"ty":"sh","ix":1,"ks":{"a":0,"k":{"i":[[0,0],[0,0],[0,0],[0,0]],"o":[[0,0],[0,0],[0,0],[0,0]],"v":[[-30,-30],[-30,30],[30,30],[30,-30]],"c":true},"ix":2},"nm":"Path 1","mn":"ADBE Vector Shape - Group","hd":false},{"ty":"st","c":{"a":0,"k":[0.031,0.659,0.541,1],"ix":3,"x":"var $bm_rt;\n$bm_rt = comp('wired-outline-94-lock-unlock').layer('control').effect('secondary')('Color');"},"o":{"a":0,"k":100,"ix":4},"w":{"a":0,"k":12,"ix":5,"x":"var $bm_rt;\n$bm_rt = $bm_mul($bm_div(value, 2), comp('wired-outline-94-lock-unlock').layer('control').effect('stroke')('Menu'));"},"lc":2,"lj":2,"bm":0,"nm":".secondary","mn":"ADBE Vector Graphic - Stroke","hd":false,"cl":"secondary"},{"ty":"tr","p":{"a":0,"k":[0,0],"ix":2},"a":{"a":0,"k":[0,0],"ix":1},"s":{"a":0,"k":[100,100],"ix":3},"r":{"a":0,"k":0,"ix":6},"o":{"a":0,"k":100,"ix":7},"sk":{"a":0,"k":0,"ix":4},"sa":{"a":0,"k":0,"ix":5},"nm":"Transform"}],"nm":"Vector","np":2,"cix":2,"bm":0,"ix":1,"mn":"ADBE Vector Group","hd":false}],"ip":0,"op":1800,"st":0,"bm":0}]}],"layers":[{"ddd":0,"ind":1,"ty":3,"nm":"control","sr":1,"ks":{"o":{"a":0,"k":0,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[0,0],"ix":2,"l":2},"a":{"a":0,"k":[0,0,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"ef":[{"ty":5,"nm":"stroke","np":3,"mn":"Pseudo/@@STlrDzgvSvme7pJmNiJPPQ","ix":1,"en":1,"ef":[{"ty":7,"nm":"Menu","mn":"Pseudo/@@STlrDzgvSvme7pJmNiJPPQ-0001","ix":1,"v":{"a":0,"k":2,"ix":1}}]},{"ty":5,"nm":"primary","np":3,"mn":"ADBE Color Control","ix":2,"en":1,"ef":[{"ty":2,"nm":"Color","mn":"ADBE Color Control-0001","ix":1,"v":{"a":0,"k":[0.071,0.075,0.192],"ix":1}}]},{"ty":5,"nm":"secondary","np":3,"mn":"ADBE Color Control","ix":3,"en":1,"ef":[{"ty":2,"nm":"Color","mn":"ADBE Color Control-0001","ix":1,"v":{"a":0,"k":[0.031,0.659,0.541],"ix":1}}]}],"ip":0,"op":331,"st":0,"bm":0},{"ddd":0,"ind":2,"ty":0,"nm":"in-reveal","refId":"comp_0","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[215,215,0],"ix":2,"l":2},"a":{"a":0,"k":[215,215,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"w":430,"h":430,"ip":0,"op":130,"st":0,"bm":0},{"ddd":0,"ind":3,"ty":0,"nm":"hover-locked","refId":"comp_1","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[215,215,0],"ix":2,"l":2},"a":{"a":0,"k":[215,215,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"w":430,"h":430,"ip":130,"op":200,"st":130,"bm":0},{"ddd":0,"ind":4,"ty":0,"nm":"morph-unlocked","refId":"comp_2","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[215,215,0],"ix":2,"l":2},"a":{"a":0,"k":[215,215,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"w":430,"h":430,"ip":200,"op":270,"st":200,"bm":0},{"ddd":0,"ind":5,"ty":0,"nm":"hover-unlocked","refId":"comp_3","sr":1,"ks":{"o":{"a":0,"k":100,"ix":11},"r":{"a":0,"k":0,"ix":10},"p":{"a":0,"k":[215,215,0],"ix":2,"l":2},"a":{"a":0,"k":[215,215,0],"ix":1,"l":2},"s":{"a":0,"k":[100,100,100],"ix":6,"l":2}},"ao":0,"w":430,"h":430,"ip":270,"op":340,"st":270,"bm":0}],"markers":[{"tm":0,"cm":"in-reveal","dr":120},{"tm":130,"cm":"hover-locked","dr":60},{"tm":200,"cm":"default:morph-unlocked","dr":60},{"tm":270,"cm":"hover-unlocked","dr":60}]}
@@ -0,0 +1,59 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+
4
+ <head>
5
+ <meta charset="utf-8" />
6
+ <title>Examples</title>
7
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
8
+ <link rel="stylesheet" type="text/css" href="/main.css" />
9
+ </head>
10
+
11
+ <body>
12
+ <table>
13
+ <thead>
14
+ <tr>
15
+ <th>Index</th>
16
+ <th>Example</th>
17
+ <th>Description</th>
18
+ </tr>
19
+ </thead>
20
+ <tbody>
21
+ <tr>
22
+ <td>01</td>
23
+ <td><a href="/01-play.html">Play</a></td>
24
+ <td>
25
+ Learn how to trigger an animation using the <code>play</code> method.
26
+ </td>
27
+ </tr>
28
+ <tr>
29
+ <td>02</td>
30
+ <td><a href="/02-customization.html">Customization</a></td>
31
+ <td>
32
+ Explore various ways to adjust the icon’s look and feel.
33
+ </td>
34
+ </tr>
35
+ <tr>
36
+ <td>03</td>
37
+ <td><a href="/03-states.html">States</a></td>
38
+ <td>
39
+ See how to switch between different icon states.
40
+ </td>
41
+ </tr>
42
+ <tr>
43
+ <td>04</td>
44
+ <td><a href="/04-events.html">Events</a></td>
45
+ <td>
46
+ Discover how to react to player events in your application.
47
+ </td>
48
+ </tr>
49
+ <tr>
50
+ <td>05</td>
51
+ <td><a href="/05-playback-control.html">Playback Control</a></td>
52
+ <td>
53
+ Find out how to manage playback through the player API.
54
+ </td>
55
+ </tbody>
56
+ </table>
57
+ </body>
58
+
59
+ </html>
@@ -0,0 +1,45 @@
1
+ :root {
2
+ --palette-font: #3c3c3c;
3
+ --palette-primary: #08c18a;
4
+ --palette-bg-1: hsl(50deg 34% 85%);
5
+ --palette-bg-2: hsl(100deg 34% 85%);
6
+ --palette-bg-3: hsl(150deg 34% 85%);
7
+ }
8
+
9
+ body {
10
+ color: var(--palette-font);
11
+ padding: 10px;
12
+ margin: 0;
13
+ line-height: 1.8;
14
+ }
15
+
16
+ a {
17
+ color: var(--palette-primary);
18
+ text-decoration: none;
19
+ }
20
+
21
+ a:hover {
22
+ text-decoration: underline;
23
+ }
24
+
25
+ table {
26
+ border-collapse: collapse;
27
+ width: 100%;
28
+ }
29
+
30
+ table,
31
+ td,
32
+ th {
33
+ border: 1px solid #d2d2d8;
34
+ padding: 10px;
35
+ }
36
+
37
+ .icon {
38
+ display: inline-block;
39
+ width: 150px;
40
+ height: 150px;
41
+ }
42
+
43
+ .clickable {
44
+ cursor: pointer;
45
+ }
@@ -0,0 +1,9 @@
1
+ export async function loadIcon(name: string) {
2
+ const response = await fetch(`/icons/${name}.json`);
3
+ return await response.json();
4
+ }
5
+
6
+ export function randomHexColor() {
7
+ const randomColor = Math.floor(Math.random() * 16777215).toString(16);
8
+ return `#${randomColor.padStart(6, '0')}`;
9
+ }
package/package.json ADDED
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "@lordicon/web",
3
+ "version": "1.0.0",
4
+ "description": "A lightweight and flexible player for seamlessly embedding, controlling, and customizing animated Lordicon icons in any web application.",
5
+ "repository": "https://github.com/lordicondev/player-web",
6
+ "homepage": "https://lordicon.com/",
7
+ "keywords": [
8
+ "lordicon",
9
+ "lottie",
10
+ "icon",
11
+ "animation"
12
+ ],
13
+ "author": "Lordicon <dev@lordicon.com>",
14
+ "license": "MIT",
15
+ "private": false,
16
+ "sideEffects": false,
17
+ "type": "module",
18
+ "main": "dist/index.js",
19
+ "types": "dist/index.d.ts",
20
+ "scripts": {
21
+ "start": "vite --config vite-examples.config.ts",
22
+ "build": "vite build",
23
+ "prepack": "npm run build"
24
+ },
25
+ "devDependencies": {
26
+ "@lordicon/internal": "^0.5.0",
27
+ "vite": "^6.2.3",
28
+ "vite-plugin-dts": "^4.5.4",
29
+ "concurrently": "^9.1.2",
30
+ "eslint-config-prettier": "^9.1.0",
31
+ "eslint": "^8.54.0",
32
+ "prettier": "^3.2.5",
33
+ "typescript": "^5.3.2",
34
+ "@typescript-eslint/eslint-plugin": "^6.12.0",
35
+ "@typescript-eslint/parser": "^6.12.0",
36
+ "@types/node": "^22.13.13"
37
+ }
38
+ }
package/src/index.ts ADDED
@@ -0,0 +1,2 @@
1
+ export type { ColorMap, EventHandler, EventName, IconProperties, IconState, LegacyIconProperties, PlaybackDirection, Stroke } from './interfaces';
2
+ export { Player } from './player';
@@ -0,0 +1,181 @@
1
+ /**
2
+ * Icon animation data in Lottie JSON format.
3
+ * This player is optimized for icons from [Lordicon](https://lordicon.com/).
4
+ */
5
+ export type LottieData = any;
6
+
7
+ /**
8
+ * Represents a single Lottie animation instance from `@lordicon/internal`.
9
+ * Contains the current state and methods for controlling playback.
10
+ */
11
+ export type LottieAnimationInstance = {
12
+ name: string;
13
+ isLoaded: boolean;
14
+ currentFrame: number;
15
+ currentRawFrame: number;
16
+ firstFrame: number;
17
+ totalFrames: number;
18
+ frameRate: number;
19
+ frameMult: number;
20
+ playSpeed: number;
21
+ playDirection: number;
22
+ playCount: number;
23
+ isPaused: boolean;
24
+ autoplay: boolean;
25
+ loop: boolean | number;
26
+ renderer: any;
27
+ animationID: string;
28
+ assetsPath: string;
29
+ timeCompleted: number;
30
+ segmentPos: number;
31
+ isSubframeEnabled: boolean;
32
+ segments: FrameSegment | FrameSegment[];
33
+ play(name?: string): void;
34
+ stop(name?: string): void;
35
+ togglePause(name?: string): void;
36
+ destroy(name?: string): void;
37
+ pause(name?: string): void;
38
+ goToAndStop(value: number | string, isFrame?: boolean, name?: string): void;
39
+ goToAndPlay(value: number | string, isFrame?: boolean, name?: string): void;
40
+ includeLayers(data: any): void;
41
+ setSegment(init: number, end: number): void;
42
+ resetSegments(forceFlag: boolean): void;
43
+ hide(): void;
44
+ show(): void;
45
+ resize(): void;
46
+ setSpeed(speed: number): void;
47
+ setDirection(direction: PlaybackDirection): void;
48
+ setLoop(isLooping: boolean): void;
49
+ playSegments(segments: FrameSegment | FrameSegment[], forceFlag?: boolean): void;
50
+ setSubframe(useSubFrames: boolean): void;
51
+ getDuration(inFrames?: boolean): number;
52
+ triggerEvent(name: string, args: any): void;
53
+ addEventListener(name: string, callback: any): () => void;
54
+ removeEventListener(name: string, callback?: any): void;
55
+ };
56
+
57
+ /**
58
+ * Supported property types for Lottie animations.
59
+ */
60
+ export type LottiePropertyType = 'color' | 'slider' | 'point' | 'checkbox' | 'feature';
61
+
62
+ /**
63
+ * Describes a property found in the animation.
64
+ */
65
+ export interface LottieProperty {
66
+ name: string;
67
+ path: string;
68
+ type: LottiePropertyType;
69
+ value: any;
70
+ }
71
+
72
+ /**
73
+ * Supported stroke weights for icons.
74
+ */
75
+ export type Stroke = 1 | 2 | 3 | 'light' | 'regular' | 'bold';
76
+
77
+ /**
78
+ * RGB color tuple in Lottie format: [r, g, b].
79
+ */
80
+ export type RgbTuple = [number, number, number];
81
+
82
+ /**
83
+ * RGB color as an object.
84
+ */
85
+ export interface RgbColor {
86
+ r: number;
87
+ g: number;
88
+ b: number;
89
+ }
90
+
91
+ /**
92
+ * Object storing multiple named colors.
93
+ *
94
+ * Example:
95
+ * {
96
+ * primary: 'red',
97
+ * secondary: '#ff0000',
98
+ * }
99
+ */
100
+ export interface ColorMap {
101
+ [key: string]: string;
102
+ }
103
+
104
+ /**
105
+ * Animation segment as a tuple: [startFrame, endFrame].
106
+ */
107
+ export type FrameSegment = [number, number];
108
+
109
+ /**
110
+ * Animation playback direction: 1 (forward) or -1 (backward).
111
+ */
112
+ export type PlaybackDirection = 1 | -1;
113
+
114
+ /**
115
+ * Supported player event names.
116
+ */
117
+ export type EventName = 'ready' | 'complete' | 'frame' | 'refresh';
118
+
119
+ /**
120
+ * Player event callback type.
121
+ */
122
+ export type EventHandler = () => void;
123
+
124
+ /**
125
+ * Properties for legacy icons.
126
+ */
127
+ export interface LegacyIconProperties {
128
+ /**
129
+ * Scale for legacy icons.
130
+ */
131
+ scale?: number;
132
+
133
+ /**
134
+ * Axis x for legacy icons.
135
+ */
136
+ axisX?: number;
137
+
138
+ /**
139
+ * Axis y for legacy icons.
140
+ */
141
+ axisY?: number;
142
+ }
143
+
144
+ /**
145
+ * Properties for customizing icons.
146
+ *
147
+ * Example:
148
+ * {
149
+ * stroke: 'bold',
150
+ * colors: {
151
+ * primary: 'red',
152
+ * },
153
+ * }
154
+ */
155
+ export interface IconProperties {
156
+ /**
157
+ * State (motion type) of the icon. States allow switching between multiple animations built into a single icon file.
158
+ */
159
+ state?: string;
160
+
161
+ /**
162
+ * Colors.
163
+ */
164
+ colors?: ColorMap;
165
+
166
+ /**
167
+ * Stroke.
168
+ */
169
+ stroke?: Stroke;
170
+ }
171
+
172
+ /**
173
+ * Details of a single animation state.
174
+ */
175
+ export interface IconState {
176
+ name: string;
177
+ time: number;
178
+ duration: number;
179
+ params: string[];
180
+ default?: boolean;
181
+ }
package/src/lottie.ts ADDED
@@ -0,0 +1,203 @@
1
+ import { LottieAnimationInstance, LottieData, LottieProperty, LottiePropertyType, RgbColor, RgbTuple } from "./interfaces";
2
+ import { parseColor } from "./parsers";
3
+ import { set } from "./utils";
4
+
5
+ /**
6
+ * Converts a color component to a two-digit hexadecimal string.
7
+ * @param c Color component (0-255).
8
+ * @returns Two-character hexadecimal string.
9
+ */
10
+ function componentToHex(c: number) {
11
+ const hex = c.toString(16);
12
+ return hex.length == 1 ? '0' + hex : hex;
13
+ }
14
+
15
+ /**
16
+ * Converts a color component from 0-255 range to a normalized value (0-1).
17
+ * @param Color component (0-255).
18
+ * @returns Normalized value (0-1), rounded to three decimal places.
19
+ */
20
+ function toUnitVector(n: number) {
21
+ return Math.round((n / 255) * 1000) / 1000;
22
+ }
23
+
24
+ /**
25
+ * Converts a normalized color value (0-1) to a color component (0-255).
26
+ * @param Normalized value (0-1).
27
+ * @returns Color component (0-255), rounded to the nearest integer.
28
+ */
29
+ function fromUnitVector(n: number) {
30
+ return Math.round(n * 255);
31
+ }
32
+
33
+ /**
34
+ * Converts an RGB color object to a hexadecimal color string.
35
+ * @param value Color object with r, g, b properties.
36
+ * @returns Hexadecimal color string (e.g., "#ff0000").
37
+ */
38
+ export function rgbToHex(value: RgbColor): string {
39
+ return (
40
+ '#' +
41
+ componentToHex(value.r) +
42
+ componentToHex(value.g) +
43
+ componentToHex(value.b)
44
+ );
45
+ }
46
+
47
+ /**
48
+ * Converts a hexadecimal color string to an RGB color object.
49
+ * @param hex Hexadecimal color string (with or without "#").
50
+ * @returns RgbColor object with r, g, b properties.
51
+ */
52
+ export function hexToRgb(hex: string): RgbColor {
53
+ let data = parseInt(hex[0] != '#' ? hex : hex.substring(1), 16);
54
+ return {
55
+ r: (data >> 16) & 255,
56
+ g: (data >> 8) & 255,
57
+ b: data & 255,
58
+ };
59
+ }
60
+
61
+ /**
62
+ * Converts a hexadecimal color string to an RGB tuple in the 0-1 range.
63
+ * @param hex Hexadecimal color string.
64
+ * @returns RgbTuple with values normalized to 0-1.
65
+ */
66
+ export function hexToTupleColor(hex: string): RgbTuple {
67
+ const {
68
+ r,
69
+ g,
70
+ b
71
+ } = hexToRgb(hex);
72
+ return [toUnitVector(r), toUnitVector(g), toUnitVector(b)];
73
+ }
74
+
75
+ /**
76
+ * Converts an RGB tuple (0-1 range) to a hexadecimal color string.
77
+ * @param value RgbTuple with values in the 0-1 range.
78
+ * @returns Hexadecimal color string.
79
+ */
80
+ export function tupleColorToHex(value: RgbTuple): string {
81
+ const color: RgbColor = {
82
+ r: fromUnitVector(value[0]),
83
+ g: fromUnitVector(value[1]),
84
+ b: fromUnitVector(value[2]),
85
+ };
86
+ return rgbToHex(color);
87
+ }
88
+
89
+ /**
90
+ * Extracts all supported customizable properties from Lottie data.
91
+ * @param data Lottie animation data.
92
+ * @param options Extraction options (e.g., lottieInstance: boolean).
93
+ * @returns Array of LottieProperty objects describing customizable properties.
94
+ */
95
+ export function extractLottieProperties(
96
+ data: LottieData,
97
+ { lottieInstance }: { lottieInstance?: boolean } = {},
98
+ ): LottieProperty[] {
99
+ const result: any[] = [];
100
+
101
+ if (!data || !data.layers) {
102
+ return result;
103
+ }
104
+
105
+ data.layers.forEach((layer: any, layerIndex: number) => {
106
+ if (!layer.nm || !layer.ef) {
107
+ return;
108
+ }
109
+
110
+ layer.ef.forEach((field: any, fieldIndex: number) => {
111
+ const value = field?.ef?.[0]?.v?.k;
112
+ if (value === undefined) {
113
+ return;
114
+ }
115
+
116
+ let path: string | undefined;
117
+
118
+ if (lottieInstance) {
119
+ path = `renderer.elements.${layerIndex}.effectsManager.effectElements.${fieldIndex}.effectElements.0.p.v`;
120
+ } else {
121
+ path = `layers.${layerIndex}.ef.${fieldIndex}.ef.0.v.k`;
122
+ }
123
+
124
+ let type: LottiePropertyType | undefined;
125
+
126
+ if (field.mn === 'ADBE Color Control') {
127
+ type = 'color';
128
+ } else if (field.mn === 'ADBE Slider Control') {
129
+ type = 'slider';
130
+ } else if (field.mn === 'ADBE Point Control') {
131
+ type = 'point';
132
+ } else if (field.mn === 'ADBE Checkbox Control') {
133
+ type = 'checkbox';
134
+ } else if (field.mn.startsWith('Pseudo/')) {
135
+ type = 'feature';
136
+ }
137
+
138
+ if (!type) {
139
+ return;
140
+ }
141
+
142
+ const name = field.nm.toLowerCase();
143
+
144
+ result.push({
145
+ name,
146
+ path,
147
+ value,
148
+ type,
149
+ });
150
+ });
151
+ });
152
+
153
+ return result;
154
+ }
155
+
156
+ /**
157
+ * Resets Lottie data or animation instance to default values for the given properties.
158
+ * @param data Lottie data or animation instance to reset.
159
+ * @param properties Array of properties to reset.
160
+ */
161
+ export function resetLottieProperties(
162
+ data: LottieData | LottieAnimationInstance,
163
+ properties: LottieProperty[],
164
+ ) {
165
+ for (const property of properties) {
166
+ set(data, property.path, property.value);
167
+ }
168
+ }
169
+
170
+ /**
171
+ * Updates Lottie data or animation instance with a new value for the given properties.
172
+ * Handles color, point, and other property types accordingly.
173
+ * @param data Lottie data or animation instance to update.
174
+ * @param properties Array of properties to update.
175
+ * @param value New value to set for each property.
176
+ */
177
+ export function updateLottieProperties(
178
+ data: LottieData | LottieAnimationInstance,
179
+ properties: LottieProperty[],
180
+ value: any,
181
+ ) {
182
+ for (const property of properties) {
183
+ if (property.type === 'color') {
184
+ if (typeof value === 'object' && 'r' in value && 'g' in value && 'b' in value) {
185
+ set(data, property.path, [toUnitVector(value.r), toUnitVector(value.g), toUnitVector(value.b)]);
186
+ } else if (Array.isArray(value)) {
187
+ set(data, property.path, value);
188
+ } else if (typeof value === 'string') {
189
+ set(data, property.path, hexToTupleColor(parseColor(value)));
190
+ }
191
+ } else if (property.type === 'point') {
192
+ if (typeof value === 'object' && 'x' in value && 'y' in value) {
193
+ set(data, property.path + '.0', value.x);
194
+ set(data, property.path + '.1', value.y);
195
+ } else if (Array.isArray(value)) {
196
+ set(data, property.path + '.0', value[0]);
197
+ set(data, property.path + '.1', value[1]);
198
+ }
199
+ } else {
200
+ set(data, property.path, value);
201
+ }
202
+ }
203
+ }