|
@@ -11,12 +11,63 @@ import LinkedIn (DetachedNode)
|
|
|
import LinkedIn.Types (Parser)
|
|
import LinkedIn.Types (Parser)
|
|
|
import LinkedIn.Utils (queryAndDetachMany, queryAndDetachOne, queryManyAndParse, queryOneAndParse)
|
|
import LinkedIn.Utils (queryAndDetachMany, queryAndDetachOne, queryManyAndParse, queryOneAndParse)
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+data ArtDecoCardElement = ArtDecoCardElement {
|
|
|
|
|
+ pvs_entity :: ArtDecoPvsEntity
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+data ArtDecoPvsEntity = ArtDecoPvsEntity {
|
|
|
|
|
+ side :: Unit,
|
|
|
|
|
+ center :: ArtDecoCenter
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+data ArtDecoCenter = ArtDecoCenter {
|
|
|
|
|
+ header :: ArtDecoCenterHeader,
|
|
|
|
|
+ content :: ArtDecoCenterContent
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+data ArtDecoCenterHeader = ArtDecoCenterHeader {
|
|
|
|
|
+ bold :: DetachedNode,
|
|
|
|
|
+ normal :: Maybe DetachedNode,
|
|
|
|
|
+ light :: Maybe (NonEmptyList DetachedNode)
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+data ArtDecoCenterContent = ArtDecoCenterContent (NonEmptyList ArtDecoPvsEntitySubComponent)
|
|
|
|
|
+
|
|
|
data ArtDecoPvsEntitySubComponent = ArtDecoPvsEntitySubComponent DetachedNode
|
|
data ArtDecoPvsEntitySubComponent = ArtDecoPvsEntitySubComponent DetachedNode
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
derive instance Generic ArtDecoPvsEntitySubComponent _
|
|
derive instance Generic ArtDecoPvsEntitySubComponent _
|
|
|
derive instance Eq ArtDecoPvsEntitySubComponent
|
|
derive instance Eq ArtDecoPvsEntitySubComponent
|
|
|
instance Show ArtDecoPvsEntitySubComponent where
|
|
instance Show ArtDecoPvsEntitySubComponent where
|
|
|
show = genericShow
|
|
show = genericShow
|
|
|
|
|
|
|
|
|
|
+derive instance Generic ArtDecoCenterContent _
|
|
|
|
|
+derive instance Eq ArtDecoCenterContent
|
|
|
|
|
+instance Show ArtDecoCenterContent where
|
|
|
|
|
+ show = genericShow
|
|
|
|
|
+
|
|
|
|
|
+derive instance Generic ArtDecoCenterHeader _
|
|
|
|
|
+derive instance Eq ArtDecoCenterHeader
|
|
|
|
|
+instance Show ArtDecoCenterHeader where
|
|
|
|
|
+ show = genericShow
|
|
|
|
|
+
|
|
|
|
|
+derive instance Generic ArtDecoCenter _
|
|
|
|
|
+derive instance Eq ArtDecoCenter
|
|
|
|
|
+instance Show ArtDecoCenter where
|
|
|
|
|
+ show = genericShow
|
|
|
|
|
+
|
|
|
|
|
+derive instance Generic ArtDecoPvsEntity _
|
|
|
|
|
+derive instance Eq ArtDecoPvsEntity
|
|
|
|
|
+instance Show ArtDecoPvsEntity where
|
|
|
|
|
+ show = genericShow
|
|
|
|
|
+
|
|
|
|
|
+derive instance Generic ArtDecoCardElement _
|
|
|
|
|
+derive instance Eq ArtDecoCardElement
|
|
|
|
|
+instance Show ArtDecoCardElement where
|
|
|
|
|
+ show = genericShow
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
parseArtDecoPvsEntitySubComponent ∷ Parser ArtDecoPvsEntitySubComponent
|
|
parseArtDecoPvsEntitySubComponent ∷ Parser ArtDecoPvsEntitySubComponent
|
|
|
parseArtDecoPvsEntitySubComponent n = do
|
|
parseArtDecoPvsEntitySubComponent n = do
|
|
|
content <- queryAndDetachOne "span[aria-hidden=true]" n
|
|
content <- queryAndDetachOne "span[aria-hidden=true]" n
|
|
@@ -24,12 +75,6 @@ parseArtDecoPvsEntitySubComponent n = do
|
|
|
c <- content
|
|
c <- content
|
|
|
in ArtDecoPvsEntitySubComponent c
|
|
in ArtDecoPvsEntitySubComponent c
|
|
|
|
|
|
|
|
-data ArtDecoCenterContent = ArtDecoCenterContent (NonEmptyList ArtDecoPvsEntitySubComponent)
|
|
|
|
|
-derive instance Generic ArtDecoCenterContent _
|
|
|
|
|
-derive instance Eq ArtDecoCenterContent
|
|
|
|
|
-instance Show ArtDecoCenterContent where
|
|
|
|
|
- show = genericShow
|
|
|
|
|
-
|
|
|
|
|
parseArtDecoCenterContent ∷ Parser ArtDecoCenterContent
|
|
parseArtDecoCenterContent ∷ Parser ArtDecoCenterContent
|
|
|
parseArtDecoCenterContent n = do
|
|
parseArtDecoCenterContent n = do
|
|
|
list <- queryManyAndParse ":scope > ul > li" parseArtDecoPvsEntitySubComponent n
|
|
list <- queryManyAndParse ":scope > ul > li" parseArtDecoPvsEntitySubComponent n
|
|
@@ -37,17 +82,6 @@ parseArtDecoCenterContent n = do
|
|
|
l <- list
|
|
l <- list
|
|
|
in ArtDecoCenterContent l
|
|
in ArtDecoCenterContent l
|
|
|
|
|
|
|
|
-data ArtDecoCenterHeader = ArtDecoCenterHeader {
|
|
|
|
|
- bold :: DetachedNode,
|
|
|
|
|
- normal :: Maybe DetachedNode,
|
|
|
|
|
- light :: Maybe (NonEmptyList DetachedNode)
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-derive instance Generic ArtDecoCenterHeader _
|
|
|
|
|
-derive instance Eq ArtDecoCenterHeader
|
|
|
|
|
-instance Show ArtDecoCenterHeader where
|
|
|
|
|
- show = genericShow
|
|
|
|
|
-
|
|
|
|
|
parseArtDecoCenterHeader :: Parser ArtDecoCenterHeader
|
|
parseArtDecoCenterHeader :: Parser ArtDecoCenterHeader
|
|
|
parseArtDecoCenterHeader n = do
|
|
parseArtDecoCenterHeader n = do
|
|
|
bold <- queryAndDetachOne ":scope div.t-bold > span[aria-hidden=true]" n
|
|
bold <- queryAndDetachOne ":scope div.t-bold > span[aria-hidden=true]" n
|
|
@@ -58,16 +92,6 @@ parseArtDecoCenterHeader n = do
|
|
|
b <- bold
|
|
b <- bold
|
|
|
in ArtDecoCenterHeader {bold: b, normal: hush normal, light: hush light}
|
|
in ArtDecoCenterHeader {bold: b, normal: hush normal, light: hush light}
|
|
|
|
|
|
|
|
-data ArtDecoCenter = ArtDecoCenter {
|
|
|
|
|
- header :: ArtDecoCenterHeader,
|
|
|
|
|
- content :: ArtDecoCenterContent
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-derive instance Generic ArtDecoCenter _
|
|
|
|
|
-derive instance Eq ArtDecoCenter
|
|
|
|
|
-instance Show ArtDecoCenter where
|
|
|
|
|
- show = genericShow
|
|
|
|
|
-
|
|
|
|
|
parseArtDecoCenter :: Parser ArtDecoCenter
|
|
parseArtDecoCenter :: Parser ArtDecoCenter
|
|
|
parseArtDecoCenter n = do
|
|
parseArtDecoCenter n = do
|
|
|
header <- queryOneAndParse ":scope > div" parseArtDecoCenterHeader n
|
|
header <- queryOneAndParse ":scope > div" parseArtDecoCenterHeader n
|
|
@@ -78,16 +102,6 @@ parseArtDecoCenter n = do
|
|
|
c <- content
|
|
c <- content
|
|
|
in ArtDecoCenter {header: h, content: c}
|
|
in ArtDecoCenter {header: h, content: c}
|
|
|
|
|
|
|
|
-data ArtDecoPvsEntity = ArtDecoPvsEntity {
|
|
|
|
|
- side :: Unit,
|
|
|
|
|
- center :: ArtDecoCenter
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-derive instance Generic ArtDecoPvsEntity _
|
|
|
|
|
-derive instance Eq ArtDecoPvsEntity
|
|
|
|
|
-instance Show ArtDecoPvsEntity where
|
|
|
|
|
- show = genericShow
|
|
|
|
|
-
|
|
|
|
|
parseArtDecoPvsEntity :: Parser ArtDecoPvsEntity
|
|
parseArtDecoPvsEntity :: Parser ArtDecoPvsEntity
|
|
|
parseArtDecoPvsEntity n = do
|
|
parseArtDecoPvsEntity n = do
|
|
|
center <- queryOneAndParse ":scope > div.display-flex" parseArtDecoCenter n
|
|
center <- queryOneAndParse ":scope > div.display-flex" parseArtDecoCenter n
|
|
@@ -96,15 +110,6 @@ parseArtDecoPvsEntity n = do
|
|
|
c <- center
|
|
c <- center
|
|
|
in ArtDecoPvsEntity {side: unit, center: c}
|
|
in ArtDecoPvsEntity {side: unit, center: c}
|
|
|
|
|
|
|
|
-data ArtDecoCardElement = ArtDecoCardElement {
|
|
|
|
|
- pvs_entity :: ArtDecoPvsEntity
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-derive instance Generic ArtDecoCardElement _
|
|
|
|
|
-derive instance Eq ArtDecoCardElement
|
|
|
|
|
-instance Show ArtDecoCardElement where
|
|
|
|
|
- show = genericShow
|
|
|
|
|
-
|
|
|
|
|
parseArtDecoCard :: Parser ArtDecoCardElement
|
|
parseArtDecoCard :: Parser ArtDecoCardElement
|
|
|
parseArtDecoCard n = do
|
|
parseArtDecoCard n = do
|
|
|
pvs <- queryOneAndParse ":scope div.pvs-entity--padded" parseArtDecoPvsEntity n
|
|
pvs <- queryOneAndParse ":scope div.pvs-entity--padded" parseArtDecoPvsEntity n
|